travelynx/templates/journey.html.ep

127 lines
3.6 KiB
Text
Raw Normal View History

2019-03-17 17:34:33 +00:00
% if ($error) {
<div class="row">
<div class="col s12">
<div class="card red darken-4">
<div class="card-content white-text">
<span class="card-title">Fehler</span>
<p>Zugfahrt nicht gefunden.<p/>
</div>
</div>
</div>
</div>
% }
% else {
<div class="row">
<div class="col s12">
<p>
2019-03-19 20:23:06 +00:00
% if ($journey->{cancelled}) {
Ausgefallene Fahrt von
% }
% else {
Fahrt von
% }
2019-03-17 17:34:33 +00:00
<b><%= $journey->{from_name} %></b>
nach
<b><%= $journey->{to_name} %></b>
am
<b><%= $journey->{sched_departure}->strftime('%d.%m.%Y') %></b>
</p>
<table class="striped">
<tr>
<th scope="row">Zug</th>
<td>
<%= $journey->{type} %> <%= $journey->{no} %>
% if ($journey->{line}) {
2019-03-20 17:20:23 +00:00
(Linie <%= $journey->{line} %>)
2019-03-17 17:34:33 +00:00
% }
</td>
</tr>
<tr>
<th scope="row">Abfahrt</th>
<td>
2019-03-19 20:23:06 +00:00
% if ($journey->{cancelled}) {
<i class="material-icons">cancel</i>
(Plan: <%= $journey->{sched_departure}->strftime('%H:%M'); %>)
% }
% elsif ($journey->{rt_departure} != $journey->{sched_departure}) {
2019-03-17 17:34:33 +00:00
%= $journey->{rt_departure}->strftime('%H:%M');
2019-03-20 16:50:14 +00:00
(<%= sprintf('%+d', ($journey->{rt_departure}->epoch - $journey->{sched_departure}->epoch) / 60) %>,
2019-03-17 17:34:33 +00:00
Plan: <%= $journey->{sched_departure}->strftime('%H:%M'); %>)
% }
% else {
%= $journey->{sched_departure}->strftime('%H:%M');
% }
</td>
</tr>
<tr>
<th scope="row">Ankunft</th>
<td>
2019-03-19 20:23:06 +00:00
% if ($journey->{cancelled}) {
<i class="material-icons">cancel</i>
% if ($journey->{sched_arrival}->epoch != 0) {
(Plan: <%= $journey->{sched_arrival}->strftime('%H:%M'); %>)
% }
% }
% elsif ($journey->{rt_arrival}->epoch == 0 and $journey->{sched_arrival}->epoch == 0) {
2019-03-17 17:34:33 +00:00
<i class="material-icons">timer_off</i>
% }
% elsif ($journey->{rt_arrival} != $journey->{sched_arrival}) {
%= $journey->{rt_arrival}->strftime('%H:%M');
2019-03-20 16:50:14 +00:00
(<%= sprintf('%+d', ($journey->{rt_arrival}->epoch - $journey->{sched_arrival}->epoch) / 60) %>,
2019-03-17 17:34:33 +00:00
Plan: <%= $journey->{sched_arrival}->strftime('%H:%M'); %>)
% }
% else {
%= $journey->{sched_arrival}->strftime('%H:%M');
% }
</td>
</tr>
2019-03-20 17:20:23 +00:00
<tr>
<th scope="row">Entfernung</th>
<td>
% my $distance = get_travel_distance($journey->{from_name}, $journey->{to_name}, $journey->{route});
% my $beeline = get_travel_distance($journey->{from_name}, $journey->{to_name}, [$journey->{from_name}, $journey->{to_name}]);
% if ($distance > 0.1) {
ca. <%= sprintf('%.f', $distance) %> km
% }
(Luftlinie: <%= sprintf('%.f', $beeline) %> km)
</td>
</tr>
2019-03-17 17:34:33 +00:00
<tr>
<th scope="row">Meldungen</th>
<td>
% for my $message (@{$journey->{messages} // []}) {
% my ($ts, $msg) = @{$message};
<%= $ts->strftime('%d.%m.%Y %H:%M') %> : <%= $msg %><br/>
2019-03-17 17:34:33 +00:00
% }
</td>
</tr>
<tr>
<th scope="row">Route</th>
<td>
% my $within = 0;
% my $at_startstop = 0;
% for my $station (@{$journey->{route}}) {
% if ($station eq $journey->{from_name}) {
% $within = 1; $at_startstop = 1;
% }
% elsif ($station eq $journey->{to_name}) {
% $within = 0; $at_startstop = 1;
% }
% else {
% $at_startstop = 0;
% }
% if ($at_startstop or $within) {
<%= $station %>
% }
% else {
<span style="color: #666666;"><%= $station %></span>
% }
<br/>
% }
</td>
</tr>
</table>
</div>
</div>
% }