From 0293244a7850f4300d678b0d1310a0ab4ddf627d Mon Sep 17 00:00:00 2001 From: Zettat123 Date: Thu, 23 Feb 2023 17:01:17 +0800 Subject: [PATCH 1/4] fix RenderMarkdownToHtml nil context --- modules/templates/helper.go | 3 ++- services/markup/processorhelper.go | 3 +++ templates/package/content/npm.tmpl | 2 +- templates/repo/issue/comment_tab.tmpl | 10 +++++----- templates/repo/issue/fields/checkboxes.tmpl | 2 +- templates/repo/issue/fields/dropdown.tmpl | 6 +++--- templates/repo/issue/fields/header.tmpl | 8 ++++---- templates/repo/issue/fields/input.tmpl | 2 +- templates/repo/issue/fields/markdown.tmpl | 2 +- templates/repo/issue/fields/textarea.tmpl | 2 +- 10 files changed, 22 insertions(+), 18 deletions(-) diff --git a/modules/templates/helper.go b/modules/templates/helper.go index 4ffd0a5dee03..b7bd07670cf7 100644 --- a/modules/templates/helper.go +++ b/modules/templates/helper.go @@ -174,8 +174,9 @@ func NewFuncMap() []template.FuncMap { "RenderEmojiPlain": emoji.ReplaceAliases, "ReactionToEmoji": ReactionToEmoji, "RenderNote": RenderNote, - "RenderMarkdownToHtml": func(input string) template.HTML { + "RenderMarkdownToHtml": func(ctx context.Context, input string) template.HTML { output, err := markdown.RenderString(&markup.RenderContext{ + Ctx: ctx, URLPrefix: setting.AppSubURL, }, input) if err != nil { diff --git a/services/markup/processorhelper.go b/services/markup/processorhelper.go index 2897f203a90f..9c89dc7a939b 100644 --- a/services/markup/processorhelper.go +++ b/services/markup/processorhelper.go @@ -14,6 +14,9 @@ import ( func ProcessorHelper() *markup.ProcessorHelper { return &markup.ProcessorHelper{ IsUsernameMentionable: func(ctx context.Context, username string) bool { + if ctx == nil { + return false + } mentionedUser, err := user.GetUserByName(ctx, username) if err != nil { return false diff --git a/templates/package/content/npm.tmpl b/templates/package/content/npm.tmpl index ea514c5263ad..d0c037b38a6d 100644 --- a/templates/package/content/npm.tmpl +++ b/templates/package/content/npm.tmpl @@ -25,7 +25,7 @@
{{if .PackageDescriptor.Metadata.Readme}}
- {{RenderMarkdownToHtml .PackageDescriptor.Metadata.Readme}} + {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}
{{else if .PackageDescriptor.Metadata.Description}} {{.PackageDescriptor.Metadata.Description}} diff --git a/templates/repo/issue/comment_tab.tmpl b/templates/repo/issue/comment_tab.tmpl index 86efa8c833b0..7d2cac1d1459 100644 --- a/templates/repo/issue/comment_tab.tmpl +++ b/templates/repo/issue/comment_tab.tmpl @@ -2,15 +2,15 @@ {{range .Fields}} {{if eq .Type "input"}} - {{template "repo/issue/fields/input" .}} + {{template "repo/issue/fields/input" Dict "ctx" $.Context "item" .}} {{else if eq .Type "markdown"}} - {{template "repo/issue/fields/markdown" .}} + {{template "repo/issue/fields/markdown" Dict "ctx" $.Context "item" .}} {{else if eq .Type "textarea"}} - {{template "repo/issue/fields/textarea" .}} + {{template "repo/issue/fields/textarea" Dict "ctx" $.Context "item" .}} {{else if eq .Type "dropdown"}} - {{template "repo/issue/fields/dropdown" .}} + {{template "repo/issue/fields/dropdown" Dict "ctx" $.Context "item" .}} {{else if eq .Type "checkboxes"}} - {{template "repo/issue/fields/checkboxes" .}} + {{template "repo/issue/fields/checkboxes" Dict "ctx" $.Context "item" .}} {{end}} {{end}} {{else}} diff --git a/templates/repo/issue/fields/checkboxes.tmpl b/templates/repo/issue/fields/checkboxes.tmpl index b70334681f22..80835b649a50 100644 --- a/templates/repo/issue/fields/checkboxes.tmpl +++ b/templates/repo/issue/fields/checkboxes.tmpl @@ -1,7 +1,7 @@
{{template "repo/issue/fields/header" .}} {{$field := .}} - {{range $i, $opt := .Attributes.options}} + {{range $i, $opt := .item.Attributes.options}}
diff --git a/templates/repo/issue/fields/dropdown.tmpl b/templates/repo/issue/fields/dropdown.tmpl index 83c2bb4aac89..9adce5602f9a 100644 --- a/templates/repo/issue/fields/dropdown.tmpl +++ b/templates/repo/issue/fields/dropdown.tmpl @@ -1,12 +1,12 @@
{{template "repo/issue/fields/header" .}} {{/* FIXME: required validation */}} - {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}}

{{.locale.Tr "packages.about"}}

{{if .PackageDescriptor.Metadata.Description}}
{{.PackageDescriptor.Metadata.Description}}
{{end}} - {{if .PackageDescriptor.Metadata.Readme}}
{{RenderMarkdownToHtml .PackageDescriptor.Metadata.Readme}}
{{end}} + {{if .PackageDescriptor.Metadata.Readme}}
{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}
{{end}} {{end}} {{if .PackageDescriptor.Metadata.Dependencies}} diff --git a/templates/package/content/chef.tmpl b/templates/package/content/chef.tmpl index edc175f9bedd..d80ecdf40317 100644 --- a/templates/package/content/chef.tmpl +++ b/templates/package/content/chef.tmpl @@ -20,7 +20,7 @@

{{.locale.Tr "packages.about"}}

{{if .PackageDescriptor.Metadata.Description}}

{{.PackageDescriptor.Metadata.Description}}

{{end}} - {{if .PackageDescriptor.Metadata.LongDescription}}{{RenderMarkdownToHtml .PackageDescriptor.Metadata.LongDescription}}{{end}} + {{if .PackageDescriptor.Metadata.LongDescription}}{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.LongDescription}}{{end}}
{{end}} diff --git a/templates/package/content/pub.tmpl b/templates/package/content/pub.tmpl index e81439d4daec..d5676fca5a5d 100644 --- a/templates/package/content/pub.tmpl +++ b/templates/package/content/pub.tmpl @@ -14,6 +14,6 @@ {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}}

{{.locale.Tr "packages.about"}}

{{if .PackageDescriptor.Metadata.Description}}
{{.PackageDescriptor.Metadata.Description}}
{{end}} - {{if .PackageDescriptor.Metadata.Readme}}
{{RenderMarkdownToHtml .PackageDescriptor.Metadata.Readme}}
{{end}} + {{if .PackageDescriptor.Metadata.Readme}}
{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}
{{end}} {{end}} {{end}} diff --git a/templates/package/content/pypi.tmpl b/templates/package/content/pypi.tmpl index 830ba9bd67e5..8dbed5395ebd 100644 --- a/templates/package/content/pypi.tmpl +++ b/templates/package/content/pypi.tmpl @@ -16,9 +16,9 @@

{{if .PackageDescriptor.Metadata.Summary}}{{.PackageDescriptor.Metadata.Summary}}{{end}}

{{if .PackageDescriptor.Metadata.LongDescription}} - {{RenderMarkdownToHtml .PackageDescriptor.Metadata.LongDescription}} + {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.LongDescription}} {{else if .PackageDescriptor.Metadata.Description}} - {{RenderMarkdownToHtml .PackageDescriptor.Metadata.Description}} + {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Description}} {{end}}
{{end}} From 7ade2d938ca9a3441282875e81633001588b4862 Mon Sep 17 00:00:00 2001 From: Zettat123 Date: Thu, 23 Feb 2023 20:37:20 +0800 Subject: [PATCH 3/4] remove unused code --- services/markup/processorhelper.go | 3 --- 1 file changed, 3 deletions(-) diff --git a/services/markup/processorhelper.go b/services/markup/processorhelper.go index 9c89dc7a939b..2897f203a90f 100644 --- a/services/markup/processorhelper.go +++ b/services/markup/processorhelper.go @@ -14,9 +14,6 @@ import ( func ProcessorHelper() *markup.ProcessorHelper { return &markup.ProcessorHelper{ IsUsernameMentionable: func(ctx context.Context, username string) bool { - if ctx == nil { - return false - } mentionedUser, err := user.GetUserByName(ctx, username) if err != nil { return false From 8aca14b6e26c0702e67c25f57c4067eb86644be8 Mon Sep 17 00:00:00 2001 From: Zettat123 Date: Fri, 24 Feb 2023 10:56:19 +0800 Subject: [PATCH 4/4] rename 'ctx' to 'Context' --- templates/repo/issue/comment_tab.tmpl | 10 +++++----- templates/repo/issue/fields/header.tmpl | 2 +- templates/repo/issue/fields/markdown.tmpl | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/templates/repo/issue/comment_tab.tmpl b/templates/repo/issue/comment_tab.tmpl index 7d2cac1d1459..b04a3c6bbbb4 100644 --- a/templates/repo/issue/comment_tab.tmpl +++ b/templates/repo/issue/comment_tab.tmpl @@ -2,15 +2,15 @@ {{range .Fields}} {{if eq .Type "input"}} - {{template "repo/issue/fields/input" Dict "ctx" $.Context "item" .}} + {{template "repo/issue/fields/input" Dict "Context" $.Context "item" .}} {{else if eq .Type "markdown"}} - {{template "repo/issue/fields/markdown" Dict "ctx" $.Context "item" .}} + {{template "repo/issue/fields/markdown" Dict "Context" $.Context "item" .}} {{else if eq .Type "textarea"}} - {{template "repo/issue/fields/textarea" Dict "ctx" $.Context "item" .}} + {{template "repo/issue/fields/textarea" Dict "Context" $.Context "item" .}} {{else if eq .Type "dropdown"}} - {{template "repo/issue/fields/dropdown" Dict "ctx" $.Context "item" .}} + {{template "repo/issue/fields/dropdown" Dict "Context" $.Context "item" .}} {{else if eq .Type "checkboxes"}} - {{template "repo/issue/fields/checkboxes" Dict "ctx" $.Context "item" .}} + {{template "repo/issue/fields/checkboxes" Dict "Context" $.Context "item" .}} {{end}} {{end}} {{else}} diff --git a/templates/repo/issue/fields/header.tmpl b/templates/repo/issue/fields/header.tmpl index da6ad1852677..6034fed5fd23 100644 --- a/templates/repo/issue/fields/header.tmpl +++ b/templates/repo/issue/fields/header.tmpl @@ -2,5 +2,5 @@

{{.item.Attributes.label}}{{if .item.Validations.required}}{{end}}

{{end}} {{if .item.Attributes.description}} - {{RenderMarkdownToHtml .ctx .item.Attributes.description}} + {{RenderMarkdownToHtml .Context .item.Attributes.description}} {{end}} diff --git a/templates/repo/issue/fields/markdown.tmpl b/templates/repo/issue/fields/markdown.tmpl index 7e4288fec8ff..fd5b6afd227f 100644 --- a/templates/repo/issue/fields/markdown.tmpl +++ b/templates/repo/issue/fields/markdown.tmpl @@ -1,3 +1,3 @@
-
{{RenderMarkdownToHtml .ctx .item.Attributes.value}}
+
{{RenderMarkdownToHtml .Context .item.Attributes.value}}