]> source.dussan.org Git - gitea.git/commitdiff
Fix nil context in RenderMarkdownToHtml (#23092)
authorZettat123 <zettat123@gmail.com>
Fri, 24 Feb 2023 06:36:07 +0000 (14:36 +0800)
committerGitHub <noreply@github.com>
Fri, 24 Feb 2023 06:36:07 +0000 (14:36 +0800)
Fix #23082.

This bug is caused by a nil context in
https://github.com/go-gitea/gitea/issues/23082#issuecomment-1441276546 .

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
13 files changed:
modules/templates/helper.go
templates/package/content/cargo.tmpl
templates/package/content/chef.tmpl
templates/package/content/npm.tmpl
templates/package/content/pub.tmpl
templates/package/content/pypi.tmpl
templates/repo/issue/comment_tab.tmpl
templates/repo/issue/fields/checkboxes.tmpl
templates/repo/issue/fields/dropdown.tmpl
templates/repo/issue/fields/header.tmpl
templates/repo/issue/fields/input.tmpl
templates/repo/issue/fields/markdown.tmpl
templates/repo/issue/fields/textarea.tmpl

index 4ffd0a5dee03b3ef173fbee5deef3c4b6463e6d2..b7bd07670cf74fe0c69a7578986c348553a09143 100644 (file)
@@ -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 {
index f78647ca69c63c81576f1de009648c42184f255c..410a81d9017a9f4842784b9e42e4efffc2ebcf7b 100644 (file)
@@ -26,7 +26,7 @@ git-fetch-with-cli = true</code></pre></div>
        {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}}
                <h4 class="ui top attached header">{{.locale.Tr "packages.about"}}</h4>
                {{if .PackageDescriptor.Metadata.Description}}<div class="ui attached segment">{{.PackageDescriptor.Metadata.Description}}</div>{{end}}
-               {{if .PackageDescriptor.Metadata.Readme}}<div class="ui attached segment">{{RenderMarkdownToHtml .PackageDescriptor.Metadata.Readme}}</div>{{end}}
+               {{if .PackageDescriptor.Metadata.Readme}}<div class="ui attached segment">{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}</div>{{end}}
        {{end}}
 
        {{if .PackageDescriptor.Metadata.Dependencies}}
index edc175f9beddc8570fded5f5949aceb5037129ef..d80ecdf40317a9fe59a5dee03e57f54a68124330 100644 (file)
@@ -20,7 +20,7 @@
                <h4 class="ui top attached header">{{.locale.Tr "packages.about"}}</h4>
                <div class="ui attached segment">
                        {{if .PackageDescriptor.Metadata.Description}}<p>{{.PackageDescriptor.Metadata.Description}}</p>{{end}}
-                       {{if .PackageDescriptor.Metadata.LongDescription}}{{RenderMarkdownToHtml .PackageDescriptor.Metadata.LongDescription}}{{end}}
+                       {{if .PackageDescriptor.Metadata.LongDescription}}{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.LongDescription}}{{end}}
                </div>
        {{end}}
 
index ea514c5263ad99bed6f0df65e66371438b73a743..d0c037b38a6d7f6647c8d3ce7fc005260c04a308 100644 (file)
@@ -25,7 +25,7 @@
                <div class="ui attached segment">
                        {{if .PackageDescriptor.Metadata.Readme}}
                        <div class="markup markdown">
-                               {{RenderMarkdownToHtml .PackageDescriptor.Metadata.Readme}}
+                               {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}
                        </div>
                        {{else if .PackageDescriptor.Metadata.Description}}
                                {{.PackageDescriptor.Metadata.Description}}
index e81439d4daece1dc69e1d377a0ba4fe1f5d68880..d5676fca5a5dee82c9c32101c6163e569e9edc93 100644 (file)
@@ -14,6 +14,6 @@
        {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}}
                <h4 class="ui top attached header">{{.locale.Tr "packages.about"}}</h4>
                {{if .PackageDescriptor.Metadata.Description}}<div class="ui attached segment">{{.PackageDescriptor.Metadata.Description}}</div>{{end}}
-               {{if .PackageDescriptor.Metadata.Readme}}<div class="ui attached segment">{{RenderMarkdownToHtml .PackageDescriptor.Metadata.Readme}}</div>{{end}}
+               {{if .PackageDescriptor.Metadata.Readme}}<div class="ui attached segment">{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}</div>{{end}}
        {{end}}
 {{end}}
index 830ba9bd67e5490ad7630c2eab4e577e9d80f013..8dbed5395ebd0f1017cfd0e7eec5dbe29113f4dd 100644 (file)
@@ -16,9 +16,9 @@
                <div class="ui attached segment">
                        <p>{{if .PackageDescriptor.Metadata.Summary}}{{.PackageDescriptor.Metadata.Summary}}{{end}}</p>
                        {{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}}
                </div>
        {{end}}
index 86efa8c833b072c55d57b700025c6e712ef6b1cc..b04a3c6bbbb4efdb133a115b0cb9c1853edcb9ec 100644 (file)
@@ -2,15 +2,15 @@
        <input type="hidden" name="template-file" value="{{.TemplateFile}}">
        {{range .Fields}}
                {{if eq .Type "input"}}
-                       {{template "repo/issue/fields/input" .}}
+                       {{template "repo/issue/fields/input" Dict "Context" $.Context "item" .}}
                {{else if eq .Type "markdown"}}
-                       {{template "repo/issue/fields/markdown" .}}
+                       {{template "repo/issue/fields/markdown" Dict "Context" $.Context "item" .}}
                {{else if eq .Type "textarea"}}
