Improved error pages / messages
authorMarcel Werk <burntime@woltlab.com>
Wed, 13 Jul 2016 14:24:40 +0000 (16:24 +0200)
committerMarcel Werk <burntime@woltlab.com>
Wed, 13 Jul 2016 14:24:40 +0000 (16:24 +0200)
com.woltlab.wcf/templates/permissionDenied.tpl
com.woltlab.wcf/templates/userException.tpl
wcfsetup/install/files/lib/system/exception/IllegalLinkException.class.php
wcfsetup/install/lang/de.xml
wcfsetup/install/lang/en.xml

index 3146e9176678d8089bce7e41ecd18c21950fbcfe..827bd56f282b6bb6fee73e239601618f5ebe700f 100644 (file)
@@ -1,8 +1,11 @@
 {capture assign='pageTitle'}{lang}wcf.global.error.permissionDenied.title{/lang}{/capture}
+{capture assign='contentTitle'}{lang}wcf.global.error.permissionDenied.title{/lang}{/capture}
 
-{include file='header' __disableAds=true __disableContentHeader=true}
+{include file='header' __disableAds=true}
 
-<p class="error">{lang}wcf.global.error.permissionDenied{/lang}</p>
+<div class="section">
+       <p>{lang}wcf.global.error.permissionDenied{/lang}</p>
+</div>
 
 {event name='content'}
 
index 66b2f430e59dd6e8ec2b1d1f2eb47ad3dfa8c2d5..9cbf3959f211c53102062051066d5638a31bde5a 100644 (file)
@@ -1,14 +1,23 @@
-{capture assign='pageTitle'}{lang}wcf.global.error.title{/lang}{/capture}
+{if !$title|empty}
+       {capture assign='pageTitle'}{$title}{/capture}
+       {capture assign='contentTitle'}{$title}{/capture}
+{else}
+       {capture assign='pageTitle'}{lang}wcf.global.error.title{/lang}{/capture}
+       {capture assign='contentTitle'}{lang}wcf.global.error.title{/lang}{/capture}
+{/if}
+
+{include file='header' __disableAds=true}
+
+<div class="section">
+       <p id="errorMessage">
+               {@$message}
+       </p>
+</div>
 
-{include file='header' __disableAds=true __disableContentHeader=true}
-       
-<p id="errorMessage" class="error">
-       {@$message}
-</p>
 <script data-relocate="true">
        //<![CDATA[
        if (document.referrer) {
-               $('#errorMessage').append('<br><a href="' + document.referrer + '">{lang}wcf.global.error.backward{/lang}</a>'); 
+               $('#errorMessage').append('<br><br><a href="' + document.referrer + '">{lang}wcf.global.error.backward{/lang}</a>'); 
        }
        //]]>
 </script>
index dfc7bafe7649685d03d9a5e8dd9a23bca538942c..3824cb45b6952cb082086bd3ed2a92ce098cc299 100644 (file)
@@ -23,6 +23,11 @@ class IllegalLinkException extends NamedUserException {
         */
        public function show() {
                @header('HTTP/1.0 404 Not Found');
+               
+               WCF::getTPL()->assign([
+                       'title' => WCF::getLanguage()->get('wcf.global.error.illegalLink.title')
+               ]);
+               
                parent::show();
        }
 }
index 059f9246ef7c85489e43acfe1b4b0a070e88b709..e33cf030d37978ec3a379f56579ec94c5fd3f5d8 100644 (file)
@@ -2354,7 +2354,7 @@ Fehler sind beispielsweise:
                <item name="wcf.global.decimalPoint"><![CDATA[,]]></item>
                <item name="wcf.global.description"><![CDATA[Beschreibung]]></item>
                <item name="wcf.global.error.permissionDenied"><![CDATA[Der Zutritt zu dieser Seite ist Ihnen leider verwehrt. Sie besitzen nicht die notwendigen Zugriffsrechte, um diese Seite aufrufen zu können.]]></item>
