Skip to content

Commit e02e752

Browse files
yardenshohamZettat123lunny
authored
Fix nil context in RenderMarkdownToHtml (#23092) (#23108)
Backport #23092 Fix #23082. This bug is caused by a nil context in #23082 (comment) . Co-authored-by: Zettat123 <[email protected]> Co-authored-by: Lunny Xiao <[email protected]>
1 parent 5ddf67a commit e02e752

File tree

13 files changed

+24
-23
lines changed

13 files changed

+24
-23
lines changed

modules/templates/helper.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -174,8 +174,9 @@ func NewFuncMap() []template.FuncMap {
174174
"RenderEmojiPlain": emoji.ReplaceAliases,
175175
"ReactionToEmoji": ReactionToEmoji,
176176
"RenderNote": RenderNote,
177-
"RenderMarkdownToHtml": func(input string) template.HTML {
177+
"RenderMarkdownToHtml": func(ctx context.Context, input string) template.HTML {
178178
output, err := markdown.RenderString(&markup.RenderContext{
179+
Ctx: ctx,
179180
URLPrefix: setting.AppSubURL,
180181
}, input)
181182
if err != nil {

templates/package/content/cargo.tmpl

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ git-fetch-with-cli = true</code></pre></div>
2626
{{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}}
2727
<h4 class="ui top attached header">{{.locale.Tr "packages.about"}}</h4>
2828
{{if .PackageDescriptor.Metadata.Description}}<div class="ui attached segment">{{.PackageDescriptor.Metadata.Description}}</div>{{end}}
29-
{{if .PackageDescriptor.Metadata.Readme}}<div class="ui attached segment">{{RenderMarkdownToHtml .PackageDescriptor.Metadata.Readme}}</div>{{end}}
29+
{{if .PackageDescriptor.Metadata.Readme}}<div class="ui attached segment">{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}</div>{{end}}
3030
{{end}}
3131

3232
{{if .PackageDescriptor.Metadata.Dependencies}}

templates/package/content/chef.tmpl

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<h4 class="ui top attached header">{{.locale.Tr "packages.about"}}</h4>
2121
<div class="ui attached segment">
2222
{{if .PackageDescriptor.Metadata.Description}}<p>{{.PackageDescriptor.Metadata.Description}}</p>{{end}}
23-
{{if .PackageDescriptor.Metadata.LongDescription}}{{RenderMarkdownToHtml .PackageDescriptor.Metadata.LongDescription}}{{end}}
23+
{{if .PackageDescriptor.Metadata.LongDescription}}{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.LongDescription}}{{end}}
2424
</div>
2525
{{end}}
2626

templates/package/content/npm.tmpl

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
<div class="ui attached segment">
2626
{{if .PackageDescriptor.Metadata.Readme}}
2727
<div class="markup markdown">
28-
{{RenderMarkdownToHtml .PackageDescriptor.Metadata.Readme}}
28+
{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}
2929
</div>
3030
{{else if .PackageDescriptor.Metadata.Description}}
3131
{{.PackageDescriptor.Metadata.Description}}

templates/package/content/pub.tmpl

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,6 @@
1414
{{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}}
1515
<h4 class="ui top attached header">{{.locale.Tr "packages.about"}}</h4>
1616
{{if .PackageDescriptor.Metadata.Description}}<div class="ui attached segment">{{.PackageDescriptor.Metadata.Description}}</div>{{end}}
17-
{{if .PackageDescriptor.Metadata.Readme}}<div class="ui attached segment">{{RenderMarkdownToHtml .PackageDescriptor.Metadata.Readme}}</div>{{end}}
17+
{{if .PackageDescriptor.Metadata.Readme}}<div class="ui attached segment">{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}</div>{{end}}
1818
{{end}}
1919
{{end}}

templates/package/content/pypi.tmpl

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616
<div class="ui attached segment">
1717
<p>{{if .PackageDescriptor.Metadata.Summary}}{{.PackageDescriptor.Metadata.Summary}}{{end}}</p>
1818
{{if .PackageDescriptor.Metadata.LongDescription}}
19-
{{RenderMarkdownToHtml .PackageDescriptor.Metadata.LongDescription}}
19+
{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.LongDescription}}
2020
{{else if .PackageDescriptor.Metadata.Description}}
21-
{{RenderMarkdownToHtml .PackageDescriptor.Metadata.Description}}
21+
{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Description}}
2222
{{end}}
2323
</div>
2424
{{end}}

templates/repo/issue/comment_tab.tmpl

+5-5
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22
<input type="hidden" name="template-file" value="{{.TemplateFile}}">
33
{{range .Fields}}
44
{{if eq .Type "input"}}
5-
{{template "repo/issue/fields/input" .}}
5+
{{template "repo/issue/fields/input" Dict "Context" $.Context "item" .}}
66
{{else if eq .Type "markdown"}}
7-
{{template "repo/issue/fields/markdown" .}}
7+
{{template "repo/issue/fields/markdown" Dict "Context" $.Context "item" .}}
88
{{else if eq .Type "textarea"}}
9-
{{template "repo/issue/fields/textarea" .}}
9+
{{template "repo/issue/fields/textarea" Dict "Context" $.Context "item" .}}
1010
{{else if eq .Type "dropdown"}}
11-
{{template "repo/issue/fields/dropdown" .}}
11+
{{template "repo/issue/fields/dropdown" Dict "Context" $.Context "item" .}}
1212
{{else if eq .Type "checkboxes"}}
13-
{{template "repo/issue/fields/checkboxes" .}}
13+
{{template "repo/issue/fields/checkboxes" Dict "Context" $.Context "item" .}}
1414
{{end}}
1515
{{end}}
1616
{{else}}

templates/repo/issue/fields/checkboxes.tmpl

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<div class="field">
22
{{template "repo/issue/fields/header" .}}
33
{{$field := .}}
4-
{{range $i, $opt := .Attributes.options}}
4+
{{range $i, $opt := .item.Attributes.options}}
55
<div class="field">
66
<div class="ui checkbox">
77
<input type="checkbox" name="form-field-{{$field.ID}}-{{$i}}" {{if $opt.required}}readonly checked{{end}}>

templates/repo/issue/fields/dropdown.tmpl

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
<div class="field">
22
{{template "repo/issue/fields/header" .}}
33
{{/* FIXME: required validation */}}
4-
<div class="ui fluid selection dropdown {{if .Attributes.multiple}}multiple clearable{{end}}">
5-
<input type="hidden" name="form-field-{{.ID}}" value="0">
4+
<div class="ui fluid selection dropdown {{if .item.Attributes.multiple}}multiple clearable{{end}}">
5+
<input type="hidden" name="form-field-{{.item.ID}}" value="0">
66
<i class="dropdown icon"></i>
77
<div class="default text"></div>
88
<div class="menu">
9-
{{range $i, $opt := .Attributes.options}}
9+
{{range $i, $opt := .item.Attributes.options}}
1010
<div class="item" data-value="{{$i}}">{{$opt}}</div>
1111
{{end}}
1212
</div>
+4-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
{{if .Attributes.label}}
2-
<h3>{{.Attributes.label}}{{if .Validations.required}}<label class="required"></label>{{end}}</h3>
1+
{{if .item.Attributes.label}}
2+
<h3>{{.item.Attributes.label}}{{if .item.Validations.required}}<label class="required"></label>{{end}}</h3>
33
{{end}}
4-
{{if .Attributes.description}}
5-
<span class="help">{{RenderMarkdownToHtml .Attributes.description}}</span>
4+
{{if .item.Attributes.description}}
5+
<span class="help">{{RenderMarkdownToHtml .Context .item.Attributes.description}}</span>
66
{{end}}
+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
<div class="field">
22
{{template "repo/issue/fields/header" .}}
3-
<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}}>
3+
<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}}>
44
</div>
+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
<div class="field">
2-
<div>{{RenderMarkdownToHtml .Attributes.value}}</div>
2+
<div>{{RenderMarkdownToHtml .Context .item.Attributes.value}}</div>
33
</div>

templates/repo/issue/fields/textarea.tmpl

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
{{template "repo/issue/fields/header" .}}
33
{{/* FIXME: preview markdown result */}}
44
{{/* FIXME: required validation for markdown editor */}}
5-
<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>
5+
<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>
66
</div>

0 commit comments

Comments
 (0)