chore: migrate mail themes to shared framework and locked upstream inputs
This commit is contained in:
1 parent
5c0589f6f6
commit
fec3ace600
225 files changed
+4718
-15807
No files matched your search
+4
-11
@@ -9,9 +9,11 @@ import (
|
||||
|
||||
// TemplateFuncs maps Gitea's built-in template functions available in mail templates.
|
||||
var TemplateFuncs = template.FuncMap{
|
||||
"dict": Dict,
|
||||
"AppUrl": func() string { return "https://gitea.com/" },
|
||||
"AppName": func() string { return "Gitea" },
|
||||
"DotEscape": func(s string) template.HTML { return template.HTML(template.HTMLEscapeString(s)) },
|
||||
"AppDomain": func() string { return "gitea.com" },
|
||||
"DotEscape": func(s string) string { return strings.ReplaceAll(s, ".", "\u200d.\u200d") },
|
||||
"QueryEscape": url.QueryEscape,
|
||||
"ShortSha": ShortSha,
|
||||
"PathEscapeSegments": PathEscapeSegments,
|
||||
@@ -69,16 +71,7 @@ func FormatByteSize(n int64) string {
|
||||
|
||||
// HTMLFormat substitutes %s/%d placeholders with HTML-escaped values.
|
||||
func HTMLFormat(fmtStr string, args ...any) template.HTML {
|
||||
result := fmtStr
|
||||
for i, arg := range args {
|
||||
escaped := template.HTMLEscapeString(fmt.Sprint(arg))
|
||||
result = strings.Replace(result, fmt.Sprintf("%%[%d]s", i+1), escaped, 1)
|
||||
if !strings.Contains(result, fmt.Sprintf("%%[%d]s", i+1)) {
|
||||
result = strings.Replace(result, "%s", escaped, 1)
|
||||
result = strings.Replace(result, "%d", fmt.Sprint(arg), 1)
|
||||
}
|
||||
}
|
||||
return template.HTML(result)
|
||||
return template.HTML(fmt.Sprintf(fmtStr, escapedArgs(args)...))
|
||||
}
|
||||
|
||||
// Dict builds a map from alternating key/value pairs (used by Gitea's Dict function).
|
||||
|
||||
Reference in new issue
Block a user