Skip to content

Commit 600ae91

Browse files
authored
Merge pull request #6358 from WoltLab/6.2-frontend-templates-unsafe
Refactor frontend templates
2 parents 1cbee1c + 46a98ca commit 600ae91

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+303
-211
lines changed

com.woltlab.wcf/templates/__labelSelection.tpl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
<dt><label>{$labelGroup->getTitle()}</label></dt>
44
<dd>
55
<ul class="labelList jsOnly">
6-
<li class="dropdown labelChooser" id="labelGroup{@$labelGroup->groupID}" data-group-id="{@$labelGroup->groupID}">
7-
<div class="dropdownToggle" data-toggle="labelGroup{@$labelGroup->groupID}"><span class="badge label">{lang}wcf.label.none{/lang}</span></div>
6+
<li class="dropdown labelChooser" id="labelGroup{$labelGroup->groupID}" data-group-id="{$labelGroup->groupID}">
7+
<div class="dropdownToggle" data-toggle="labelGroup{$labelGroup->groupID}"><span class="badge label">{lang}wcf.label.none{/lang}</span></div>
88
<div class="dropdownMenu">
99
<ul class="scrollableDropdownMenu">
1010
{foreach from=$labelGroup item=label}
11-
<li data-label-id="{@$label->labelID}"><span>{@$label->render()}</span></li>
11+
<li data-label-id="{$label->labelID}"><span>{unsafe:$label->render()}</span></li>
1212
{/foreach}
1313
</ul>
1414
</div>
@@ -17,7 +17,7 @@
1717
{if $noLabelSelectionNoScript|empty}
1818
<noscript>
1919
{foreach from=$labelGroups item=labelGroup}
20-
<select name="labelIDs[{@$labelGroup->groupID}]">
20+
<select name="labelIDs[{$labelGroup->groupID}]">
2121
<option value="0">{lang}wcf.label.none{/lang}</option>
2222
<option value="-1">{lang}wcf.label.withoutSelection{/lang}</option>
2323
{foreach from=$labelGroup item=label}

com.woltlab.wcf/templates/categoryTrophyList.tpl

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,29 @@
55
<div class="contentHeaderTitle">
66
<h1 class="contentTitle">{$category->getTitle()}</h1>
77
{if $category && $category->getDescription()}
8-
<p class="contentHeaderDescription">{if $category->descriptionUseHtml}{@$category->getDescription()}{else}{$category->getDescription()}{/if}</p>
8+
<p class="contentHeaderDescription">{if $category->descriptionUseHtml}{unsafe:$category->getDescription()}{else}{$category->getDescription()}{/if}</p>
99
{/if}
1010
</div>
1111
</header>
1212
{/capture}
1313

1414
{capture assign='headContent'}
1515
{if $pageNo < $pages}
16-
<link rel="next" href="{link controller='CategoryTrophyList' object=$category}pageNo={@$pageNo+1}{/link}">
16+
<link rel="next" href="{link controller='CategoryTrophyList' object=$category pageNo=$pageNo+1}{/link}">
1717
{/if}
1818
{if $pageNo > 1}
19-
<link rel="prev" href="{link controller='CategoryTrophyList' object=$category}{if $pageNo > 2}pageNo={@$pageNo-1}{/if}{/link}">
19+
<link rel="prev" href="{link controller='CategoryTrophyList' object=$category}{if $pageNo > 2}pageNo={$pageNo-1}{/if}{/link}">
2020
{/if}
2121
{/capture}
2222

2323
{capture assign='contentInteractionPagination'}
24-
{pages print=true assign='pagesLinks' controller='CategoryTrophyList' object=$category link="pageNo=%d"}
24+
{if $pages > 1}
25+
<woltlab-core-pagination
26+
page="{$pageNo}"
27+
count="{$pages}"
28+
url="{link controller='CategoryTrophyList' object=$category}{/link}"
29+
></woltlab-core-pagination>
30+
{/if}
2531
{/capture}
2632

2733
{include file='header'}
@@ -31,11 +37,11 @@
3137
<ol class="containerList trophyCategoryList doubleColumned">
3238
{foreach from=$objects item=trophy}
3339
<li class="box64">
34-
<div>{@$trophy->renderTrophy(64)}</div>
40+
<div>{unsafe:$trophy->renderTrophy(64)}</div>
3541

3642
<div class="containerHeadline">
37-
<h3><a href="{$trophy->getLink()}">{@$trophy->getTitle()}</a></h3>
38-
{if !$trophy->getDescription()|empty}<p><small>{@$trophy->getDescription()}</small></p>{/if}
43+
<h3><a href="{$trophy->getLink()}">{unsafe:$trophy->getTitle()}</a></h3>
44+
{if !$trophy->getDescription()|empty}<p><small>{unsafe:$trophy->getDescription()}</small></p>{/if}
3945
<p><small>{lang items=$trophy->awarded}wcf.user.trophy.trophyAwarded{/lang}</small></p>
4046
</div>
4147
</li>
@@ -47,11 +53,15 @@
4753
{/if}
4854

