Improved confirmation messages
authorMarcel Werk <burntime@woltlab.com>
Thu, 26 May 2016 10:19:12 +0000 (12:19 +0200)
committerMarcel Werk <burntime@woltlab.com>
Thu, 26 May 2016 10:19:12 +0000 (12:19 +0200)
34 files changed:
com.woltlab.wcf/templates/editHistory.tpl
wcfsetup/install/files/acp/js/WCF.ACP.Style.js
wcfsetup/install/files/acp/js/WCF.ACP.js
wcfsetup/install/files/acp/templates/adList.tpl
wcfsetup/install/files/acp/templates/bbcodeList.tpl
wcfsetup/install/files/acp/templates/bbcodeMediaProviderList.tpl
wcfsetup/install/files/acp/templates/captchaQuestionList.tpl
wcfsetup/install/files/acp/templates/cronjobList.tpl
wcfsetup/install/files/acp/templates/labelGroupList.tpl
wcfsetup/install/files/acp/templates/labelList.tpl
wcfsetup/install/files/acp/templates/languageList.tpl
wcfsetup/install/files/acp/templates/noticeList.tpl
wcfsetup/install/files/acp/templates/package.tpl
wcfsetup/install/files/acp/templates/packageList.tpl
wcfsetup/install/files/acp/templates/packageSearchResultList.tpl
wcfsetup/install/files/acp/templates/packageUpdateServerList.tpl
wcfsetup/install/files/acp/templates/paidSubscriptionList.tpl
wcfsetup/install/files/acp/templates/paidSubscriptionUserList.tpl
wcfsetup/install/files/acp/templates/pluginStorePurchasedItems.tpl
wcfsetup/install/files/acp/templates/smileyList.tpl
wcfsetup/install/files/acp/templates/tagList.tpl
wcfsetup/install/files/acp/templates/templateGroupList.tpl
wcfsetup/install/files/acp/templates/templateList.tpl
wcfsetup/install/files/acp/templates/userGroupAssignmentList.tpl
wcfsetup/install/files/acp/templates/userGroupList.tpl
wcfsetup/install/files/acp/templates/userList.tpl
wcfsetup/install/files/acp/templates/userOptionList.tpl
wcfsetup/install/files/acp/templates/userRankList.tpl
wcfsetup/install/files/js/WCF.Message.js
wcfsetup/install/files/js/WCF.js
wcfsetup/install/files/js/WoltLab/WCF/Ui/Confirmation.js
wcfsetup/install/files/lib/system/template/plugin/LangCompilerTemplatePlugin.class.php
wcfsetup/install/lang/de.xml
wcfsetup/install/lang/en.xml

index 0e91d9f84ff3509c558ebc1677d2f25d30012221..8cc69171d7d71ca62f87f80489b77c62f03596e2 100644 (file)
@@ -89,7 +89,7 @@
                                {foreach from=$objects item=edit name=edit}
                                        <tr class="jsEditRow">
                                                <td class="columnIcon">
-                                                       <span class="icon icon16 fa-undo pointer jsRevertButton jsTooltip" title="{lang}wcf.edit.revert{/lang}" data-object-id="{@$edit->entryID}" data-confirm-message="{lang}wcf.edit.revert.sure{/lang}"></span>
+                                                       <span class="icon icon16 fa-undo pointer jsRevertButton jsTooltip" title="{lang}wcf.edit.revert{/lang}" data-object-id="{@$edit->entryID}" data-confirm-message="{lang __encode=true}wcf.edit.revert.sure{/lang}"></span>
                                                        <input type="radio" name="oldID" value="{@$edit->entryID}"{if $oldID == $edit->entryID} checked="checked"{/if} /> <input type="radio" name="newID" value="{@$edit->entryID}"{if $newID == $edit->entryID} checked="checked"{/if} />
                                                        {event name='rowButtons'}
                                                </td>