-                       {{template "repo/issue/fields/textarea" .}}
+                       {{template "repo/issue/fields/textarea" Dict "Context" $.Context "item" .}}
                {{else if eq .Type "dropdown"}}
-                       {{template "repo/issue/fields/dropdown" .}}
+                       {{template "repo/issue/fields/dropdown" Dict "Context" $.Context "item" .}}
                {{else if eq .Type "checkboxes"}}
-                       {{template "repo/issue/fields/checkboxes" .}}
+                       {{template "repo/issue/fields/checkboxes" Dict "Context" $.Context "item" .}}
                {{end}}
        {{end}}
 {{else}}
index b70334681f22fd1c5634d2e59436a634473fc6bf..80835b649a50af7f26e3924965e952efd1e75ba6 100644 (file)
@@ -1,7 +1,7 @@
 <div class="field">
        {{template "repo/issue/fields/header" .}}
        {{$field := .}}
-       {{range $i, $opt := .Attributes.options}}
+       {{range $i, $opt := .item.Attributes.options}}
                <div class="field">
                        <div class="ui checkbox">
                                <input type="checkbox" name="form-field-{{$field.ID}}-{{$i}}" {{if $opt.required}}readonly checked{{end}}>
index 83c2bb4aac89e498cbbd4fccb33c2c13a54d9f57..9adce5602f9a8681c4f306f950290375bd846d03 100644 (file)
@@ -1,12 +1,12 @@
 <div class="field">
        {{template "repo/issue/fields/header" .}}
        {{/* FIXME: required validation */}}
-       <div class="ui fluid selection dropdown {{if .Attributes.multiple}}multiple clearable{{end}}">
-               <input type="hidden" name="form-field-{{.ID}}" value="0">
+       <div class="ui fluid selection dropdown {{if .item.Attributes.multiple}}multiple clearable{{end}}">
+               <input type="hidden" name="form-field-{{.item.ID}}" value="0">
                <i class="dropdown icon"></i>
                <div class="default text"></div>
                <div class="menu">
-                       {{range $i, $opt := .Attributes.options}}
+                       {{range $i, $opt := .item.Attributes.options}}
                                <div class="item" data-value="{{$i}}">{{$opt}}</div>
                        {{end}}
                </div>
index fb8511b4f0bd05db2d41394b0f10091028f3b648..6034fed5fd23d62041f86015856d6d6bf6c89799 100644 (file)
@@ -1,6 +1,6 @@
-{{if .Attributes.label}}
-       <h3>{{.Attributes.label}}{{if .Validations.required}}<label class="required"></label>{{end}}</h3>
+{{if .item.Attributes.label}}
+       <h3>{{.item.Attributes.label}}{{if .item.Validations.required}}<label class="required"></label>{{end}}</h3>
 {{end}}
-{{if .Attributes.description}}
-       <span class="help">{{RenderMarkdownToHtml .Attributes.description}}</span>
+{{if .item.Attributes.description}}
+       <span class="help">{{RenderMarkdownToHtml .Context .item.Attributes.description}}</span>
 {{end}}
index d73354f6d392d0990bdf38aa4cbb9bf86e685a12..3fc8a8651048d4d7a6650c6e978c1a35dfdc60b6 100644 (file)
@@ -1,4 +1,4 @@
 <div class="field">
        {{template "repo/issue/fields/header" .}}
-       <input type="{{if .Validations.is_number}}number{{else}}text{{end}}" name="form-field-{{.ID}}" placeholder="{{.Attributes.placeholder}}" value="{{.Attributes.value}}" {{if .Validations.required}}required{{end}} {{if .Validations.regex}}pattern="{{.Validations.regex}}" title="{{.Validations.regex}}"{{end}}>
+       <input type="{{if .item.Validations.is_number}}number{{else}}text{{end}}" name="form-field-{{.item.ID}}" placeholder="{{.item.Attributes.placeholder}}" value="{{.item.Attributes.value}}" {{if .item.Validations.required}}required{{end}} {{if .item.Validations.regex}}pattern="{{.item.Validations.regex}}" title="{{.item.Validations.regex}}"{{end}}>
 </div>
index 8236171523e0a944a943975e1336f92e4cec2063..fd5b6afd227f7ba2e6b4ca34f03ec046c7357979 100644 (file)
@@ -1,3 +1,3 @@
 <div class="field">
-       <div>{{RenderMarkdownToHtml .Attributes.value}}</div>
+       <div>{{RenderMarkdownToHtml .Context .item.Attributes.value}}</div>
 </div>
index 5ad82e2460846afe46b25eb7ab554a90fa82f922..4b390fc9d6e0861c024f8b07dd46e94bcdbf18ba 100644 (file)
@@ -2,5 +2,5 @@
        {{template "repo/issue/fields/header" .}}
        {{/* FIXME: preview markdown result */}}
        {{/* FIXME: required validation for markdown editor */}}
-       <textarea name="form-field-{{.ID}}" placeholder="{{.Attributes.placeholder}}" class="edit_area {{if .Attributes.render}}no-easymde{{end}}" {{if and .Validations.required .Attributes.render}}required{{end}}>{{.Attributes.value}}</textarea>
+       <textarea name="form-field-{{.item.ID}}" placeholder="{{.item.Attributes.placeholder}}" class="edit_area {{if .item.Attributes.render}}no-easymde{{end}}" {{if and .item.Validations.required .item.Attributes.render}}required{{end}}>{{.item.Attributes.value}}</textarea>
 </div>