4955
<footer class="contentFooter">
50-
{hascontent}
56+
{if $pages > 1}
5157
<div class="paginationBottom">
52-
{content}{@$pagesLinks}{/content}
58+
<woltlab-core-pagination
59+
page="{$pageNo}"
60+
count="{$pages}"
61+
url="{link controller='CategoryTrophyList' object=$category}{/link}"
62+
></woltlab-core-pagination>
5363
</div>
54-
{/hascontent}
64+
{/if}
5565

5666
{hascontent}
5767
<nav class="contentFooterNavigation">

com.woltlab.wcf/templates/cms.tpl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,12 @@
4747
{if $content->content}
4848
{if $page->pageType == 'text'}
4949
<div class="section cmsContent htmlContent">
50-
{@$content->getFormattedContent()}
50+
{unsafe:$content->getFormattedContent()}
5151
</div>
5252
{elseif $page->pageType == 'html'}
53-
{@$content->getParsedContent()}
53+
{unsafe:$content->getParsedContent()}
5454
{elseif $page->pageType == 'tpl'}
55-
{@$page->getParsedTemplate($content)}
55+
{unsafe:$page->getParsedTemplate($content)}
5656
{/if}
5757
{/if}
5858

com.woltlab.wcf/templates/combinedTagged.tpl

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
1-
{capture assign='pageTitle'}{lang}wcf.tagging.combinedTaggedObjects.{@$objectType}{/lang} {lang}wcf.tagging.combinedTaggedObjects{/lang}{if $pageNo > 1} - {lang}wcf.page.pageNo{/lang}{/if}{/capture}
1+
{capture assign='pageTitle'}{lang}wcf.tagging.combinedTaggedObjects.{$objectType}{/lang} {lang}wcf.tagging.combinedTaggedObjects{/lang}{if $pageNo > 1} - {lang}wcf.page.pageNo{/lang}{/if}{/capture}
22

33
{capture assign='contentHeader'}
44
<header class="contentHeader">
55
<div class="contentHeaderTitle">
6-
<h1 class="contentTitle">{lang}wcf.tagging.combinedTaggedObjects.{@$objectType}{/lang} {lang}wcf.tagging.combinedTaggedObjects{/lang}</h1>
6+
<h1 class="contentTitle">{lang}wcf.tagging.combinedTaggedObjects.{$objectType}{/lang} {lang}wcf.tagging.combinedTaggedObjects{/lang}</h1>
77
</div>
88
</header>
99
{/capture}
1010

11-
{capture assign='linkParameters'}{implode from=$combinedTags item=tag glue='&'}tagIDs[]={@$tag->tagID}{/implode}{/capture}
11+
{capture assign='linkParameters'}{implode from=$combinedTags item=tag glue='&'}tagIDs[]={$tag->tagID}{/implode}{/capture}
1212

1313
{capture assign='headContent'}
1414
{if $pageNo < $pages}
15-
<link rel="next" href="{link controller='CombinedTagged'}{@$linkParameters}&objectType={@$objectType}&pageNo={@$pageNo+1}{/link}">
15+
<link rel="next" href="{link controller='CombinedTagged' objectType=$objectType pageNo=$pageNo+1}{unsafe:$linkParameters}{/link}">
1616
{/if}
1717
{if $pageNo > 1}
18-
<link rel="prev" href="{link controller='CombinedTagged'}{@$linkParameters}&objectType={@$objectType}{if $pageNo > 2}&pageNo={@$pageNo-1}{/if}{/link}">
18+
<link rel="prev" href="{link controller='CombinedTagged' objectType=$objectType}{unsafe:$linkParameters}{if $pageNo > 2}&pageNo={$pageNo-1}{/if}{/link}">
1919
{/if}
20-
<link rel="canonical" href="{link controller='CombinedTagged'}{@$linkParameters}&objectType={@$objectType}{if $pageNo > 1}&pageNo={@$pageNo}{/if}{/link}">
20+
<link rel="canonical" href="{link controller='CombinedTagged' objectType=$objectType}{unsafe:$linkParameters}{if $pageNo > 1}&pageNo={$pageNo}{/if}{/link}">
2121
{/capture}
2222

2323
{capture assign='sidebarRight'}
@@ -48,7 +48,13 @@
4848
{/capture}
4949