-               <item name="wcf.global.error.permissionDenied.title"><![CDATA[Der Zutritt zu dieser Seite ist Ihnen leider verwehrt.]]></item>
+               <item name="wcf.global.error.permissionDenied.title"><![CDATA[Zugriff verweigert]]></item>
                <item name="wcf.global.error.timeout"><![CDATA[Keine Antwort vom Server erhalten, Anfrage wurde abgebrochen.]]></item>
                <item name="wcf.global.error.title"><![CDATA[Fehlermeldung]]></item>
                <item name="wcf.global.exception.explanation"><![CDATA[<p class="exceptionSubtitle">Was ist passiert?</p>
@@ -2400,7 +2400,8 @@ Fehler sind beispielsweise:
                <item name="wcf.global.multiSelect"><![CDATA[Mehrfache Markierungen sind durch zusätzliches Drücken der Taste „Strg/Ctrl“ (Windows) oder „Befehl/Command“ (Mac OS) möglich.]]></item>
                <item name="wcf.global.page.jumpTo"><![CDATA[Gehe zu Seite]]></item>
                <item name="wcf.global.page.jumpTo.description"><![CDATA[Geben Sie einen Wert zwischen „1“ und „#pages#“ ein.]]></item>
-               <item name="wcf.global.error.illegalLink"><![CDATA[Sie haben einen ungültigen oder nicht mehr gültigen Link aufgerufen.]]></item>
+               <item name="wcf.global.error.illegalLink"><![CDATA[Die von Ihnen angeforderte Seite wurde nicht gefunden. Bitte überprüfen Sie die Adresse oder gehen Sie zurück auf die Startseite.]]></item>
+               <item name="wcf.global.error.illegalLink.title"><![CDATA[Seite nicht gefunden]]></item>
                <item name="wcf.global.error.backward"><![CDATA[Zurück zur vorherigen Seite]]></item>
                <item name="wcf.global.noDeclaration"><![CDATA[Keine Angabe]]></item>
                <item name="wcf.global.defaultValue"><![CDATA[Standard]]></item>
index 3eabf5caac50fd78545dc488643b79928fee5f43..8c643df6972306cec7c1207a36e99106f23edee2 100644 (file)
@@ -2332,7 +2332,8 @@ Errors are:
                <item name="wcf.global.date"><![CDATA[Date]]></item>
                <item name="wcf.global.decimalPoint"><![CDATA[.]]></item>
                <item name="wcf.global.description"><![CDATA[Description]]></item>
-               <item name="wcf.global.error.permissionDenied.title"><![CDATA[Access denied.]]></item>
+               <item name="wcf.global.error.permissionDenied"><![CDATA[Access denied. You’re not authorized to view this page.]]></item>
+               <item name="wcf.global.error.permissionDenied.title"><![CDATA[Access Denied]]></item>
                <item name="wcf.global.error.timeout"><![CDATA[Did not receive a response from server, request aborted.]]></item>
                <item name="wcf.global.error.title"><![CDATA[Error Message]]></item>
                <item name="wcf.global.exception.explanation"><![CDATA[<p class="exceptionSubtitle">What happened?</p>
@@ -2378,7 +2379,8 @@ Errors are:
                <item name="wcf.global.multiSelect"><![CDATA[Multiple items can be selected by holding the “Ctrl/Shift” key (Windows) or “Command” (Mac OS) key and clicking on the desired items.]]></item>
                <item name="wcf.global.page.jumpTo"><![CDATA[Go to Page]]></item>
                <item name="wcf.global.page.jumpTo.description"><![CDATA[Enter a value between “1” and “#pages#”.]]></item>
-               <item name="wcf.global.error.illegalLink"><![CDATA[The link you’re trying to reach is no longer available or invalid.]]></item>
+               <item name="wcf.global.error.illegalLink"><![CDATA[Sorry, but the page you are looking for has not been found. Try checking the URL for errors, then hit the refresh button on your browser.]]></item>
+               <item name="wcf.global.error.illegalLink.title"><![CDATA[Page Not Found]]></item>
                <item name="wcf.global.error.backward"><![CDATA[Back to previous page.]]></item>
                <item name="wcf.global.noDeclaration"><![CDATA[Unspecified]]></item>
                <item name="wcf.global.defaultValue"><![CDATA[Default Value]]></item>