summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBirte Kristina Friesel <derf@finalrewind.org>2025-07-20 16:01:16 +0200
committerBirte Kristina Friesel <derf@finalrewind.org>2025-07-20 16:01:16 +0200
commit2350a61c787d5cf9f1a844c3412120643b42623b (patch)
tree5a5e3f84b95c07f72a7170278ec1dcbfa2ab963a
parent4d84efb8b09552bb77a91350345036674508b6c7 (diff)
_checked_in: More en-GB translations
-rw-r--r--share/locales/de_DE.po59
-rw-r--r--share/locales/en_GB.po65
-rw-r--r--templates/_checked_in.html.ep38
3 files changed, 139 insertions, 23 deletions
diff --git a/share/locales/de_DE.po b/share/locales/de_DE.po
index dac2680..fcaa913 100644
--- a/share/locales/de_DE.po
+++ b/share/locales/de_DE.po
@@ -283,15 +283,34 @@ msgstr "ist unterwegs"
msgid "status.is-not-checked-in"
msgstr "ist gerade nicht eingecheckt"
+msgid "status.select-destination"
+msgstr "Ziel wählen"
+
msgid "status.share"
msgstr "Teilen"
msgid "status.check-out"
msgstr "Auschecken"
+msgid "status.boarding-in"
+msgstr "Einfahrt in"
+
+msgid "status.boarding-soon"
+msgstr "fährt ein"
+
+#, noun or verb
+msgid "status.departure-in"
+msgstr "Abfahrt in"
+
+#, noun or verb
+msgid "status.departure-soon"
+msgstr "Abfahrt in weniger als einer Minute"
+
+#, noun or verb
msgid "status.arrival-in"
msgstr "Ankunft in"
+#, noun or verb
msgid "status.arrival-soon"
msgstr "Ankunft in weniger als einer Minute"
@@ -301,12 +320,52 @@ msgstr "Ankunft unbekannt"
msgid "status.arrived"
msgstr "Ziel erreicht"
+msgid "status.depart-from"
+msgstr "von"
+
+msgid "status.arrive-on"
+msgstr "auf"
+
+msgid "status.delayed-auto-checkout"
+msgstr "Der automatische Checkout erfolgt etwa zehn Minuten nach der Ankunft."
+
+msgid "status.realtime-unavailable"
+msgstr "Keine Echtzeitdaten vorhanden"
+
+#, service messages related to the trip
+msgid "status.messages"
+msgstr "Meldungen"
+
+msgid "status.map"
+msgstr "Karte"
+
+msgid "status.change-destination"
+msgstr "Ziel ändern?"
+
msgid "status.carriages"
msgstr "Wagen"
msgid "status.route"
msgstr "Route"
+#, shown during destination selection
+msgid "status.undo"
+msgstr "Rückgängig"
+
+#, shown during destination selection
+msgid "status.privacy-level"
+msgstr "Sichtbarkeit"
+
+#, shown once check-in is completed
+msgid "status.undo-checkin"
+msgstr "Checkin rückgängig"
+
+msgid "status.force-checkout-lead"
+msgstr "Etwa zehn Minuten nach der Ankunft erfolgt ein automatischer Checkout. Falls das Backend ausgefallen ist oder die Fahrt aus anderen Gründen verloren ging:"
+
+msgid "status.force-checkout"
+msgstr "Jetzt auschecken"
+
# _wagons.html.ep
msgid "wagons.name-as-type"
diff --git a/share/locales/en_GB.po b/share/locales/en_GB.po
index 52b52f1..e9d5cbb 100644
--- a/share/locales/en_GB.po
+++ b/share/locales/en_GB.po
@@ -283,23 +283,64 @@ msgstr "is in transit"
msgid "status.is-not-checked-in"
msgstr "ist not in transit right now"
+msgid "status.select-destination"
+msgstr "Choose destination"
+
msgid "status.share"
msgstr "Share"
msgid "status.check-out"
msgstr "check out"
+msgid "status.boarding-in"
+msgstr "boarding in"
+
+msgid "status.boarding-soon"
+msgstr "now arriving"
+
+#, noun or verb
+msgid "status.departure-in"
+msgstr "departs in"
+
+#, noun or verb
+msgid "status.departure-soon"
+msgstr "departs in less than one minute"
+
+#, noun or verb
msgid "status.arrival-in"
-msgstr "Arrival in"
+msgstr "arrives in"
+#, noun or verb
msgid "status.arrival-soon"
-msgstr "Arrival in less than one minute"
+msgstr "now arriving"
msgid "status.arrival-unknown"
msgstr "Arrival unknown"
msgid "status.arrived"
-msgstr "Arrived"
+msgstr "arrived"
+
+msgid "status.depart-from"
+msgstr "from"
+
+msgid "status.arrive-on"
+msgstr "on"
+
+msgid "status.delayed-auto-checkout"
+msgstr "You will be automatically checked out about ten minutes after the expected arrival time."
+
+msgid "status.realtime-unavailable"
+msgstr "Real-time data unavailable"
+
+#, service messages related to the trip
+msgid "status.messages"
+msgstr "Notifications"
+
+msgid "status.map"
+msgstr "Map"
+
+msgid "status.change-destination"
+msgstr "Change destination"
msgid "status.carriages"
msgstr "Carriages"
@@ -307,6 +348,24 @@ msgstr "Carriages"
msgid "status.route"
msgstr "Route"
+#, shown during destination selection
+msgid "status.undo"
+msgstr "Undo"
+
+#, shown during destination selection
+msgid "status.privacy-level"
+msgstr "Privacy"
+
+#, shown once check-in is completed
+msgid "status.undo-checkin"
+msgstr "Undo check-in"
+
+msgid "status.force-checkout-lead"
+msgstr "travelynx will perform an automatic check-out about ten minutes after arrival. In case of backend or data update issues:"
+
+msgid "status.force-checkout"
+msgstr "Force checkout"
+
# _wagons.html.ep
msgid "wagons.name-as-type"
diff --git a/templates/_checked_in.html.ep b/templates/_checked_in.html.ep
index bbcbe43..d107919 100644
--- a/templates/_checked_in.html.ep
+++ b/templates/_checked_in.html.ep
@@ -4,7 +4,7 @@
<div class="card-content">
<i class="material-icons right sync-failed-marker grey-text" style="display: none;">sync_problem</i>
% if (not $journey->{arr_name}) {
- <span class="card-title center-align">Ziel wählen</span>
+ <span class="card-title center-align"><%= L('status.select-destination') %></span>
% }
<span class="card-title center-align">
%= include '_format_train', journey => $journey
@@ -19,16 +19,16 @@
data-dest="<%= $journey->{arr_name} %>"
>
% if ($journey->{boarding_countdown} > 60) {
- Einfahrt in <%= journeys->min_to_human(int($journey->{boarding_countdown} / 60)) %><br/>
+ <%= L('status.boarding-in') %> <%= journeys->min_to_human(int($journey->{boarding_countdown} / 60)) %><br/>
% }
% elsif ($journey->{boarding_countdown} > 0) {
- Fährt ein<br/>
+ <%= L('status.boarding-soon') %><br/>
% }
% if ($journey->{departure_countdown} > 60) {
- Abfahrt in <%= journeys->min_to_human(int($journey->{departure_countdown} / 60)) %>
+ <%= L('status.departure-in') %> <%= journeys->min_to_human(int($journey->{departure_countdown} / 60)) %>
% }
% elsif ($journey->{departure_countdown} > 0) {
- Abfahrt in weniger als einer Minute
+ %= L('status.departure-soon')
% }
% elsif (defined $journey->{arrival_countdown}) {
% if ($journey->{arrival_countdown} > 60) {
@@ -48,7 +48,7 @@
<br/>◀ <%= $journey->{platform_type} %> <%= $journey->{arr_platform} %>
% }
% else {
- <br/>auf <%= $journey->{platform_type} %> <%= $journey->{arr_platform} %>
+ <br/><%= L('status.arrive-on') %> <%= $journey->{platform_type} %> <%= $journey->{arr_platform} %>
% }
% }
% }
@@ -63,7 +63,7 @@
<br/>◀ <%= $journey->{platform_type} %> <%= $journey->{dep_platform} %>
% }
% else {
- <br/>von <%= $journey->{platform_type} %> <%= $journey->{dep_platform} %>
+ <br/><%= L('status.depart-from') %> <%= $journey->{platform_type} %> <%= $journey->{dep_platform} %>
% }
% }
% if (my $wr = $journey->{wagonorder}) {
@@ -206,7 +206,7 @@
<li><i class="material-icons tiny">gps_off</i> Manueller Checkin ohne Echtzeitdaten
% }
% elsif (not $journey->{extra_data}{rt}) {
- <li><i class="material-icons tiny">gps_off</i> Keine Echtzeitdaten vorhanden
+ <li><i class="material-icons tiny">gps_off</i> <%= L('status.realtime-unavailable') %>
% }
% for my $message (reverse @{$journey->{messages} // []}) {
% if ($journey->{sched_departure}->epoch - $message->[0]->epoch < 1800) {
@@ -235,8 +235,7 @@
% }
% if (defined $journey->{arrival_countdown} and $journey->{arrival_countdown} <= 0) {
<p style="margin-top: 2ex;">
- Der automatische Checkout erfolgt wegen teilweise langsamer
- Echtzeitdatenupdates erst etwa zehn Minuten nach der Ankunft.
+ %= L('status.delayed-auto-checkout')
</p>
% }
% elsif (not $journey->{arr_name}) {
@@ -275,7 +274,7 @@
% }
% else {
<a class="action-undo blue-text" data-id="in_transit" data-checkints="<%= $journey->{timestamp}->epoch %>" style="margin-right: 0;">
- <i class="material-icons left" aria-hidden="true">undo</i> Rückgängig
+ <i class="material-icons left" aria-hidden="true">undo</i> <%= L('status.undo') %>
</a>
% }
% if (defined $journey->{arrival_countdown} and $journey->{arrival_countdown} <= 0) {
@@ -316,7 +315,7 @@
% }
% else {
<a class="right" href="/journey/visibility">
- <i class="material-icons left"><%= visibility_icon($journey_visibility) %></i> Sichtbarkeit
+ <i class="material-icons left"><%= visibility_icon($journey_visibility) %></i> <%= L('status.privacy-level') %>
</a>
% }
</div>
@@ -328,7 +327,7 @@
<div class="card" style="margin-top: <%= scalar @{stash('timeline') // []} ? '1.5rem' : '3em' %>;">
<div class="card-content">
<i class="material-icons small right sync-failed-marker grey-text" style="display: none;">sync_problem</i>
- <span class="card-title">Meldungen</span>
+ <span class="card-title"><%= L('status.messages') %></span>
% if (@{$journey->{extra_data}{him_msg} // []}) {
<p style="margin-bottom: 2ex;">
<ul>
@@ -359,7 +358,7 @@
<div class="card" style="margin-top: 3em;">
<div class="card-content">
<i class="material-icons small right sync-failed-marker grey-text" style="display: none;">sync_problem</i>
- <span class="card-title">Karte</span>
+ <span class="card-title"><%= L('status.map') %></span>
<div id="map" style="height: 70vh;">
</div>
%= include '_map', with_map_header => 0, station_coordinates => stash('station_coordinates'), polyline_groups => stash('polyline_groups'), markers => stash('markers')
@@ -373,7 +372,7 @@
</div>
<div class="card-action">
<a class="action-undo blue-text" data-id="in_transit" data-checkints="<%= $journey->{timestamp}->epoch %>" style="margin-right: 0;">
- <i class="material-icons left" aria-hidden="true">undo</i> Checkin Rückgängig
+ <i class="material-icons left" aria-hidden="true">undo</i> <%= L('status.undo-checkin') %>
</a>
</div>
</div>
@@ -382,7 +381,7 @@
<div class="card" style="margin-top: 3em;">
<div class="card-content">
<i class="material-icons small right sync-failed-marker grey-text" style="display: none;">sync_problem</i>
- <span class="card-title">Ziel ändern?</span>
+ <span class="card-title"><%= L('status.change-destination') %></span>
<div class="targetlist">
% for my $station (@{$journey->{route_after}}) {
% my $is_dest = ($journey->{arr_name} and $station->[0] eq $journey->{arr_name});
@@ -410,19 +409,18 @@
</div>
<div class="card-action">
<a class="action-undo blue-text" data-id="in_transit" data-checkints="<%= $journey->{timestamp}->epoch %>" style="margin-right: 0;">
- <i class="material-icons left" aria-hidden="true">undo</i> Checkin Rückgängig
+ <i class="material-icons left" aria-hidden="true">undo</i> <%= L('status.undo-checkin') %>
</a>
</div>
</div>
% }
<p>
- Falls das Backend ausgefallen ist oder die Fahrt aus anderen
- Gründen verloren ging:
+ %= L('status.force-checkout-lead')
</p>
<p class="center-align">
<a class="action-checkout waves-light btn"
data-force="1" data-station="<%= $journey->{arr_name}
- %>">Ohne Echtzeitdaten auschecken</a>
+ %>"><%= L('status.force-checkout') %></a>
</p>
% }
</div>