diff --git a/modules/templates/helper.go b/modules/templates/helper.go index c5434b7c632ed..8f166af28611c 100644 --- a/modules/templates/helper.go +++ b/modules/templates/helper.go @@ -49,6 +49,8 @@ import ( "code.gitea.io/gitea/services/gitdiff" "github.com/editorconfig/editorconfig-core-go/v2" + "golang.org/x/text/language" + "golang.org/x/text/message" ) // Used from static.go && dynamic.go @@ -170,6 +172,7 @@ func NewFuncMap() []template.FuncMap { "RenderEmojiPlain": emoji.ReplaceAliases, "ReactionToEmoji": ReactionToEmoji, "RenderNote": RenderNote, + "RenderNumber": RenderNumber, "RenderMarkdownToHtml": func(input string) template.HTML { output, err := markdown.RenderString(&markup.RenderContext{ URLPrefix: setting.AppSubURL, @@ -782,6 +785,13 @@ func RenderCodeBlock(htmlEscapedTextToRender template.HTML) template.HTML { return template.HTML(htmlWithCodeTags) } +// RenderNumber render any number according to the given language code (e.g. 1234 -> 1,234) +// Should RenderNumber, JsPrettyNumber, and CountFmt coexist on this codebase? RenderNumber is server-rendered and localized +func RenderNumber(number int64, languageCode string) template.HTML { + formatter := message.NewPrinter(language.MustParse(languageCode)) + return template.HTML(formatter.Sprintf("%d", number)) +} + // RenderIssueTitle renders issue/pull title with defined post processors func RenderIssueTitle(ctx context.Context, text, urlPrefix string, metas map[string]string) template.HTML { renderedText, err := markup.RenderIssueTitle(&markup.RenderContext{ diff --git a/templates/code/searchresults.tmpl b/templates/code/searchresults.tmpl index e21a50e1f12df..4651263139bac 100644 --- a/templates/code/searchresults.tmpl +++ b/templates/code/searchresults.tmpl @@ -3,7 +3,7 @@ {{$term.Language}} -
{{$term.Count}}
+
{{RenderNumber $term.Count $.locale.Language}}
{{end}} diff --git a/templates/package/view.tmpl b/templates/package/view.tmpl index a5b2a2ef68a39..3f8ae52af50de 100644 --- a/templates/package/view.tmpl +++ b/templates/package/view.tmpl @@ -41,7 +41,7 @@
{{svg "octicon-repo" 16 "mr-3"}} {{.PackageDescriptor.Repository.FullName}}
{{end}}
{{svg "octicon-calendar" 16 "mr-3"}} {{TimeSinceUnix .PackageDescriptor.Version.CreatedUnix $.locale}}
-
{{svg "octicon-download" 16 "mr-3"}} {{.PackageDescriptor.Version.DownloadCount}}
+
{{svg "octicon-download" 16 "mr-3"}} {{RenderNumber .PackageDescriptor.Version.DownloadCount $.locale.Language}}
{{template "package/metadata/composer" .}} {{template "package/metadata/conan" .}} {{template "package/metadata/container" .}} diff --git a/templates/repo/activity.tmpl b/templates/repo/activity.tmpl index cc6ca95edbdb8..a4a887697c765 100644 --- a/templates/repo/activity.tmpl +++ b/templates/repo/activity.tmpl @@ -63,21 +63,21 @@
{{if .Permission.CanRead $.UnitTypePullRequests}} - {{svg "octicon-git-pull-request"}} {{.Activity.MergedPRCount}}
+ {{svg "octicon-git-pull-request"}} {{RenderNumber .Activity.MergedPRCount $.locale.Language}}
{{.locale.TrN .Activity.MergedPRCount "repo.activity.merged_prs_count_1" "repo.activity.merged_prs_count_n"}}
- {{svg "octicon-git-branch"}} {{.Activity.OpenedPRCount}}
+ {{svg "octicon-git-branch"}} {{RenderNumber .Activity.OpenedPRCount $.locale.Language}}
{{.locale.TrN .Activity.OpenedPRCount "repo.activity.opened_prs_count_1" "repo.activity.opened_prs_count_n"}}
{{end}} {{if .Permission.CanRead $.UnitTypeIssues}} - {{svg "octicon-issue-closed"}} {{.Activity.ClosedIssueCount}}
+ {{svg "octicon-issue-closed"}} {{RenderNumber .Activity.ClosedIssueCount $.locale.Language}}
{{.locale.TrN .Activity.ClosedIssueCount "repo.activity.closed_issues_count_1" "repo.activity.closed_issues_count_n"}}
- {{svg "octicon-issue-opened"}} {{.Activity.OpenedIssueCount}}
+ {{svg "octicon-issue-opened"}} {{RenderNumber .Activity.OpenedIssueCount $.locale.Language}}
{{.locale.TrN .Activity.OpenedIssueCount "repo.activity.new_issues_count_1" "repo.activity.new_issues_count_n"}}
{{end}} diff --git a/templates/repo/commits_table.tmpl b/templates/repo/commits_table.tmpl index ab54041b9d726..5d064ba9367d4 100644 --- a/templates/repo/commits_table.tmpl +++ b/templates/repo/commits_table.tmpl @@ -1,7 +1,7 @@

{{if or .PageIsCommits (gt .CommitCount 0)}} - {{.CommitCount}} {{.locale.Tr "repo.commits.commits"}} {{if .RefName}}({{.RefName}}){{end}} + {{RenderNumber .CommitCount .locale.Language}} {{.locale.Tr "repo.commits.commits"}} {{if .RefName}}({{.RefName}}){{end}} {{else if .IsNothingToCompare}} {{.locale.Tr "repo.commits.nothing_to_compare"}} {{if .RefName}}({{.RefName}}){{end}} {{else}} diff --git a/templates/repo/sub_menu.tmpl b/templates/repo/sub_menu.tmpl index fac8e5ac99ddc..63ee3cee86771 100644 --- a/templates/repo/sub_menu.tmpl +++ b/templates/repo/sub_menu.tmpl @@ -4,14 +4,14 @@