From 2cdcb5ec386ee1e343c832e22c9e50dbbcdc4957 Mon Sep 17 00:00:00 2001 From: boban Date: Wed, 29 Apr 2026 18:53:19 +0200 Subject: [PATCH] Feat: Fehlerseiten 4xx + 5xx im CluBird-Design --- resources/views/errors/4xx.blade.php | 134 +++++++++++++++++++++++++++ resources/views/errors/5xx.blade.php | 121 ++++++++++++++++++++++++ 2 files changed, 255 insertions(+) create mode 100644 resources/views/errors/4xx.blade.php create mode 100644 resources/views/errors/5xx.blade.php diff --git a/resources/views/errors/4xx.blade.php b/resources/views/errors/4xx.blade.php new file mode 100644 index 0000000..1c05fe2 --- /dev/null +++ b/resources/views/errors/4xx.blade.php @@ -0,0 +1,134 @@ + + + + + +getStatusCode(); +$map = [ + 400 => ['Ungültige Anfrage', 'Die Anfrage enthält fehlerhafte oder unvollständige Daten.'], + 401 => ['Nicht angemeldet', 'Bitte melde dich an, um auf diese Seite zuzugreifen.'], + 403 => ['Kein Zugriff', 'Du hast keine Berechtigung, diese Seite aufzurufen.'], + 404 => ['Seite nicht gefunden', 'Die aufgerufene Seite existiert nicht oder wurde verschoben.'], + 405 => ['Methode nicht erlaubt', 'Diese HTTP-Methode ist für diese URL nicht zulässig.'], + 419 => ['Sitzung abgelaufen', 'Deine Sitzung ist abgelaufen. Lade die Seite neu und versuche es erneut.'], + 422 => ['Ungültige Eingabe', 'Die übermittelten Daten konnten nicht verarbeitet werden.'], + 429 => ['Zu viele Anfragen', 'Du hast das Anfrage-Limit erreicht. Bitte warte einen Moment.'], +]; +[$title, $desc] = $map[$code] ?? ['Fehler ' . $code, 'Ein unbekannter Fehler ist aufgetreten.']; +$backUrl = $_SERVER['HTTP_REFERER'] ?? '/'; +$iconPath = [ + 400 => 'M12 9v4m0 4h.01M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z', + 401 => 'M12 15v2m0 0v2m0-2h2m-2 0H10m2-9V6a4 4 0 0 0-8 0v4h1a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h1M8 10h8a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2z', + 403 => 'M18.364 18.364A9 9 0 0 0 5.636 5.636m12.728 12.728A9 9 0 0 1 5.636 5.636m12.728 12.728L5.636 5.636', + 404 => 'M9.172 16.172a4 4 0 0 1 5.656 0M9 10h.01M15 10h.01M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z', + 405 => 'M18.364 18.364A9 9 0 0 0 5.636 5.636m12.728 12.728A9 9 0 0 1 5.636 5.636m12.728 12.728L5.636 5.636', + 419 => 'M12 8v4l3 3m6-3a9 9 0 1 1-18 0 9 9 0 0 1 18 0z', + 422 => 'M12 9v4m0 4h.01M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z', + 429 => 'M13 10V3L4 14h7v7l9-11h-7z', +]; +$icon = $iconPath[$code] ?? $iconPath[400]; +?> +{{ $code }} · CluBird + + + +
+ + +
+ +
+ +
{{ $code }}
+

{{ $title }}

+

{{ $desc }}

+
+ + + + Zurück + + + + Startseite + +
+ + diff --git a/resources/views/errors/5xx.blade.php b/resources/views/errors/5xx.blade.php new file mode 100644 index 0000000..2ea6296 --- /dev/null +++ b/resources/views/errors/5xx.blade.php @@ -0,0 +1,121 @@ + + + + + +getStatusCode(); +$map = [ + 500 => ['Serverfehler', 'Ein interner Fehler ist aufgetreten. Wir wurden benachrichtigt.'], + 502 => ['Bad Gateway', 'Der Server hat eine ungültige Antwort erhalten. Bitte versuche es gleich erneut.'], + 504 => ['Gateway-Timeout', 'Der Server antwortet nicht rechtzeitig. Bitte versuche es in Kürze erneut.'], +]; +[$title, $desc] = $map[$code] ?? ['Serverfehler ' . $code, 'Ein unerwarteter Fehler ist aufgetreten.']; +?> +{{ $code }} · CluBird + + + +
+ + +
+ @if($code === 502 || $code === 504) + + @else + + @endif +
+ +
{{ $code }}
+

{{ $title }}

+

{{ $desc }}

+
+ + + + Neu laden + + + + Startseite + +
+ +