mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 10:56:10 +01:00 
			
		
		
		
	Add global setting how timestamps should be rendered (#28657)
- Resolves https://github.com/go-gitea/gitea/issues/22493 - Related to https://github.com/go-gitea/gitea/issues/4520 Some admins prefer all timestamps to display the full date instead of relative time. They can do that now by setting ```ini [ui] PREFERRED_TIMESTAMP_TENSE = absolute ``` This setting is set to `mixed` by default, allowing dates to render as "5 hours ago". Here are some screenshots of the UI with this setting set to `absolute`:    --------- Signed-off-by: Yarden Shoham <git@yardenshoham.com> Co-authored-by: delvh <dev.lh@web.de>
This commit is contained in:
		| @@ -7,33 +7,35 @@ import ( | ||||
| 	"time" | ||||
|  | ||||
| 	"code.gitea.io/gitea/modules/container" | ||||
| 	"code.gitea.io/gitea/modules/log" | ||||
| ) | ||||
|  | ||||
| // UI settings | ||||
| var UI = struct { | ||||
| 	ExplorePagingNum      int | ||||
| 	SitemapPagingNum      int | ||||
| 	IssuePagingNum        int | ||||
| 	RepoSearchPagingNum   int | ||||
| 	MembersPagingNum      int | ||||
| 	FeedMaxCommitNum      int | ||||
| 	FeedPagingNum         int | ||||
| 	PackagesPagingNum     int | ||||
| 	GraphMaxCommitNum     int | ||||
| 	CodeCommentLines      int | ||||
| 	ReactionMaxUserNum    int | ||||
| 	MaxDisplayFileSize    int64 | ||||
| 	ShowUserEmail         bool | ||||
| 	DefaultShowFullName   bool | ||||
| 	DefaultTheme          string | ||||
| 	Themes                []string | ||||
| 	Reactions             []string | ||||
| 	ReactionsLookup       container.Set[string] `ini:"-"` | ||||
| 	CustomEmojis          []string | ||||
| 	CustomEmojisMap       map[string]string `ini:"-"` | ||||
| 	SearchRepoDescription bool | ||||
| 	OnlyShowRelevantRepos bool | ||||
| 	ExploreDefaultSort    string `ini:"EXPLORE_PAGING_DEFAULT_SORT"` | ||||
| 	ExplorePagingNum        int | ||||
| 	SitemapPagingNum        int | ||||
| 	IssuePagingNum          int | ||||
| 	RepoSearchPagingNum     int | ||||
| 	MembersPagingNum        int | ||||
| 	FeedMaxCommitNum        int | ||||
| 	FeedPagingNum           int | ||||
| 	PackagesPagingNum       int | ||||
| 	GraphMaxCommitNum       int | ||||
| 	CodeCommentLines        int | ||||
| 	ReactionMaxUserNum      int | ||||
| 	MaxDisplayFileSize      int64 | ||||
| 	ShowUserEmail           bool | ||||
| 	DefaultShowFullName     bool | ||||
| 	DefaultTheme            string | ||||
| 	Themes                  []string | ||||
| 	Reactions               []string | ||||
| 	ReactionsLookup         container.Set[string] `ini:"-"` | ||||
| 	CustomEmojis            []string | ||||
| 	CustomEmojisMap         map[string]string `ini:"-"` | ||||
| 	SearchRepoDescription   bool | ||||
| 	OnlyShowRelevantRepos   bool | ||||
| 	ExploreDefaultSort      string `ini:"EXPLORE_PAGING_DEFAULT_SORT"` | ||||
| 	PreferredTimestampTense string | ||||
|  | ||||
| 	AmbiguousUnicodeDetection bool | ||||
|  | ||||
| @@ -67,23 +69,24 @@ var UI = struct { | ||||
| 		Keywords    string | ||||
| 	} `ini:"ui.meta"` | ||||
| }{ | ||||
| 	ExplorePagingNum:    20, | ||||
| 	SitemapPagingNum:    20, | ||||
| 	IssuePagingNum:      20, | ||||
| 	RepoSearchPagingNum: 20, | ||||
| 	MembersPagingNum:    20, | ||||
| 	FeedMaxCommitNum:    5, | ||||
| 	FeedPagingNum:       20, | ||||
| 	PackagesPagingNum:   20, | ||||
| 	GraphMaxCommitNum:   100, | ||||
| 	CodeCommentLines:    4, | ||||
| 	ReactionMaxUserNum:  10, | ||||
| 	MaxDisplayFileSize:  8388608, | ||||
| 	DefaultTheme:        `gitea-auto`, | ||||
| 	Themes:              []string{`gitea-auto`, `gitea-light`, `gitea-dark`}, | ||||
| 	Reactions:           []string{`+1`, `-1`, `laugh`, `hooray`, `confused`, `heart`, `rocket`, `eyes`}, | ||||
| 	CustomEmojis:        []string{`git`, `gitea`, `codeberg`, `gitlab`, `github`, `gogs`}, | ||||
| 	CustomEmojisMap:     map[string]string{"git": ":git:", "gitea": ":gitea:", "codeberg": ":codeberg:", "gitlab": ":gitlab:", "github": ":github:", "gogs": ":gogs:"}, | ||||
| 	ExplorePagingNum:        20, | ||||
| 	SitemapPagingNum:        20, | ||||
| 	IssuePagingNum:          20, | ||||
| 	RepoSearchPagingNum:     20, | ||||
| 	MembersPagingNum:        20, | ||||
| 	FeedMaxCommitNum:        5, | ||||
| 	FeedPagingNum:           20, | ||||
| 	PackagesPagingNum:       20, | ||||
| 	GraphMaxCommitNum:       100, | ||||
| 	CodeCommentLines:        4, | ||||
| 	ReactionMaxUserNum:      10, | ||||
| 	MaxDisplayFileSize:      8388608, | ||||
| 	DefaultTheme:            `gitea-auto`, | ||||
| 	Themes:                  []string{`gitea-auto`, `gitea-light`, `gitea-dark`}, | ||||
| 	Reactions:               []string{`+1`, `-1`, `laugh`, `hooray`, `confused`, `heart`, `rocket`, `eyes`}, | ||||
| 	CustomEmojis:            []string{`git`, `gitea`, `codeberg`, `gitlab`, `github`, `gogs`}, | ||||
| 	CustomEmojisMap:         map[string]string{"git": ":git:", "gitea": ":gitea:", "codeberg": ":codeberg:", "gitlab": ":gitlab:", "github": ":github:", "gogs": ":gogs:"}, | ||||
| 	PreferredTimestampTense: "mixed", | ||||
|  | ||||
| 	AmbiguousUnicodeDetection: true, | ||||
|  | ||||
| @@ -142,6 +145,10 @@ func loadUIFrom(rootCfg ConfigProvider) { | ||||
| 	UI.DefaultShowFullName = sec.Key("DEFAULT_SHOW_FULL_NAME").MustBool(false) | ||||
| 	UI.SearchRepoDescription = sec.Key("SEARCH_REPO_DESCRIPTION").MustBool(true) | ||||
|  | ||||
| 	if UI.PreferredTimestampTense != "mixed" && UI.PreferredTimestampTense != "absolute" { | ||||
| 		log.Fatal("ui.PREFERRED_TIMESTAMP_TENSE must be either 'mixed' or 'absolute'") | ||||
| 	} | ||||
|  | ||||
| 	// OnlyShowRelevantRepos=false is important for many private/enterprise instances, | ||||
| 	// because many private repositories do not have "description/topic", users just want to search by their names. | ||||
| 	UI.OnlyShowRelevantRepos = sec.Key("ONLY_SHOW_RELEVANT_REPOS").MustBool(false) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user