summaryrefslogtreecommitdiff
path: root/templates/landingpage.html.ep
diff options
context:
space:
mode:
Diffstat (limited to 'templates/landingpage.html.ep')
-rw-r--r--templates/landingpage.html.ep86
1 files changed, 73 insertions, 13 deletions
diff --git a/templates/landingpage.html.ep b/templates/landingpage.html.ep
index 5f69fd1..cd14f5c 100644
--- a/templates/landingpage.html.ep
+++ b/templates/landingpage.html.ep
@@ -14,26 +14,84 @@
<div class="row">
<div class="col s12">
% my $status = get_user_status();
+ % my $now = DateTime->now(time_zone => 'Europe/Berlin');
+ % my $dep_wait = ($status->{real_departure}->epoch - $now->epoch)/60;
+ % my $arr_wait = undef;
+ % if ($status->{real_arrival}->epoch) {
+ % $arr_wait = ($status->{real_arrival}->epoch - $now->epoch)/60;
+ % }
% if ($status->{checked_in}) {
<div class="card green darken-4">
<div class="card-content white-text">
- <span class="card-title">Hallo, <%= current_user()->{name} %>!</span>
- <p>Du bist gerade eingecheckt in
- <%= $status->{train_type} %> <%= $status->{train_no} %>
- ab <%= $status->{station_name} %>.
- % if ($status->{timestamp_delta} < 180) {
- <a class="action-undo" data-id="<%= $status->{action_id} %>"><i class="material-icons">undo</i> Rückgängig</a>
+ <span class="card-title">Eingecheckt</span>
+ <p>
+ In <b><%= $status->{train_type} %> <%= $status->{train_no} %></b>
+ % if ($status->{arr_name}) {
+ von <b><%= $status->{dep_name} %></b> nach <b><%= $status->{arr_name} %></b>.
% }
- </p>
- <p>Bei Ankunft: Station auswählen zum Auschecken.</p>
+ % else {
+ ab <b><%= $status->{dep_name} %></b>.
+ % }
+ </p>
+ <p>
+ Abfahrt
+ % if ($dep_wait > 0) {
+ in <%= int(($status->{real_departure}->epoch - $now->epoch)/60) %> Minute<%= $dep_wait >= 2 ? 'n' : '' %>
+ % }
+ um <b><%= $status->{real_departure}->strftime('%H:%M') %></b>
+ % if ($status->{real_departure}->epoch != $status->{sched_departure}->epoch) {
+ (+<%= int(($status->{real_departure}->epoch - $status->{sched_departure}->epoch)/60) %>)
+ % }
+ </p>
+ <p>
+ % if ($status->{real_arrival}->epoch) {
+ Voraussichtliche Ankunft um <b><%= $status->{real_arrival}->strftime('%H:%M') %></b>
+ % if ($status->{real_arrival}->epoch != $status->{sched_arrival}->epoch) {
+ (+<%= int(($status->{real_arrival}->epoch - $status->{sched_arrival}->epoch)/60) %>)
+ % }
+ % }
+ % else {
+ Ankunft: noch nicht bekannt
+ % }
+ </p>
+ <p>
+ <b>Achtung:</b> Automatischer Checkout ist noch nicht
+ implementiert. Bitte spätestens eine Stunde nach Ankunft
+ am Ziel manuell auschecken.
+ </p>
+ % if ($status->{arr_name}) {
+ <p>Zielstation ändern?</p>
+ % }
+ % else {
+ <p>Zielstation wählen:</p>
+ % }
<table>
<tbody>
% my $is_after = 0;
% for my $station (@{$status->{route_after}}) {
- <tr><td><a class="action-checkout" data-station="<%= $station %>"><%= $station %></a></td></tr>
+ % if ($status->{arr_name} and $station eq $status->{arr_name}) {
+ <tr><td><b><a class="action-checkout" data-station="<%= $station %>"><%= $station %></a></b></td></tr>
+ % }
+ % else {
+ <tr><td><a class="action-checkout" data-station="<%= $station %>"><%= $station %></a></td></tr>
+ % }
% }
</tbody>
</table>
+ % if ($status->{arr_name}) {
+ <p>
+ Falls das Backend ausgefallen ist oder der Zug aus anderen
+ Gründen verloren ging: <a class="action-checkout"
+ data-force="1" data-station="<%= $status->{arr_name}
+ %>">Ohne Echtzeitdaten in <%= $status->{arr_name} %>
+ auschecken</a>.
+ </p>
+ % }
+ </div>
+ <div class="card-action">
+ <a class="action-undo" data-id="in_transit">
+ <i class="material-icons">undo</i> Checkin Rückgängig?
+ </a>
</div>
</div>
% }
@@ -44,9 +102,6 @@
<p>Prinzipiell wärest du nun eingecheckt in
<%= $status->{train_type} %> <%= $status->{train_no} %>
ab <%= $status->{station_name} %>, doch dieser Zug fällt aus.
- % if ($status->{timestamp_delta} < 180) {
- <a class="action-undo" data-id="<%= $status->{action_id} %>"><i class="material-icons">undo</i> Checkinversuch rückgängig</a>
- % }
</p>
<p>Falls du den Zugausfall z.B. für ein Fahrgastrechteformular
dokumentieren möchtest, wähle bitte jetzt deine geplante
@@ -62,6 +117,11 @@
</tbody>
</table>
</div>
+ <div class="card-action">
+ <a class="action-undo" data-id="in_transit">
+ <i class="material-icons">undo</i> Checkinversuch Rückgängig?
+ </a>
+ </div>
</div>
% }
% else {
@@ -91,7 +151,7 @@
</div>
</div>
<h1>Letzte Fahrten</h1>
- %= include '_history_trains', journeys => [get_user_travels(limit => 1)];
+ %= include '_history_trains', journeys => [get_user_travels(limit => 5)];
% }
% else {
<div class="row">