Port templates to NodeBB 4.14 benchpress escaping
NodeBB 4.14 registers a real __escape for template rendering (4.13 used
identity), so raw-HTML output must use the double-brace forms:
- HTML helpers: {{buildAvatar(...)}}, {{buildCategoryIcon(...)}}, etc.
- Pre-rendered HTML fields: {{txEscape(content)}} / {{./descriptionParsed}}
- Token-bearing text (nav labels, category names): {{tx(...)}}
- emails/partials/post-queue-body.tpl also adopts the 4.14 data shape
(notification.category/topic/user/content).
Mirrors the harmony 2.2.72 -> 3.0.15 and core 4.13.2 -> 4.14.0 diffs.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -2,8 +2,8 @@
|
||||
<span component="category-selector-selected" class="fw-semibold">
|
||||
{{{ if (selectedCategory && !showCategorySelectLabel) }}}
|
||||
<span class="category-item d-inline-flex align-items-center gap-1 {{{ if selectedCategory.class }}}{selectedCategory.class}{{{ end }}}">
|
||||
{buildCategoryIcon(selectedCategory, "24px", "rounded-circle")}
|
||||
<span class="category-name">{selectedCategory.name}</span>
|
||||
{{buildCategoryIcon(selectedCategory, "24px", "rounded-circle")}}
|
||||
<span class="category-name">{{tx(selectedCategory.name)}}</span>
|
||||
</span>
|
||||
{{{ else }}}
|
||||
<i class="fa fa-fw {{{ if selectCategoryIcon }}}{selectCategoryIcon}{{{ else }}}fa-list{{{ end }}} text-primary"></i>
|
||||
@@ -27,9 +27,9 @@
|
||||
<span component="category-markup" style="{{{ if ./match }}}font-weight: bold;{{{end}}}">
|
||||
<span class="category-item d-inline-flex align-items-center gap-1 {{{ if ./class }}}{./class}{{{ end }}}">
|
||||
{{{ if ./icon }}}
|
||||
{buildCategoryIcon(@value, "24px", "rounded-circle")}
|
||||
{{buildCategoryIcon(@value, "24px", "rounded-circle")}}
|
||||
{{{ end }}}
|
||||
<span class="category-name">{./name}</span>
|
||||
<span class="category-name">{{tx(./name)}}</span>
|
||||
</span>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
Reference in New Issue
Block a user