summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBirte Kristina Friesel <derf@finalrewind.org>2025-01-11 08:46:32 +0100
committerBirte Kristina Friesel <derf@finalrewind.org>2025-01-11 08:46:32 +0100
commiteec9ebe3add5e107729e5000591844a0e1ee9aa2 (patch)
treef32a3fd369fc7335d0484bcf59e7c6e1d136f356
parentbe77455f8a824e41796fbd9eaf4a32f090d7d35b (diff)
Add backend selection link to Bad Gateway / Gateway Timeout error messages
-rwxr-xr-xlib/Travelynx/Controller/Traveling.pm14
-rw-r--r--templates/bad_gateway.html.ep7
-rw-r--r--templates/gateway_timeout.html.ep7
3 files changed, 21 insertions, 7 deletions
diff --git a/lib/Travelynx/Controller/Traveling.pm b/lib/Travelynx/Controller/Traveling.pm
index 54eb12b..a0ae43b 100755
--- a/lib/Travelynx/Controller/Traveling.pm
+++ b/lib/Travelynx/Controller/Traveling.pm
@@ -1131,18 +1131,22 @@ sub station {
}
)->wait;
}
- elsif ( $err =~ m{svcRes|connection close|Service Temporarily Unavailable} ) {
+ elsif ( $err
+ =~ m{svcRes|connection close|Service Temporarily Unavailable} )
+ {
$self->render(
'bad_gateway',
- message => $err,
- status => 502
+ message => $err,
+ status => 502,
+ select_new_backend => 1,
);
}
elsif ( $err =~ m{timeout}i ) {
$self->render(
'gateway_timeout',
- message => $err,
- status => 504
+ message => $err,
+ status => 504,
+ select_new_backend => 1,
);
}
else {
diff --git a/templates/bad_gateway.html.ep b/templates/bad_gateway.html.ep
index ca69188..07bf29e 100644
--- a/templates/bad_gateway.html.ep
+++ b/templates/bad_gateway.html.ep
@@ -6,7 +6,12 @@
<p>
Das von travelynx genutzte Backend hat einen Fehler zurückgegeben.
travelynx hat keine Möglichkeiten, diese Situation zu beheben.
- Versuche es in ein paar Sekunden bis Minuten noch einmal.
+ % if (stash('select_new_backend')) {
+ Versuche es in ein paar Sekunden bis Minuten noch einmal oder <a href="/account/select_backend">wähle ein anderes Backend</a>.
+ % }
+ % else {
+ Versuche es in ein paar Sekunden bis Minuten noch einmal.
+ % }
</p>
</div>
</div>
diff --git a/templates/gateway_timeout.html.ep b/templates/gateway_timeout.html.ep
index 86e844d..9cf8690 100644
--- a/templates/gateway_timeout.html.ep
+++ b/templates/gateway_timeout.html.ep
@@ -6,7 +6,12 @@
<p>
Das von travelynx genutzte Backend hat nicht rechtzeitig reagiert.
travelynx hat keine Möglichkeiten, diese Situation zu beheben.
- Vrsuche es in ein paar Sekunden bis Minuten noch einmal.
+ % if (stash('select_new_backend')) {
+ Versuche es in ein paar Sekunden bis Minuten noch einmal oder <a href="/account/select_backend">wähle ein anderes Backend</a>.
+ % }
+ % else {
+ Versuche es in ein paar Sekunden bis Minuten noch einmal.
+ % }
</p>
</div>
</div>