index 3f257b52000bdb414521be144c3094dd54cf3212..3db4ca2a0ea1ba046fa97ac810fc6cfe56ea0966 100644 (file)
@@ -29,7 +29,7 @@ WCF.ACP.Style.CopyStyle = Class.extend({
                
                var self = this;
                $('.jsCopyStyle').click(function() {
-                       WCF.System.Confirmation.show(WCF.Language.get('wcf.acp.style.copyStyle.confirmMessage'), $.proxy(self._copy, self));
+                       WCF.System.Confirmation.show(WCF.Language.get('wcf.acp.style.copyStyle.confirmMessage'), $.proxy(self._copy, self), undefined, undefined, true);
                });
        },
        
@@ -363,7 +363,7 @@ WCF.ACP.Style.List = Class.extend({
                                if (action === 'confirm') {
                                        self._click('delete', styleID);
                                }
-                       });
+                       }, undefined, undefined, true);
                }
                else {
                        // invoke action directly
index 87c1fb11633ff5b84a35c9166890376fd1f3bbc2..baf9f337432e6dcf8b3e8b2c4140099d0c5d4f1f 100644 (file)
@@ -751,7 +751,7 @@ WCF.ACP.Package.Uninstallation = WCF.ACP.Package.Installation.extend({
                                self._packageID = $element.data('objectID');
                                self.prepareInstallation();
                        }
-               });
+               }, undefined, undefined, true);
        },
        
        /**
@@ -1070,7 +1070,7 @@ WCF.ACP.Package.Search = Class.extend({
                                this._selectedPackageVersion = $button.data('packageVersion');
                                this._prepareInstallation();
                        }
-               }, this));
+               }, this), undefined, undefined, true);
        },
        
        /**
@@ -1193,7 +1193,7 @@ WCF.ACP.Package.Server.Installation = Class.extend({
                                this._selectedPackageVersion = $button.data('packageVersion');
                                this._prepareInstallation();
                        }
-               }, this));
+               }, this), undefined, undefined, true);
        },
        
        /**
@@ -2173,7 +2173,7 @@ WCF.ACP.User.Group.Copy = Class.extend({
                                        }
                                });
                        }
-               }, this), '', $template);
+               }, this), '', $template, true);
        }
 });
 
index e79ba6c112c33ea66e3eec1dcc5806a187be29a2..5222edc766f2f63e56f5e14db7bb9f0b7c1d6f55 100644 (file)
@@ -39,7 +39,7 @@
                                                <span class="statusDisplay sortableButtonContainer">
                                                        <span class="icon icon16 fa-{if !$ad->isDisabled}check-{/if}square-o jsToggleButton jsTooltip pointer" title="{lang}wcf.global.button.{if $ad->isDisabled}enable{else}disable{/if}{/lang}" data-object-id="{@$ad->adID}"></span>
                                                        <a href="{link controller='AdEdit' object=$ad}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$ad->adID}" data-confirm-message="{lang}wcf.acp.ad.delete.confirmMessage{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$ad->adID}" data-confirm-message-html="{lang __encode=true}wcf.acp.ad.delete.confirmMessage{/lang}"></span>
                                                        
                                                        {event name='itemButtons'}
                                                </span>
index 24d39b6aaa5b3cb174ab899c54c2c9a9312be5ab..b47145f7f4a2d1a7ccc1c19922d6f6f03539556c 100644 (file)
@@ -49,7 +49,7 @@
                                                        <span class="icon icon16 fa-{if !$bbcode->isDisabled}check-{/if}square-o jsToggleButton jsTooltip pointer" title="{lang}wcf.global.button.{if $bbcode->isDisabled}enable{else}disable{/if}{/lang}" data-object-id="{@$bbcode->bbcodeID}"></span>
                                                        <a href="{link controller='BBCodeEdit' object=$bbcode}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
                                                        {if $bbcode->canDelete()}
-                                                               <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$bbcode->bbcodeID}" data-confirm-message="{lang}wcf.acp.bbcode.delete.sure{/lang}"></span>
+                                                               <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$bbcode->bbcodeID}" data-confirm-message-html="{lang __encode=true}wcf.acp.bbcode.delete.sure{/lang}"></span>
                                                        {else}
                                                                <span class="icon icon16 fa-times disabled"></span>
                                                        {/if}
index c45f66d13b486879fc9def866485fef8b7e4e1fc..63521432b6dbf34b1420edb40bb0fa266642c1c1 100644 (file)
@@ -45,7 +45,7 @@
                                        <tr class="jsMediaProviderRow">
                                                <td class="columnIcon">
                                                        <a href="{link controller='BBCodeMediaProviderEdit' object=$mediaProvider}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$mediaProvider->providerID}" data-confirm-message="{lang}wcf.acp.bbcode.mediaProvider.delete.sure{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$mediaProvider->providerID}" data-confirm-message-html="{lang __encode=true}wcf.acp.bbcode.mediaProvider.delete.sure{/lang}"></span>
                                                        
                                                        {event name='rowButtons'}
                                                </td>
index 13ac8ceca905d7dc4fb1eaed9c3943f20c968172..5c82095a2cd3006e1b053c88ca8cb0f66c0164ca 100644 (file)
@@ -60,7 +60,7 @@
                                                        <td class="columnIcon">
                                                                <span class="icon icon16 fa-{if !$question->isDisabled}-check{/if}-square-o jsToggleButton jsTooltip pointer" title="{lang}wcf.global.button.{if $question->isDisabled}enable{else}disable{/if}{/lang}" data-object-id="{@$question->questionID}"></span>
                                                                <a href="{link controller='CaptchaQuestionEdit' id=$question->questionID}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                               <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$question->questionID}" data-confirm-message="{lang}wcf.acp.captcha.question.delete.confirmMessage{/lang}"></span>
+                                                               <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$question->questionID}" data-confirm-message-html="{lang __encode=true}wcf.acp.captcha.question.delete.confirmMessage{/lang}"></span>
                                                                
                                                                {event name='rowButtons'}
                                                        </td>
index 7e0f49d7e0e038b361add20dd0ddaf96ecbe8267..0b1d1b6a7f213bba01c96abc242cb89d34262bc9 100644 (file)
@@ -73,7 +73,7 @@
                                                                        <span class="icon icon16 fa-pencil disabled" title="{lang}wcf.global.button.edit{/lang}"></span>
                                                                {/if}
                                                                {if $cronjob->isDeletable()}
-                                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$cronjob->cronjobID}" data-confirm-message="{lang}wcf.acp.cronjob.delete.sure{/lang}"></span>
+                                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$cronjob->cronjobID}" data-confirm-message-html="{lang __encode}wcf.acp.cronjob.delete.sure{/lang}"></span>
                                                                {else}
                                                                        <span class="icon icon16 fa-times disabled" title="{lang}wcf.global.button.delete{/lang}"></span>
                                                                {/if}
index d333322f98cf9609eac899541e1250e7491717df..f02c5260d9ab8077556d978e624982235d79cd80 100644 (file)
@@ -59,7 +59,7 @@
                                        <tr class="jsLabelGroupRow">
                                                <td class="columnIcon">
                                                        <a href="{link controller='LabelGroupEdit' object=$group}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$group->groupID}" data-confirm-message="{lang}wcf.acp.label.group.delete.sure{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$group->groupID}" data-confirm-message-html="{lang __encode=true}wcf.acp.label.group.delete.sure{/lang}"></span>
                                                        
                                                        {event name='rowButtons'}
                                                </td>
index eeed594a47acf5a20b6a6bd428e48ff4f6355944..83e74622b15eb5dfd076ed6e36d17fb5c8f3739c 100644 (file)
                                        <tr class="jsLabelRow{if $labelGroup && !$labelSearch && !$cssClassName && $items > 1} sortableNode" data-object-id="{@$label->labelID}{/if}">
                                                <td class="columnIcon">
                                                        <a href="{link controller='LabelEdit' object=$label}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$label->labelID}" data-confirm-message="{lang}wcf.acp.label.delete.sure{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$label->labelID}" data-confirm-message-html="{lang __encode=true}wcf.acp.label.delete.sure{/lang}"></span>
                                                        
                                                        {event name='rowButtons'}
                                                </td>
index caba7032941cdfce1a26b51a69a0e6d6b6499843..64da9fa9fc0ea12ec4114a4797e8eef3414322d9 100644 (file)
@@ -71,7 +71,7 @@
                                                        <a href="{link controller='LanguageEdit' id=$language->languageID}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
                                                        
                                                        {if !$language->isDefault}
-                                                               <span class="icon icon16 fa-times jsTooltip jsDeleteButton pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$language->languageID}" data-confirm-message="{lang}wcf.acp.language.delete.sure{/lang}"></span>
+                                                               <span class="icon icon16 fa-times jsTooltip jsDeleteButton pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$language->languageID}" data-confirm-message-html="{lang __encode=true}wcf.acp.language.delete.sure{/lang}"></span>
                                                        {else}
                                                                <span class="icon icon16 fa-times disabled" title="{lang}wcf.global.button.delete{/lang}"></span>
                                                        {/if}
index 26a6eab33a82381627e7e00c5870a5a610ca1d34..a3833b44777a578f40fee937d8b7b481c322e3fa 100644 (file)
@@ -41,7 +41,7 @@
                                                <span class="statusDisplay sortableButtonContainer">
                                                        <span class="icon icon16 fa-{if $notice->isDisabled}check-{/if}square-o jsToggleButton jsTooltip pointer" title="{lang}wcf.global.button.{if $notice->isDisabled}enable{else}disable{/if}{/lang}" data-object-id="{@$notice->noticeID}"></span>
                                                        <a href="{link controller='NoticeEdit' object=$notice}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$notice->noticeID}" data-confirm-message="{lang}wcf.acp.notice.delete.confirmMessage{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$notice->noticeID}" data-confirm-message-html="{lang __encode=true}wcf.acp.notice.delete.confirmMessage{/lang}"></span>
                                                        
                                                        {event name='itemButtons'}
                                                </span>
index 9e1848c66ca7d665b77be9082835d95da2664b47..e91c3437b2f5b0d5d0554f541f2aca69778f8181 100644 (file)
                                                                        <tr class="jsPackageRow">
                                                                                <td class="columnIcon">
                                                                                        {if $requiredPackage->canUninstall()}
-                                                                                               <span class="icon icon16 fa-times pointer jsTooltip jsUninstallButton" title="{lang}wcf.acp.package.button.uninstall{/lang}" data-object-id="{@$requiredPackage->packageID}" data-confirm-message="{lang package=$requiredPackage}wcf.acp.package.uninstallation.confirm{/lang}" data-is-required="{if $requiredPackage->isRequired()}true{else}false{/if}" data-is-application="{if $requiredPackage->isApplication}true{else}false{/if}"></span>
+                                                                                               <span class="icon icon16 fa-times pointer jsTooltip jsUninstallButton" title="{lang}wcf.acp.package.button.uninstall{/lang}" data-object-id="{@$requiredPackage->packageID}" data-confirm-message="{lang __encode=true package=$requiredPackage}wcf.acp.package.uninstallation.confirm{/lang}" data-is-required="{if $requiredPackage->isRequired()}true{else}false{/if}" data-is-application="{if $requiredPackage->isApplication}true{else}false{/if}"></span>
                                                                                        {else}
                                                                                                <span class="icon icon16 fa-times disabled" title="{lang}wcf.acp.package.button.uninstall{/lang}"></span>
                                                                                        {/if}
                                                                        <tr class="jsPackageRow">
                                                                                <td class="columnIcon">
                                                                                        {if $dependentPackage->canUninstall()}
-                                                                                               <span class="icon icon16 fa-times pointer jsTooltip jsUninstallButton" title="{lang}wcf.acp.package.button.uninstall{/lang}" data-object-id="{@$dependentPackage->packageID}" data-confirm-message="{lang package=$dependentPackage}wcf.acp.package.uninstallation.confirm{/lang}" data-is-required="{if $dependentPackage->isRequired()}true{else}false{/if}" data-is-application="{if $dependentPackage->isApplication}true{else}false{/if}"></span>
+                                                                                               <span class="icon icon16 fa-times pointer jsTooltip jsUninstallButton" title="{lang}wcf.acp.package.button.uninstall{/lang}" data-object-id="{@$dependentPackage->packageID}" data-confirm-message="{lang __encode=true package=$dependentPackage}wcf.acp.package.uninstallation.confirm{/lang}" data-is-required="{if $dependentPackage->isRequired()}true{else}false{/if}" data-is-application="{if $dependentPackage->isApplication}true{else}false{/if}"></span>
                                                                                        {else}
                                                                                                <span class="icon icon16 fa-times disabled" title="{lang}wcf.acp.package.button.uninstall{/lang}"></span>
                                                                                        {/if}
index 564a84f9e11f4f45f430d8b44e94162175bb73b7..11a5390776cea72a2c5bd1b3503d150d0e5b1116 100644 (file)
@@ -82,7 +82,7 @@
                                        <tr class="jsPackageRow">
                                                <td class="columnIcon">
                                                        {if $package->canUninstall()}
-                                                               <span class="icon icon16 fa-times pointer jsUninstallButton jsTooltip" title="{lang}wcf.acp.package.button.uninstall{/lang}" data-object-id="{@$package->packageID}" data-confirm-message="{lang}wcf.acp.package.uninstallation.confirm{/lang}" data-is-required="{if $package->isRequired()}true{else}false{/if}" data-is-application="{if $package->isApplication}true{else}false{/if}"></span>
+                                                               <span class="icon icon16 fa-times pointer jsUninstallButton jsTooltip" title="{lang}wcf.acp.package.button.uninstall{/lang}" data-object-id="{@$package->packageID}" data-confirm-message="{lang __encode=true}wcf.acp.package.uninstallation.confirm{/lang}" data-is-required="{if $package->isRequired()}true{else}false{/if}" data-is-application="{if $package->isApplication}true{else}false{/if}"></span>
                                                        {else}
                                                                <span class="icon icon16 fa-times disabled" title="{lang}wcf.acp.package.button.uninstall{/lang}"></span>
                                                        {/if}
index 0f4e59f1148f7837af35b247eb1e1d5526e2d236..c18ce24dc91369deccf6c2ec40bf1eefb6587c27 100644 (file)
@@ -18,7 +18,7 @@
                                        {foreach from=$packageUpdates item=$package}
                                                <tr class="jsPackageRow">
                                                        <td class="columnIcon">
-                                                               <a class="jsInstallPackage" data-confirm-message="{lang}wcf.acp.package.install.confirmMessage{/lang}" data-package="{$package->package}" data-package-version="{$package->getAccessibleVersion()->packageVersion}"><span class="icon icon16 fa-plus jsTooltip" title="{lang}wcf.acp.package.button.installPackage{/lang}"></span></a>
+                                                               <a class="jsInstallPackage" data-confirm-message="{lang __encode=true}wcf.acp.package.install.confirmMessage{/lang}" data-package="{$package->package}" data-package-version="{$package->getAccessibleVersion()->packageVersion}"><span class="icon icon16 fa-plus jsTooltip" title="{lang}wcf.acp.package.button.installPackage{/lang}"></span></a>
                                                                
                                                                {event name='buttons'}
                                                        </td>
index 5fae99af7324606f7993903bb086a8b368800aab..73a5ca4388c451bc0b06c38ab375103c61f981ca 100644 (file)
@@ -51,7 +51,7 @@
                                                <td class="columnIcon">
                                                        <span class="icon icon16 fa-{if !$updateServer->isDisabled}check-{/if}square-o jsToggleButton jsTooltip pointer" title="{lang}wcf.global.button.{if !$updateServer->isDisabled}disable{else}enable{/if}{/lang}" data-object-id="{@$updateServer->packageUpdateServerID}"></span>
                                                        <a href="{link controller='PackageUpdateServerEdit' id=$updateServer->packageUpdateServerID}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$updateServer->packageUpdateServerID}" data-confirm-message="{lang}wcf.acp.updateServer.delete.sure{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$updateServer->packageUpdateServerID}" data-confirm-message-html="{lang __encode=true}wcf.acp.updateServer.delete.sure{/lang}"></span>
                                                        
                                                        {event name='itemButtons'}
                                                </td>
index 6a5134e4dc3b10918030476bca4601ceb5a7da56..e6ee06b43afb394659e0bd420e72adccb120f9cb 100644 (file)
@@ -50,7 +50,7 @@
                                                <td class="columnIcon">
                                                        <span class="icon icon16 fa-{if !$subscription->isDisabled}check-{/if}square-o jsToggleButton jsTooltip pointer" title="{lang}wcf.global.button.{if !$subscription->isDisabled}disable{else}enable{/if}{/lang}" data-object-id="{@$subscription->subscriptionID}"></span>
                                                        <a href="{link controller='PaidSubscriptionEdit' id=$subscription->subscriptionID}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$subscription->subscriptionID}" data-confirm-message="{lang}wcf.acp.paidSubscription.delete.confirmMessage{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$subscription->subscriptionID}" data-confirm-message-html="{lang __encode=true}wcf.acp.paidSubscription.delete.confirmMessage{/lang}"></span>
                                                        <a href="{link controller='PaidSubscriptionUserAdd' id=$subscription->subscriptionID}{/link}" title="{lang}wcf.acp.paidSubscription.user.add{/lang}" class="jsTooltip"><span class="icon icon16 fa-plus"></span></a>
                                                        
                                                        {event name='itemButtons'}
index e2140e7c10682e9bca22e692fa35afa256c1fa83..e38125e82b057c665c6e648a6551d465cb350065 100644 (file)
@@ -46,7 +46,7 @@
                                {foreach from=$objects item=subscriptionUser}
                                        <tr class="jsPaidSubscriptionUserRow">
                                                <td class="columnIcon">
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$subscriptionUser->subscriptionUserID}" data-confirm-message="{lang}wcf.acp.paidSubscription.user.delete.confirmMessage{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$subscriptionUser->subscriptionUserID}" data-confirm-message-html="{lang __encode=true}wcf.acp.paidSubscription.user.delete.confirmMessage{/lang}"></span>
                                                        
                                                        {event name='itemButtons'}
                                                </td>
index 2bd6a5174a0156c745a9324a2f44098d3b1a8659..a48ee60b459a3f7b822526cc40ecaba56e9ae528 100644 (file)
@@ -46,7 +46,7 @@
                                                <tr>
                                                        <td class="columnIcon">
                                                                {if $product[status] == 'install'}
-                                                                       <a class="jsButtonPackageInstall" data-confirm-message="{lang}wcf.acp.pluginStore.purchasedItems.status.install.confirmMessage{/lang}" data-package="{$product[package]}" data-package-version="{$product[version][available]}"><span class="icon icon16 fa-plus jsTooltip" title="{lang}wcf.acp.package.button.installPackage{/lang}"></span></a>
+                                                                       <a class="jsButtonPackageInstall" data-confirm-message="{lang __encode=true}wcf.acp.pluginStore.purchasedItems.status.install.confirmMessage{/lang}" data-package="{$product[package]}" data-package-version="{$product[version][available]}"><span class="icon icon16 fa-plus jsTooltip" title="{lang}wcf.acp.package.button.installPackage{/lang}"></span></a>
                                                                {else if $product[status] == 'update'}
                                                                        <a class="jsButtonPackageUpdate"><span class="icon icon16 fa-refresh jsTooltip" title="{lang}wcf.acp.pluginStore.purchasedItems.status.update{/lang}"></span></a>
                                                                {else if $product[status] == 'upToDate'}
index 1910d15eb0ba65a4d429e4a683ab63b38ded1fcc..f745b7772169d0e155a863053f48f28ca351f6dc 100644 (file)
@@ -50,7 +50,7 @@
                                                                
                                                                <span class="statusDisplay sortableButtonContainer">
                                                                        <a href="{link controller='SmileyEdit' id=$smiley->smileyID}{/link}"><span title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip icon icon16 fa-pencil" /></a>
-                                                                       <span title="{lang}wcf.global.button.delete{/lang}" class="jsDeleteButton jsTooltip icon icon16 fa-times" data-object-id="{@$smiley->smileyID}" data-confirm-message="{lang}wcf.acp.smiley.delete.sure{/lang}" />
+                                                                       <span title="{lang}wcf.global.button.delete{/lang}" class="jsDeleteButton jsTooltip icon icon16 fa-times" data-object-id="{@$smiley->smileyID}" data-confirm-message-html="{lang __encode=true}wcf.acp.smiley.delete.sure{/lang}" />
                                                                        
                                                                        {event name='itemButtons'}
                                                                </span>
index 42832f0ee7ca461cb79c196c22d051c7d95bb087..278e9f49b23eb71ac38b58ba4f25d5766ee70a98 100644 (file)
@@ -80,7 +80,7 @@
                                                <td class="columnMark"><input type="checkbox" class="jsClipboardItem" data-object-id="{@$tag->tagID}" /></td>
                                                <td class="columnIcon">
                                                        <a href="{link controller='TagEdit' object=$tag}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$tag->tagID}" data-confirm-message="{lang}wcf.acp.tag.delete.sure{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$tag->tagID}" data-confirm-message-html="{lang __encode=true}wcf.acp.tag.delete.sure{/lang}"></span>
                                                        
                                                        {event name='rowButtons'}
                                                </td>
index aff6f7ee009a1b35f3fd6ef811b7591de53c5599..b729e7f9b52dbb531b0beefac5d0611619e253df 100644 (file)
@@ -59,7 +59,7 @@
                                        <tr class="jsTemplateGroupRow">
                                                <td class="columnIcon">
                                                        <a href="{link controller='TemplateGroupEdit' id=$templateGroup->templateGroupID}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$templateGroup->templateGroupID}" data-confirm-message="{lang}wcf.acp.template.group.delete.sure{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$templateGroup->templateGroupID}" data-confirm-message-html="{lang __encode=true}wcf.acp.template.group.delete.sure{/lang}"></span>
                                                        
                                                        {event name='rowButtons'}
                                                </td>
index a1b97b18d5e9d53a95b3486931621ad9df346727..bbdd9a467722b78b2ea415608ded692af94d2b66 100644 (file)
                                                        {if $template->templateGroupID}
                                                                <a href="{link controller='TemplateDiff' id=$template->templateID}{/link}" title="{lang}wcf.acp.template.diff{/lang}" class="jsTooltip"><span class="icon icon16 fa-exchange"></span></a>
                                                                <a href="{link controller='TemplateEdit' id=$template->templateID}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                               <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$template->templateID}" data-confirm-message="{lang}wcf.acp.template.delete.sure{/lang}"></span>
+                                                               <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$template->templateID}" data-confirm-message-html="{lang __encode=true}wcf.acp.template.delete.sure{/lang}"></span>
                                                        {else}
                                                                <span class="icon icon16 fa-exchange disabled" title="{lang}wcf.acp.template.diff{/lang}"></span>
                                                                <span class="icon icon16 fa-pencil disabled" title="{lang}wcf.global.button.edit{/lang}"></span>
index a97f838bb3e216578d2794d1a55fcdcc97f8af02..e533e95002d7fbf2907288a578c120d9d1c336cf 100644 (file)
@@ -60,7 +60,7 @@
                                                <td class="columnIcon">
                                                        <span class="icon icon16 fa-{if !$assignment->isDisabled}check-{/if}square-o jsToggleButton jsTooltip pointer" title="{lang}wcf.global.button.{if $assignment->isDisabled}enable{else}disable{/if}{/lang}" data-object-id="{@$assignment->assignmentID}"></span>
                                                        <a href="{link controller='UserGroupAssignmentEdit' object=$assignment}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$assignment->assignmentID}" data-confirm-message="{lang}wcf.acp.group.assignment.delete.confirmMessage{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$assignment->assignmentID}" data-confirm-message-html="{lang __encode=true}wcf.acp.group.assignment.delete.confirmMessage{/lang}"></span>
                                                        
                                                        {event name='rowButtons'}
                                                </td>
index f504c4f194fc30c0dea66087512906e0285d92a7..229e14e0f52166ce90418c58f9098eb1656e5098 100644 (file)
@@ -57,7 +57,7 @@
                                                        <span class="icon icon16 fa-pencil disabled" title="{lang}wcf.global.button.edit{/lang}"></span>
                                                {/if}
                                                {if $group->isDeletable()}
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$group->groupID}" data-confirm-message="{lang}wcf.acp.group.delete.sure{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$group->groupID}" data-confirm-message-html="{lang __encode=true}wcf.acp.group.delete.sure{/lang}"></span>
                                                {else}
                                                        <span class="icon icon16 fa-times disabled" title="{lang}wcf.global.button.delete{/lang}"></span>
                                                {/if}
index faba83258d83aa0b751bffdc7f35fe95f55db330..6f5483da17253c874e9dcfb3d73b6d8277620da4 100644 (file)
                                                                <span class="icon icon16 fa-pencil disabled" title="{lang}wcf.global.button.edit{/lang}"></span>
                                                        {/if}
                                                        {if $user->deletable}
-                                                               <span class="icon icon16 fa-times jsTooltip jsDeleteButton pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$user->userID}" data-confirm-message="{lang}wcf.acp.user.delete.sure{/lang}"></span>
+                                                               <span class="icon icon16 fa-times jsTooltip jsDeleteButton pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$user->userID}" data-confirm-message-html="{lang __encode=true}wcf.acp.user.delete.sure{/lang}"></span>
                                                        {else}
                                                                <span class="icon icon16 fa-times disabled" title="{lang}wcf.global.button.delete{/lang}"></span>
                                                        {/if}
index 423df1aab9fb412433bbd979a1f0975665d260b7..2742fc6c9298bf223c41b2516986f77989560a8b 100644 (file)
@@ -51,7 +51,7 @@
                                                        <span class="icon icon16 fa-{if !$option->isDisabled}check-{/if}square-o jsToggleButton jsTooltip pointer" title="{lang}wcf.global.button.{if $option->isDisabled}enable{else}disable{/if}{/lang}" data-object-id="{@$option->optionID}"></span>
                                                        <a href="{link controller='UserOptionEdit' id=$option->optionID}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
                                                        {if $option->canDelete()}
-                                                               <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$option->optionID}" data-confirm-message="{lang}wcf.acp.user.option.delete.sure{/lang}"></span>
+                                                               <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$option->optionID}" data-confirm-message-html="{lang __encode=true}wcf.acp.user.option.delete.sure{/lang}"></span>
                                                        {else}
                                                                <span class="icon icon16 fa-times disabled"></span>
                                                        {/if}
index 123896538e83c84e150fd047852b55001e5a3456..5ba5fe3815e4b0265db28cf1d42b150ce8a485ef 100644 (file)
@@ -49,7 +49,7 @@
                                        <tr class="jsUserRankRow">
                                                <td class="columnIcon">
                                                        <a href="{link controller='UserRankEdit' id=$userRank->rankID}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a>
-                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$userRank->rankID}" data-confirm-message="{lang}wcf.acp.user.rank.delete.sure{/lang}"></span>
+                                                       <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$userRank->rankID}" data-confirm-message-html="{lang __encode=true}wcf.acp.user.rank.delete.sure{/lang}"></span>
                                                        
                                                        {event name='rowButtons'}
                                                </td>
index c008083f7142c0569679186554cda2dab51d5dd5..1cc7363254bf2010bd1d638dc39281c7b1fb9576 100644 (file)
@@ -200,7 +200,7 @@ WCF.Message.EditHistory = Class.extend({
                                if (action === 'cancel') return;
                                
                                self._sendRequest($target);
-                       });
+                       }, undefined, undefined, true);
                }
                else {
                        this._sendRequest($target);
index 333ff40498b4af84587458ec8c3f512c80269aec..d9cfcd50716334111faadab914212d4679a2ad82 100755 (executable)
@@ -1704,8 +1704,8 @@ WCF.Action.Delete = Class.extend({
                var $target = $(event.currentTarget);
                event.preventDefault();
                
-               if ($target.data('confirmMessage')) {
-                       WCF.System.Confirmation.show($target.data('confirmMessage'), $.proxy(this._execute, this), { target: $target });
+               if ($target.data('confirmMessageHtml') || $target.data('confirmMessage')) {
+                       WCF.System.Confirmation.show($target.data('confirmMessageHtml') ? $target.data('confirmMessageHtml') : $target.data('confirmMessage'), $.proxy(this._execute, this), { target: $target }, undefined, $target.data('confirmMessageHtml') ? true : false);
                }
                else {
                        WCF.LoadingOverlayHandler.updateIcon($target);
@@ -1914,8 +1914,8 @@ WCF.Action.Toggle = Class.extend({
                var $target = $(event.currentTarget);
                event.preventDefault();
                
-               if ($target.data('confirmMessage')) {
-                       WCF.System.Confirmation.show($target.data('confirmMessage'), $.proxy(this._execute, this), { target: $target });
+               if ($target.data('confirmMessageHtml') || $target.data('confirmMessage')) {
+                       WCF.System.Confirmation.show($target.data('confirmMessageHtml') ? $target.data('confirmMessageHtml') : $target.data('confirmMessage'), $.proxy(this._execute, this), { target: $target }, undefined, $target.data('confirmMessageHtml') ? true : false);
                }
                else {
                        WCF.LoadingOverlayHandler.updateIcon($target);
@@ -5304,14 +5304,21 @@ WCF.System.Confirmation = {
         * @param       object          callback
         * @param       object          parameters
         * @param       jQuery          template
+        * @param       boolean         messageIsHtml
         */
