Skip to content

Commit 65b620c

Browse files
authored
Merge pull request #6352 from WoltLab/6.2-devtools-template-unsafe
Refactor devtools templates
2 parents 2922c8d + be1eab0 commit 65b620c

15 files changed

Lines changed: 81 additions & 69 deletions

com.woltlab.wcf/templates/__devtoolsLanguageChooser.tpl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88
99
var languages = {
1010
{implode from=$__wcf->getLanguage()->getLanguages() item=_language}
11-
'{@$_language->languageID}': {
12-
iconPath: '{@$_language->getIconPath()|encodeJS}',
13-
languageName: '{@$_language|encodeJS}',
14-
languageCode: '{@$_language->languageCode|encodeJS}'
11+
'{$_language->languageID}': {
12+
iconPath: '{unsafe:$_language->getIconPath()|encodeJS}',
13+
languageName: '{unsafe:$_language|encodeJS}',
14+
languageCode: '{unsafe:$_language->languageCode|encodeJS}'
1515
}
1616
{/implode}
1717
};
@@ -51,7 +51,7 @@
5151
});
5252
};
5353
54-
LanguageChooser.init('pageLanguageContainer', 'pageLanguageID', {@$__wcf->getLanguage()->languageID}, languages, callback);
54+
LanguageChooser.init('pageLanguageContainer', 'pageLanguageID', {$__wcf->getLanguage()->languageID}, languages, callback);
5555
});
5656
</script>
5757
{/if}

wcfsetup/install/files/acp/templates/__devtoolsLanguageChooser.tpl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88
99
var languages = {
1010
{implode from=$__wcf->getLanguage()->getLanguages() item=_language}
11-
'{@$_language->languageID}': {
12-
iconPath: '{@$_language->getIconPath()|encodeJS}',
13-
languageName: '{@$_language|encodeJS}',
14-
languageCode: '{@$_language->languageCode|encodeJS}'
11+
'{$_language->languageID}': {
12+
iconPath: '{unsafe:$_language->getIconPath()|encodeJS}',
13+
languageName: '{unsafe:$_language|encodeJS}',
14+
languageCode: '{unsafe:$_language->languageCode|encodeJS}'
1515
}
1616
{/implode}
1717
};
@@ -31,7 +31,7 @@
3131
});
3232
};
3333
34-
LanguageChooser.init('pageLanguageContainer', 'pageLanguageID', {@$__wcf->getLanguage()->languageID}, languages, callback);
34+
LanguageChooser.init('pageLanguageContainer', 'pageLanguageID', {$__wcf->getLanguage()->languageID}, languages, callback);
3535
});
3636
</script>
3737
{/if}

