2018-09-02 19:41:33 +00:00
<div class="row">
2019-10-19 08:15:18 +00:00
<div class="col s12 center-align">
<b><%= $station %></b>
% for my $related_station (sort { $a->{name} cmp $b->{name} } @{$related_stations}) {
<br/><%= $related_station->{name} %>
% }
</div>
2019-05-20 17:15:21 +00:00
</div>
2023-08-15 06:37:14 +00:00
% if ($api_link) {
<div class="row">
% if (param('hafas')) {
<div class="col s12 center-align">
<a href="<%= $api_link %>">Schienenverkehr</a>
</div>
<div class="col s12 center-align">
→ Nahverkehr ←
</div>
% }
% else {
<div class="col s12 center-align">
→ Schienenverkehr ←
</div>
<div class="col s12 center-align">
<a href="<%= $api_link %>">Nahverkehr</a>
</div>
% }
</div>
% }
2019-05-20 17:15:21 +00:00
% my $have_connections = 0;
2023-06-08 08:20:13 +00:00
% if ($user_status->{checked_in}) {
2019-05-20 17:15:21 +00:00
<div class="row">
<div class="col s12">
2019-05-16 14:10:53 +00:00
<div class="card">
<div class="card-content">
2018-09-02 19:41:33 +00:00
<span class="card-title">Aktuell eingecheckt</span>
2023-06-08 08:20:13 +00:00
<p>In <%= $user_status->{train_type} %> <%= $user_status->{train_no} %>
2023-07-23 10:50:46 +00:00
% if ( $user_status->{arr_name}) {
von <%= $user_status->{dep_name} %> nach <%= $user_status->{arr_name} %>
% }
% else {
ab <%= $user_status->{dep_name} %>
% }
</p>
2018-09-02 19:41:33 +00:00
</div>
<div class="card-action">
2023-06-08 08:20:13 +00:00
% if ($can_check_out) {
<a class="action-undo" data-id="in_transit" data-checkints="<%= $user_status->{timestamp}->epoch %>" style="margin-right: 0;">
<i class="material-icons left" aria-hidden="true">undo</i> Rückgängig
</a>
<a class="action-checkout right" data-station="<%= $eva %>" data-force="1">
Hier auschecken
</a>
% }
% else {
<a class="action-undo" data-id="in_transit" data-checkints="<%= $user_status->{timestamp}->epoch %>" style="margin-right: 0;">
<i class="material-icons left" aria-hidden="true">undo</i> Rückgängig
</a>
<a class="action-checkout right" data-station="<%= $eva %>" data-force="1">
<i class="material-icons left">gps_off</i>
Hier auschecken
</a>
% }
2018-09-02 19:41:33 +00:00
</div>
</div>
2019-05-20 17:15:21 +00:00
</div>
</div>
% }
2023-06-08 08:20:13 +00:00
% elsif ($user_status->{cancellation} and $station eq $user_status->{cancellation}{dep_name}) {
2020-02-17 20:13:07 +00:00
<div class="row">
<div class="col s12">
2023-06-08 08:20:13 +00:00
%= include '_cancelled_departure', journey => $user_status->{cancellation};
2020-02-17 20:13:07 +00:00
</div>
</div>
% }
2023-06-08 08:20:13 +00:00
% elsif ($user_status->{timestamp_delta} < 180) {
2019-05-20 17:15:21 +00:00
<div class="row">
<div class="col s12">
2023-06-08 08:20:13 +00:00
%= include '_checked_out', journey => $user_status;
2019-05-20 17:15:21 +00:00
</div>
2018-09-02 19:41:33 +00:00
</div>
2019-05-20 17:15:21 +00:00
% }
2022-07-26 11:19:29 +00:00
% elsif (not param('train') and my @connections = @{stash('connections') // []}) {
2019-05-20 17:15:21 +00:00
% $have_connections = 1;
<div class="row">
<div class="col s12">
2023-08-14 10:24:26 +00:00
<p>Häufig genutzte Verbindungen – Fahrt auswählen zum Einchecken mit Zielwahl</p>
2019-12-26 21:48:50 +00:00
%= include '_connections', connections => \@connections, checkin_from => $eva;
2019-05-20 17:15:21 +00:00
</div>
</div>
% }
2018-09-02 19:41:33 +00:00
<div class="row">
2019-03-08 17:02:18 +00:00
<div class="col s12">
2019-05-20 17:15:21 +00:00
<p>
% if ($have_connections) {
Alle Abfahrten –
% }
2023-06-08 08:20:13 +00:00
% if ($user_status->{checked_in} and not $can_check_out) {
2023-07-23 10:50:46 +00:00
Diese Station liegt nicht auf der Route deines <a href="/">aktuellen Checkins</a>.
2023-06-08 08:20:13 +00:00
Falls du aktuell nicht mit <b><%= $user_status->{train_type} %> <%= $user_status->{train_no} %></b> unterwegs bist, kannst du den Checkin rückgängig machen.
Falls es sich bei <b><%= $station %></b> um einen nicht in den Echtzeitdaten abgebildeten Zusatzhalt handelt, kannst du hier auchecken.
Da travelynx nicht weiß, welcher der beiden Fälle zutrifft, sind bis dahin keine neuen Checkins möglich.
% }
2023-07-23 10:50:46 +00:00
% elsif ($user_status->{checked_in} and not $user_status->{arr_eva}) {
Du bist bereits eingecheckt und hast noch kein Fahrtziel angegeben.
Bitte <a href="/">wähle zunächst ein Ziel</a>.
Neue Checkins sind erst nach Ankunft der aktuellen Fahrt möglich.
% }
% elsif ($user_status->{checked_in} and $user_status->{arrival_countdown} > 0) {
Deine aktuelle Fahrt ist <a href="/">noch unterwegs</a>.
Ein neuer Checkin ist erst nach Ankunft am ausgewählten Ziel möglich.
% }
2023-06-08 08:20:13 +00:00
% elsif (@{$results}) {
2023-08-14 10:24:26 +00:00
Fahrt auswählen zum Einchecken.
2019-05-20 17:15:21 +00:00
% }
% else {
Keine Abfahrten gefunden. Ein Checkin ist frühestens 30 Minuten vor
und maximal 120 Minuten nach Abfahrt möglich.
% }
</p>
2023-07-23 10:50:46 +00:00
% if (not $user_status->{checked_in} or ($can_check_out and $user_status->{arr_eva} and $user_status->{arrival_countdown} <= 0)) {
2023-06-08 08:20:13 +00:00
% if ($hafas) {
%= include '_departures_hafas', results => $results;
% }
% else {
%= include '_departures_iris', results => $results;
% }
2023-03-27 19:03:25 +00:00
% }
2019-03-08 17:02:18 +00:00
</div>
2018-09-02 19:41:33 +00:00
</div>