5050
{capture assign='contentInteractionPagination'}
51-
{pages print=true assign=pagesLinks controller='CombinedTagged' link="$linkParameters&objectType=$objectType&pageNo=%d"}
51+
{if $pages > 1}
52+
<woltlab-core-pagination
53+
page="{$pageNo}"
54+
count="{$pages}"
55+
url="{link controller='CombinedTagged' objectType=$objectType}{unsafe:$linkParameters}{/link}"
56+
></woltlab-core-pagination>
57+
{/if}
5258
{/capture}
5359

5460
{capture assign='contentInteractionButtons'}
@@ -64,11 +70,15 @@
6470
{/if}
6571

6672
<footer class="contentFooter">
67-
{hascontent}
73+
{if $pages > 1}
6874
<div class="paginationBottom">
69-
{content}{@$pagesLinks}{/content}
75+
<woltlab-core-pagination
76+
page="{$pageNo}"
77+
count="{$pages}"
78+
url="{link controller='CombinedTagged' objectType=$objectType}{unsafe:$linkParameters}{/link}"
79+
></woltlab-core-pagination>
7080
</div>
71-
{/hascontent}
81+
{/if}
7282

7383
{hascontent}
7484
<nav class="contentFooterNavigation">

com.woltlab.wcf/templates/contentInteraction.tpl

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,28 @@
11
{if !$beforeContentInteraction|empty}
2-
{@$beforeContentInteraction}
2+
{unsafe:$beforeContentInteraction}
33
{/if}
44

55
{capture assign='__contentInteractionPagination'}
6-
{if $contentInteractionPagination|isset}{@$contentInteractionPagination}{/if}
6+
{if $contentInteractionPagination|isset}{unsafe:$contentInteractionPagination}{/if}
77
{/capture}
88
{assign var='__contentInteractionPagination' value=$__contentInteractionPagination|trim}
99

1010
{capture assign='__contentInteractionButtons'}
1111
{event name='beforeButtons'}
12-
{if $contentInteractionButtons|isset}{@$contentInteractionButtons}{/if}
12+
{if $contentInteractionButtons|isset}{unsafe:$contentInteractionButtons}{/if}
1313
{event name='afterButtons'}
1414
{/capture}
1515
{assign var='__contentInteractionButtons' value=$__contentInteractionButtons|trim}
1616

1717
{capture assign='__contentInteractionDropdownItems'}
1818
{event name='beforeDropdownItems'}
19-
{if $contentInteractionDropdownItems|isset}{@$contentInteractionDropdownItems}{/if}
19+
{if $contentInteractionDropdownItems|isset}{unsafe:$contentInteractionDropdownItems}{/if}
2020
{event name='afterDropdownItems'}
2121
{/capture}
2222
{assign var='__contentInteractionDropdownItems' value=$__contentInteractionDropdownItems|trim}
2323

2424
{capture assign='__contentInteractionShareButton'}
25-
{if $contentInteractionShareButton|isset}{@$contentInteractionShareButton}{/if}
25+
{if $contentInteractionShareButton|isset}{unsafe:$contentInteractionShareButton}{/if}
2626
{/capture}
2727
{assign var='__contentInteractionShareButton' value=$__contentInteractionShareButton|trim}
2828

@@ -32,21 +32,21 @@
3232
{unsafe:$contentInteractionTabsComponent->render()}
3333
{elseif $__contentInteractionPagination}
3434
<div class="contentInteractionPagination paginationTop">
35-
{@$__contentInteractionPagination}
35+
{unsafe:$__contentInteractionPagination}
3636
</div>
3737
{/if}
3838

3939
{if $__contentInteractionButtons || $__contentInteractionDropdownItems || $__contentInteractionShareButton}
4040
<div class="contentInteractionButtonContainer">
4141
{if $__contentInteractionButtons}
4242
<div class="contentInteractionButtons">
43-
{@$__contentInteractionButtons}
43+
{unsafe:$__contentInteractionButtons}
4444
</div>
4545
{/if}
4646

4747
{if $__contentInteractionShareButton}
4848
<div class="contentInteractionShareButton">
49-
{@$__contentInteractionShareButton}
49+
{unsafe:$__contentInteractionShareButton}
5050
</div>
5151
{/if}
5252

@@ -55,7 +55,7 @@
5555
<button type="button" class="button small dropdownToggle" aria-label="{lang}wcf.global.button.more{/lang}">{icon name='ellipsis-vertical'}</button>
5656

5757
<ul class="contentInteractionDropdownItems dropdownMenu">
58-
{@$__contentInteractionDropdownItems}
58+
{unsafe:$__contentInteractionDropdownItems}
5959
</ul>
6060
</div>
6161
{/if}