-       show: function(message, callback, parameters, template) {
+       show: function(message, callback, parameters, template, messageIsHtml) {
+               if (typeof template === 'object') {
+                       var $wrapper = $('<div />');
+                       $wrapper.append(template);
+                       template = $wrapper.html();
+               }
                require(['Ui/Confirmation'], function(UiConfirmation) {
                        UiConfirmation.show({
                                legacyCallback: callback,
                                message: message,
                                parameters: parameters,
-                               template: (typeof template === 'object' ? template.html() : '')
+                               template: (template || ''),
+                               messageIsHtml: (messageIsHtml === true)
                        });
                });
        }
index 9a59796275268c1bb2fcb8189b382ac39e06b7d2..9349febb05dcfaad13cb2b3d6a0eea41ed629e4f 100644 (file)
@@ -46,6 +46,7 @@ define(['Core', 'Language', 'Ui/Dialog'], function(Core, Language, UiDialog) {
                                confirm: null,
                                legacyCallback: null,
                                message: '',
+                               messageIsHtml: false,
                                parameters: {},
                                template: ''
                        }, options);
@@ -63,8 +64,9 @@ define(['Core', 'Language', 'Ui/Dialog'], function(Core, Language, UiDialog) {
                                this._createDialog();
                        }
                        
-                       _content.innerHTML = (typeof options.template === 'string') ? options.template.trim() : '';
-                       _text.textContent = _options.message;
+                       _content.innerHTML = (typeof _options.template === 'string') ? _options.template.trim() : '';
+                       if (_options.messageIsHtml) _text.innerHTML = _options.message;
+                       else _text.textContent = _options.message;
                        
                        _active = true;
                        
index e8e4154921a7ac75cc99caa86792714bdfcdb59c..f6a7854b73240f08b827f26ec7ae12cb2f519bf7 100644 (file)
@@ -24,7 +24,10 @@ class LangCompilerTemplatePlugin implements ICompilerTemplatePlugin {
                $compiler->pushTag('lang');
                
                $tagArgs = $compiler->makeArgString($tagArgs);
-               return "<?php \$this->tagStack[] = array('lang', array($tagArgs)); ob_start(); ?>";
+               return "<?php
+                       \$this->tagStack[] = array('lang', array($tagArgs));
+                       ob_start();
+                       ?>";
        }
        
        /**
@@ -32,6 +35,38 @@ class LangCompilerTemplatePlugin implements ICompilerTemplatePlugin {
         */
        public function executeEnd(TemplateScriptingCompiler $compiler) {
                $compiler->popTag('lang');
-               return "<?php echo (!empty(\$this->tagStack[count(\$this->tagStack) - 1][1]['__literal']) ? wcf\system\WCF::getLanguage()->get(ob_get_clean(), \$this->tagStack[count(\$this->tagStack) - 1][1], (isset(\$this->tagStack[count(\$this->tagStack) - 1][1]['__optional']) ? \$this->tagStack[count(\$this->tagStack) - 1][1]['__optional'] : false)) : wcf\system\WCF::getLanguage()->getDynamicVariable(ob_get_clean(), \$this->tagStack[count(\$this->tagStack) - 1][1], (isset(\$this->tagStack[count(\$this->tagStack) - 1][1]['__optional']) ? \$this->tagStack[count(\$this->tagStack) - 1][1]['__optional'] : false))); array_pop(\$this->tagStack); ?>";
+               return "<?php
+                       \$__langCompilerTemplatePluginOutput = (
+                               !empty(\$this->tagStack[count(\$this->tagStack) - 1][1]['__literal'])
+                               ?
+                               wcf\system\WCF::getLanguage()->get(
+                                       ob_get_clean(),
+                                       \$this->tagStack[count(\$this->tagStack) - 1][1],
+                                       (
+                                               isset(\$this->tagStack[count(\$this->tagStack) - 1][1]['__optional'])
+                                               ?
+                                               \$this->tagStack[count(\$this->tagStack) - 1][1]['__optional']
+                                               :
+                                               false
+                                       )
+                               )
+                               :
+                               wcf\system\WCF::getLanguage()->getDynamicVariable(
+                                       ob_get_clean(),
+                                       \$this->tagStack[count(\$this->tagStack) - 1][1],
+                                       (
+                                               isset(\$this->tagStack[count(\$this->tagStack) - 1][1]['__optional'])
+                                               ?
+                                               \$this->tagStack[count(\$this->tagStack) - 1][1]['__optional']
+                                               :
+                                               false
+                                       )
+                               )
+                       );
+                       
+                       if (!empty(\$this->tagStack[count(\$this->tagStack) - 1][1]['__encode'])) \$__langCompilerTemplatePluginOutput = wcf\util\StringUtil::encodeHTML(\$__langCompilerTemplatePluginOutput);
+                       echo \$__langCompilerTemplatePluginOutput;
+                       
+                       array_pop(\$this->tagStack); ?>";
        }
 }
index 9910b56cb6bf92de804e4b4d240f2ef86ceee2f7..3c0579f30c1e47733fa60373eb42ac4a86eee049 100644 (file)
@@ -1145,7 +1145,7 @@ GmbH=Gesellschaft mit beschränkter Haftung]]></item>
                <item name="wcf.acp.package.startUpdate"><![CDATA[Paket „{@$package->getName()}“ aktualisieren]]></item>
                <item name="wcf.acp.package.type.application"><![CDATA[Anwendung]]></item>
                <item name="wcf.acp.package.type.plugin"><![CDATA[Erweiterung]]></item>