wcfsetup/install/files/acp/templates/__devtoolsProjectExcludedPackagesFormField.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
'wcf.acp.devtools.project.excludedPackage.excludedPackage': '{jslang __literal=true}wcf.acp.devtools.project.excludedPackage.excludedPackage{/jslang}'
3838
});
3939
40-
new ExcludedPackagesFormField('{@$field->getPrefixedId()|encodeJS}', [
40+
new ExcludedPackagesFormField('{unsafe:$field->getPrefixedId()|encodeJS}', [
4141
{implode from=$field->getValue() item=excludedPackage}
4242
{
4343
packageIdentifier: '{$excludedPackage[packageIdentifier]}',

wcfsetup/install/files/acp/templates/__devtoolsProjectInstallationJavaScript.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
'wcf.acp.package.install.title': '{jslang}wcf.acp.package.install.title{/jslang}'
77
});
88
9-
DevtoolsProjectInstallationConfirmation.init({@$project->projectID}, '{@$project->name|encodeJS}');
9+
DevtoolsProjectInstallationConfirmation.init({$project->projectID}, '{unsafe:$project->name|encodeJS}');
1010
});
1111
</script>
1212
{/if}

wcfsetup/install/files/acp/templates/__devtoolsProjectInstructionsFormField.tpl

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*}{foreach from=$field->getAttributes() key='attributeName' item='attributeValue'} {$attributeName}="{$attributeValue}"{/foreach}{*
44
*}{if !$field->checkDependencies()} style="display: none;"{/if}{*
55
*}>
6-
<dt>{if $field->getLabel() !== null}<label for="{$field->getPrefixedId()}">{@$field->getLabel()}</label>{/if}</dt>
6+
<dt>{if $field->getLabel() !== null}<label for="{$field->getPrefixedId()}">{unsafe:$field->getLabel()}</label>{/if}</dt>
77
<dd>
88
<div class="row rowColGap formGrid">
99
<dl class="col-xs-12 col-md-10">
@@ -62,7 +62,7 @@
6262
<select id="{$field->getPrefixedId()}_instructions{literal}{$instructionsId}{/literal}_pip">
6363
<option value="" selected disabled>{lang}wcf.acp.devtools.project.instruction.packageInstallationPlugin{/lang}</option>
6464
{foreach from=$packageInstallationPlugins item=packageInstallationPlugin}
65-
<option value="{$packageInstallationPlugin->pluginName}">{@$packageInstallationPlugin->pluginName}</option>
65+
<option value="{$packageInstallationPlugin->pluginName}">{$packageInstallationPlugin->pluginName}</option>
6666
{/foreach}
6767
</select>
6868
</dd>
@@ -82,7 +82,7 @@
8282
<select id="{$field->getPrefixedId()}_instructions{literal}{$instructionsId}{/literal}_application">
8383
<option value="" selected disabled>{lang}wcf.acp.devtools.project.instruction.application{/lang}</option>
8484
{foreach from=$apps item=app}
85-
<option value="{$app->getAbbreviation()}">{@$app->getAbbreviation()}</option>
85+
<option value="{$app->getAbbreviation()}">{$app->getAbbreviation()}</option>
8686
{/foreach}
8787
</select>
8888
</dd>
@@ -129,7 +129,7 @@
129129
<select name="pip">
130130
<option value="" selected>{lang}wcf.global.noSelection{/lang}</option>
131131
{foreach from=$packageInstallationPlugins item=packageInstallationPlugin}
132-
<option value="{$packageInstallationPlugin->pluginName}">{@$packageInstallationPlugin->pluginName}</option>
132+
<option value="{$packageInstallationPlugin->pluginName}">{$packageInstallationPlugin->pluginName}</option>
133133
{/foreach}
134134
</select>
135135
</dd>
@@ -149,7 +149,7 @@
149149
<select name="application">
150150
<option value="" selected>{lang}wcf.global.noSelection{/lang}</option>
151151
{foreach from=$apps item=app}
152-
<option value="{$app->getAbbreviation()}">{@$app->getAbbreviation()}</option>
152+
<option value="{$app->getAbbreviation()}">{$app->getAbbreviation()}</option>
153153
{/foreach}
154154
</select>
155155
</dd>
@@ -201,12 +201,12 @@
201201
'wcf.global.form.error.noValidSelection': '{jslang}wcf.global.form.error.noValidSelection{/jslang}'
202202
});
203203
204-
var instructionsTemplate = new Template('{@$instructionsTemplate|encodeJS}');
205-
var instructionsEditDialogTemplate = new Template('{@$instructionsEditDialogContent|encodeJS}');
206-
var instructionEditDialogTemplate = new Template('{@$instructionEditDialogContent|encodeJS}');
204+
var instructionsTemplate = new Template('{unsafe:$instructionsTemplate|encodeJS}');
205+
var instructionsEditDialogTemplate = new Template('{unsafe:$instructionsEditDialogContent|encodeJS}');
206+
var instructionEditDialogTemplate = new Template('{unsafe:$instructionEditDialogContent|encodeJS}');
207207
208208
new InstructionsFormField(
209-
'{@$field->getPrefixedId()|encodeJS}',
209+
'{unsafe:$field->getPrefixedId()|encodeJS}',
210210
instructionsTemplate,
211211
instructionsEditDialogTemplate,
212212
instructionEditDialogTemplate,
@@ -223,7 +223,7 @@
223223
{foreach from=$field->getValidationErrors() item=validationError}
224224
{if $validationError->getInformation()[instructions]|isset && $validationError->getInformation()[instructions] === $instructionsKey && !$validationError->getInformation()[instruction]|isset}
225225
{if $__instructionsHasError},{/if}
226-
'{@$validationError->getMessage()|encodeJS}'
226+
'{unsafe:$validationError->getMessage()|encodeJS}'
227227
228228
{assign var='__instructionsHasError' value=true}
229229
{/if}
@@ -242,7 +242,7 @@
242242
{foreach from=$field->getValidationErrors() item=validationError}
243243
{if $validationError->getInformation()[instructions]|isset && $validationError->getInformation()[instructions] === $instructionsKey && $validationError->getInformation()[instruction]|isset && $validationError->getInformation()[instruction] === $instructionKey}
244244
{if $__instructionHasError},{/if}
245-
'{@$validationError->getMessage()|encodeJS}'
245+
'{unsafe:$validationError->getMessage()|encodeJS}'
246246
247247
{assign var='__instructionHasError' value=true}
248248
{/if}
@@ -255,7 +255,7 @@
255255
{/implode}
256256
{/if}
257257
],
258-
type: '{@$instructions[type]}'
258+
type: '{unsafe:$instructions[type]|encodeJS}'
259259
}
260260
{/implode}
261261
]