com.woltlab.wcf/templates/customOptionFieldList.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
{assign var=option value=$optionData[object]}
33
<dl class="{if $errorType|is_array && $errorType[$option->optionName]|isset} formError{/if}">
44
<dt{if $optionData[cssClassName]} class="{$optionData[cssClassName]}"{/if}><label for="{$option->optionName}">{$option->getTitle()}</label>{if $option->required} <span class="customOptionRequired">*</span>{/if}</dt>
5-
<dd>{@$optionData[html]}
5+
<dd>{unsafe:$optionData[html]}
66
<small>{$option->getDescription()}</small>
77

88
{if $errorType|is_array && $errorType[$option->optionName]|isset}

com.woltlab.wcf/templates/deletedContentList.tpl

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{capture assign='pageTitle'}{lang}wcf.moderation.deletedContent.{@$objectType}{/lang}{/capture}
1+
{capture assign='pageTitle'}{lang}wcf.moderation.deletedContent.{$objectType}{/lang}{/capture}
22

33
{capture assign='sidebarRight'}
44
<section class="box" data-static-box-identifier="com.woltlab.wcf.DeletedContentListMenu">
@@ -18,10 +18,16 @@
1818
</section>
1919
{/capture}
2020

21-
{capture assign='contentTitle'}{lang}wcf.moderation.deletedContent.{@$objectType}{/lang}{/capture}
21+
{capture assign='contentTitle'}{lang}wcf.moderation.deletedContent.{$objectType}{/lang}{/capture}
2222

2323
{capture assign='contentInteractionPagination'}
24-
{pages print=true assign=pagesLinks controller='DeletedContentList' link="objectType=$objectType&pageNo=%d"}
24+
{if $pages > 1}
25+
<woltlab-core-pagination
26+
page="{$pageNo}"
27+
count="{$pages}"
28+
url="{link controller='DeletedContentList' objectType=$objectType}{/link}"
29+
></woltlab-core-pagination>
30+
{/if}
2531
{/capture}
2632

2733
{include file='header'}
@@ -33,11 +39,15 @@
3339
{/if}
3440

3541
<footer class="contentFooter">
36-
{hascontent}
42+
{if $pages > 1}
3743
<div class="paginationBottom">
38-
{content}{@$pagesLinks}{/content}
44+
<woltlab-core-pagination
45+
page="{$pageNo}"
46+
count="{$pages}"
47+
url="{link controller='DeletedContentList' objectType=$objectType}{/link}"
48+
></woltlab-core-pagination>
3949
</div>
40-
{/hascontent}
50+
{/if}
4151

4252
{hascontent}
4353
<nav class="contentFooterNavigation">

com.woltlab.wcf/templates/editHistory.tpl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,9 @@
6262
{/if}
6363
<td{if $line[0] === '+'} class="diffAdded"{elseif $line[0] === '-'} class="diffRemoved"{/if}{if $colspan} colspan="2"{assign var='colspan' value=false}{/if}>
6464
{/if}
65-
{if $line[0] === ' '}{@$line[1]}<br>{/if}
66-
{if $line[0] === '-'}{@$line[1]}<br>{/if}
67-
{if $line[0] === '+'}{@$line[1]}<br>{/if}
65+
{if $line[0] === ' '}{unsafe:$line[1]}<br>{/if}
66+
{if $line[0] === '-'}{unsafe:$line[1]}<br>{/if}
67+
{if $line[0] === '+'}{unsafe:$line[1]}<br>{/if}
6868
{assign var='prevType' value=$line[0]}
6969
{/foreach}
7070
</tbody>
@@ -110,7 +110,7 @@
110110
{foreach from=$objects item=edit name=edit}
111111
<tr class="jsEditRow">
112112
<td class="columnIcon">
113-
<button type="button" class="jsRevertButton jsTooltip" title="{lang}wcf.edit.revert{/lang}" data-object-id="{@$edit->entryID}" data-confirm-message="{lang __encode=true}wcf.edit.revert.confirmMessage{/lang}">
113+
<button type="button" class="jsRevertButton jsTooltip" title="{lang}wcf.edit.revert{/lang}" data-object-id="{$edit->entryID}" data-confirm-message="{lang __encode=true}wcf.edit.revert.confirmMessage{/lang}">
114114
{icon name='rotate-left'}
115115
</button>
116116
<input type="radio" name="oldID" value="{$edit->entryID}"{if $oldID == $edit->entryID} checked{/if}> <input type="radio" name="newID" value="{$edit->entryID}"{if $newID == $edit->entryID} checked{/if}>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{include file='authFlowHeader'}
22

3-
{@$form->getHtml()}
3+
{unsafe:$form->getHtml()}
44

55
{include file='authFlowFooter'}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{include file='authFlowHeader'}
22

3-
{@$form->getHtml()}
3+
{unsafe:$form->getHtml()}
44

55
{include file='authFlowFooter'}

0 commit comments

Comments
 (0)