-               <item name="wcf.acp.package.uninstallation.confirm"><![CDATA[Wollen Sie das Paket „{@$package->getName()}“ wirklich deinstallieren?]]></item>
+               <item name="wcf.acp.package.uninstallation.confirm"><![CDATA[Wollen Sie das Paket <span class="confirmationObject">{@$package->getName()}</span> wirklich deinstallieren?]]></item>
                <item name="wcf.acp.package.uninstallation.step.success"><![CDATA[Deinstallation abgeschlossen]]></item>
                <item name="wcf.acp.package.uninstallation.step.uninstall"><![CDATA[Paket „{$queue->packageName}“ wird deinstalliert …]]></item>
                <item name="wcf.acp.package.uninstallation.title"><![CDATA[Deinstallation]]></item>
index 93558b0fff5377d2e0f034f8bbcfe35b06d902f5..e7fa7873a930ab27d78b8a192a9a24000bd12881 100644 (file)
@@ -1151,7 +1151,7 @@ GmbH=Gesellschaft mit beschränkter Haftung]]></item>
                <item name="wcf.acp.package.startUpdate"><![CDATA[Update Package “{@$package->getName()}”]]></item>
                <item name="wcf.acp.package.type.application"><![CDATA[Application]]></item>
                <item name="wcf.acp.package.type.plugin"><![CDATA[Plugin]]></item>
-               <item name="wcf.acp.package.uninstallation.confirm"><![CDATA[Do you really want to uninstall the package “{@$package->getName()}”?]]></item>
+               <item name="wcf.acp.package.uninstallation.confirm"><![CDATA[Do you really want to uninstall the package <span class="confirmationObject">{@$package->getName()}</span>?]]></item>
                <item name="wcf.acp.package.uninstallation.step.success"><![CDATA[Uninstallation completed]]></item>
                <item name="wcf.acp.package.uninstallation.step.uninstall"><![CDATA[Package “{$queue->packageName}” is being uninstalled …]]></item>
                <item name="wcf.acp.package.uninstallation.title"><![CDATA[Uninstallation]]></item>