mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-03 20:36:07 +01:00 
			
		
		
		
	Allow using custom time format (#798)
* Allow using custom time format
I need to use custom time format in `conf/app.ini' like 
    FORMAT = 2006-01-02 15:04:05
so that Gitea will display '2017-01-30 08:41:49'
check this answer for more constants to format date  <http://stackoverflow.com/a/20234207/2570425> 
PS: First GO commit
* Refactor and validate TimeFormat (must have 2006, 01, 02, 15, 04 and 05)
			
			
This commit is contained in:
		@@ -732,6 +732,7 @@ please consider changing to GITEA_CUSTOM`)
 | 
			
		||||
	AttachmentMaxFiles = sec.Key("MAX_FILES").MustInt(5)
 | 
			
		||||
	AttachmentEnabled = sec.Key("ENABLE").MustBool(true)
 | 
			
		||||
 | 
			
		||||
	TimeFormatKey := Cfg.Section("time").Key("FORMAT").MustString("RFC1123")
 | 
			
		||||
	TimeFormat = map[string]string{
 | 
			
		||||
		"ANSIC":       time.ANSIC,
 | 
			
		||||
		"UnixDate":    time.UnixDate,
 | 
			
		||||
@@ -748,7 +749,16 @@ please consider changing to GITEA_CUSTOM`)
 | 
			
		||||
		"StampMilli":  time.StampMilli,
 | 
			
		||||
		"StampMicro":  time.StampMicro,
 | 
			
		||||
		"StampNano":   time.StampNano,
 | 
			
		||||
	}[Cfg.Section("time").Key("FORMAT").MustString("RFC1123")]
 | 
			
		||||
	}[TimeFormatKey]
 | 
			
		||||
	// When the TimeFormatKey does not exist in the previous map e.g.'2006-01-02 15:04:05'
 | 
			
		||||
	if len(TimeFormat) == 0 {
 | 
			
		||||
		TimeFormat = TimeFormatKey
 | 
			
		||||
		TestTimeFormat, _ := time.Parse(TimeFormat, TimeFormat)
 | 
			
		||||
		if TestTimeFormat.Format(time.RFC3339) != "2006-01-02T15:04:05Z" {
 | 
			
		||||
			log.Fatal(4, "Can't create time properly, please check your time format has 2006, 01, 02, 15, 04 and 05")
 | 
			
		||||
		}
 | 
			
		||||
		log.Trace("Custom TimeFormat: %s", TimeFormat)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	RunUser = Cfg.Section("").Key("RUN_USER").MustString(user.CurrentUsername())
 | 
			
		||||
	// Does not check run user when the install lock is off.
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user