diff options
author | Derf Null <derf@finalrewind.org> | 2023-06-04 19:25:24 +0200 |
---|---|---|
committer | Derf Null <derf@finalrewind.org> | 2023-06-04 19:25:24 +0200 |
commit | c1635e24fb78d981a790463cfe35ba552bcaac04 (patch) | |
tree | 64a3aeff358c6b56663ee01be27713f036d89918 /templates | |
parent | 8cef56a94033c9b4784026e8e809c03beb59db8b (diff) |
use a separate bad_request page for CSRF errors
Diffstat (limited to 'templates')
-rw-r--r-- | templates/_invalid_input.html.ep | 9 | ||||
-rw-r--r-- | templates/bad_request.html.ep | 19 |
2 files changed, 20 insertions, 8 deletions
diff --git a/templates/_invalid_input.html.ep b/templates/_invalid_input.html.ep index 6b0fb65..f8c4e2f 100644 --- a/templates/_invalid_input.html.ep +++ b/templates/_invalid_input.html.ep @@ -2,14 +2,7 @@ <div class="col s12"> <div class="card caution-color"> <div class="card-content white-text"> - % if ($invalid eq 'csrf') { - <span class="card-title">Ungültiger CSRF-Token</span> - <p>Sind Cookies aktiviert? Ansonsten könnte es sich um einen - Fall von <a - href="https://de.wikipedia.org/wiki/Cross-Site-Request-Forgery">CSRF</a> - handeln.</p> - % } - % elsif ($invalid eq 'credentials') { + % if ($invalid eq 'credentials') { <span class="card-title">Ungültige Logindaten</span> <p>Falscher Account oder falsches Passwort.</p> % } diff --git a/templates/bad_request.html.ep b/templates/bad_request.html.ep new file mode 100644 index 0000000..5d401da --- /dev/null +++ b/templates/bad_request.html.ep @@ -0,0 +1,19 @@ +<div class="row"> + <div class="col s12"> + <div class="card caution-color"> + <div class="card-content white-text"> + <span class="card-title">400 Bad Request</span> + % if (stash('csrf')) { + <p>Ungültiger CSRF-Token. Dieser dient zum Schutz vor Cross-Site Request Forgery.</p> + <p>Falls du von einer externen Seite hierhin geleitet wurdest, wurde möglicherweise (erfolglos) versucht, deinen Account anzugreifen. Falls du von travelynx selbst aus hier angekommen bist, kann es sich um eine fehlerhafte Cookie-Konfiguration im Browser, eine abgelaufene Session (→ bitte nochmal versuchen) oder du einen Bug in travelynx handeln (→ bitte melden).</p> + % } + % elsif (my $m = stash('message')) { + <p><%= $m %></p> + % } + % else { + <p>Diese Anfrage ist ungültig. Ursache kann z.B. eine abgelaufene Session oder ein Bug in travelynx sein.</p> + % } + </div> + </div> + </div> +</div> |