wcfsetup/install/files/acp/templates/__devtoolsProjectOptionalPackagesFormField.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
'wcf.acp.devtools.project.optionalPackage.optionalPackage': '{jslang __literal=true}wcf.acp.devtools.project.optionalPackage.optionalPackage{/jslang}'
3232
});
3333
34-
new OptionalPackagesFormField('{@$field->getPrefixedId()|encodeJS}', [
34+
new OptionalPackagesFormField('{unsafe:$field->getPrefixedId()|encodeJS}', [
3535
{implode from=$field->getValue() item=optionalPackage}
3636
{
3737
packageIdentifier: '{$optionalPackage[packageIdentifier]}'

wcfsetup/install/files/acp/templates/__devtoolsProjectRequiredPackagesFormField.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
'wcf.acp.devtools.project.requiredPackage.requiredPackage': '{jslang __literal=true}wcf.acp.devtools.project.requiredPackage.requiredPackage{/jslang}'
4444
});
4545
46-
new RequiredPackagesFormField('{@$field->getPrefixedId()|encodeJS}', [
46+
new RequiredPackagesFormField('{unsafe:$field->getPrefixedId()|encodeJS}', [
4747
{implode from=$field->getValue() item=requiredPackage}
4848
{
4949
file: {if $requiredPackage[file]}true{else}false{/if},

wcfsetup/install/files/acp/templates/devtoolsMissingLanguageItemList.tpl

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -21,38 +21,40 @@
2121
{/hascontent}
2222
</header>
2323

24-
{hascontent}
24+
{if $pages > 1}
2525
<div class="paginationTop">
26-
{content}
27-
{pages print=true assign=pagesLinks controller='DevtoolsMissingLanguageItemList' link="pageNo=%d&sortField=$sortField&sortOrder=$sortOrder"}
28-
{/content}
26+
<woltlab-core-pagination
27+
page="{$pageNo}"
28+
count="{$pages}"
29+
url="{link controller='DevtoolsMissingLanguageItemList' sortField=$sortField sortOrder=$sortOrder}{/link}">
30+
</woltlab-core-pagination>
2931
</div>
30-
{/hascontent}
32+
{/if}
3133

3234
{if $items}
3335
<div id="missingLanguageItemTable" class="section tabularBox">
3436
<table class="table jsObjectActionContainer" data-object-action-class-name="wcf\data\devtools\missing\language\item\DevtoolsMissingLanguageItemAction">
3537
<thead>
3638
<tr>
37-
<th class="columnID{if $sortField === 'itemID'} active {@$sortOrder}{/if}" colspan="2"><a href="{link controller='DevtoolsMissingLanguageItemList'}sortField=itemID&sortOrder={if $sortField === 'itemID' && $sortOrder === 'ASC'}DESC{else}ASC{/if}{/link}">{lang}wcf.global.objectID{/lang}</a></th>
38-
<th class="columnText{if $sortField === 'languageID'} active {@$sortOrder}{/if}"><a href="{link controller='DevtoolsMissingLanguageItemList'}sortField=languageID&sortOrder={if $sortField === 'languageID' && $sortOrder === 'ASC'}DESC{else}ASC{/if}{/link}">{lang}wcf.acp.devtools.missingLanguageItem.languageID{/lang}</a></th>
39-
<th class="columnText{if $sortField === 'languageItem'} active {@$sortOrder}{/if}"><a href="{link controller='DevtoolsMissingLanguageItemList'}sortField=languageItem&sortOrder={if $sortField === 'languageItem' && $sortOrder === 'ASC'}DESC{else}ASC{/if}{/link}">{lang}wcf.acp.devtools.missingLanguageItem.languageItem{/lang}</a></th>
40-
<th class="columnText{if $sortField === 'lastTime'} active {@$sortOrder}{/if}"><a href="{link controller='DevtoolsMissingLanguageItemList'}sortField=lastTime&sortOrder={if $sortField === 'lastTime' && $sortOrder === 'ASC'}DESC{else}ASC{/if}{/link}">{lang}wcf.acp.devtools.missingLanguageItem.lastTime{/lang}</a></th>
39+
<th class="columnID{if $sortField === 'itemID'} active {$sortOrder}{/if}" colspan="2"><a href="{link controller='DevtoolsMissingLanguageItemList'}sortField=itemID&sortOrder={if $sortField === 'itemID' && $sortOrder === 'ASC'}DESC{else}ASC{/if}{/link}">{lang}wcf.global.objectID{/lang}</a></th>
40+
<th class="columnText{if $sortField === 'languageID'} active {$sortOrder}{/if}"><a href="{link controller='DevtoolsMissingLanguageItemList'}sortField=languageID&sortOrder={if $sortField === 'languageID' && $sortOrder === 'ASC'}DESC{else}ASC{/if}{/link}">{lang}wcf.acp.devtools.missingLanguageItem.languageID{/lang}</a></th>
41+
<th class="columnText{if $sortField === 'languageItem'} active {$sortOrder}{/if}"><a href="{link controller='DevtoolsMissingLanguageItemList'}sortField=languageItem&sortOrder={if $sortField === 'languageItem' && $sortOrder === 'ASC'}DESC{else}ASC{/if}{/link}">{lang}wcf.acp.devtools.missingLanguageItem.languageItem{/lang}</a></th>
42+
<th class="columnText{if $sortField === 'lastTime'} active {$sortOrder}{/if}"><a href="{link controller='DevtoolsMissingLanguageItemList'}sortField=lastTime&sortOrder={if $sortField === 'lastTime' && $sortOrder === 'ASC'}DESC{else}ASC{/if}{/link}">{lang}wcf.acp.devtools.missingLanguageItem.lastTime{/lang}</a></th>
4143

4244
{event name='columnHeads'}
4345
</tr>
4446
</thead>
4547

4648
<tbody class="jsReloadPageWhenEmpty">
4749
{foreach from=$objects item=logEntry}
48-
<tr class="jsObjectRow jsObjectActionObject" data-object-id="{@$logEntry->getObjectID()}">
50+
<tr class="jsObjectRow jsObjectActionObject" data-object-id="{$logEntry->getObjectID()}">
4951
<td class="columnIcon">
5052
{objectAction action="delete" confirmMessage='wcf.acp.devtools.missingLanguageItem.delete.confirmMessage'}
5153
<button type="button" class="jsStackTraceButton jsTooltip" title="{lang}wcf.acp.devtools.missingLanguageItem.showStackTrace{/lang}" data-stack-trace="{$logEntry->getStackTrace()}">
5254
{icon name='align-justify'}
5355
</button>
5456
</td>
55-
<td class="columnID">{@$logEntry->getObjectID()}</td>
57+
<td class="columnID">{$logEntry->getObjectID()}</td>
5658
<td class="columnText">{if $logEntry->getLanguage()}{$logEntry->getLanguage()}{else}{$logEntry->languageID}{/if}</td>
5759
<td class="columnText">{$logEntry->languageItem}</td>
5860
<td class="columnDate">{@$logEntry->lastTime|time}</td>
@@ -63,11 +65,15 @@
6365
</div>
6466

6567
<footer class="contentFooter">
66-
{hascontent}
68+
{if $pages > 1}
6769
<div class="paginationBottom">
68-
{content}{@$pagesLinks}{/content}
70+
<woltlab-core-pagination
71+
page="{$pageNo}"
72+
count="{$pages}"
73+
url="{link controller='DevtoolsMissingLanguageItemList' sortField=$sortField sortOrder=$sortOrder}{/link}">
74+
</woltlab-core-pagination>
6975
</div>
70-
{/hascontent}
76+
{/if}
7177

7278
{hascontent}
7379
<nav class="contentFooterNavigation">

wcfsetup/install/files/acp/templates/devtoolsNotificationTestDialog.tpl

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
{if $event[title]|isset}
1111
<dl>
1212
<dt>{lang}wcf.global.title{/lang}</dt>
13-
<dd>{@$event[title]}</dd>
13+
<dd>{unsafe:$event[title]}</dd>
1414
</dl>
1515
{else}
1616
<dl>
@@ -22,7 +22,7 @@
2222
{if $event[message]|isset}
2323
<dl>
2424
<dt>{lang}wcf.acp.devtools.notificationTest.message{/lang}</dt>
25-
<dd>{@$event[message]}</dd>
25+
<dd>{unsafe:$event[message]}</dd>
2626
</dl>
2727
{else}
2828
<dl>
@@ -34,7 +34,7 @@
3434
{if $event[link]|isset}
3535
<dl>
3636
<dt>{lang}wcf.acp.devtools.notificationTest.link{/lang}</dt>
37-
<dd><a href="{@$event[link]}">{@$event[link]}</a></dd>
37+
<dd><a href="{$event[link]}">{$event[link]}</a></dd>
3838
</dl>
3939
{else}
4040
<dl>
@@ -78,7 +78,7 @@
7878
<dl>
7979
{foreach from=$events item=event}
8080
<dt>{$event[description]}</dt>
81-
<dd>{if $event[title]|isset}{@$event[title]}{else}<pre>{$event[titleException]}</pre>{/if}</dd>
81+
<dd>{if $event[title]|isset}{unsafe:$event[title]}{else}<pre>{$event[titleException]}</pre>{/if}</dd>
8282
{/foreach}
8383
</dl>
8484
</section>
@@ -89,7 +89,7 @@
8989
<dl>
9090
{foreach from=$events item=event}
9191
<dt>{$event[description]}</dt>
92-
<dd>{if $event[message]|isset}{@$event[message]}{else}<pre>{$event[messageException]}</pre>{/if}</dd>
92+
<dd>{if $event[message]|isset}{unsafe:$event[message]}{else}<pre>{$event[messageException]}</pre>{/if}</dd>
9393
{/foreach}
9494
</dl>
9595
</section>
@@ -100,7 +100,7 @@
100100
<dl>
101101
{foreach from=$events item=event}
102102
<dt>{$event[description]}</dt>
103-
<dd>{if $event[link]|isset}<a href="{@$event[link]}">{@$event[link]}</a>{else}<pre>{$event[linkException]}</pre>{/if}</dd>
103+
<dd>{if $event[link]|isset}<a href="{$event[link]}">{$event[link]}</a>{else}<pre>{$event[linkException]}</pre>{/if}</dd>
104104
{/foreach}
105105
</dl>
106106
</section>

wcfsetup/install/files/acp/templates/devtoolsProjectAdd.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,6 @@
3232
{/if}
3333
{/if}
3434

35-
{@$form->getHtml()}
35+
{unsafe:$form->getHtml()}
3636

3737
{include file='footer'}

0 commit comments

Comments
 (0)