blob: 58bdb027d8ac5f411178be888ad7f6eaf1559425 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
<ul class="collection departures">
% my $orientation_bar_shown = param('train');
% my $now_epoch = now->epoch;
% for my $result (@{$results}) {
% my $row_class = '';
% my $link_class = 'action-checkin';
% if ($result->is_cancelled) {
% $row_class = "cancelled";
% $link_class = 'action-cancelled-from';
% }
% if (not $orientation_bar_shown and $result->datetime->epoch < $now_epoch) {
% $orientation_bar_shown = 1;
<li class="collection-item" id="now">
<strong class="dep-time">
%= now->strftime('%H:%M')
</strong>
<strong>— Anfragezeitpunkt —</strong>
</li>
% }
<li class="collection-item <%= $link_class %> <%= $row_class %>"
data-station="<%= $result->station_eva %>"
data-train="<%= $result->id %>"
data-ts="<%= ($result->sched_datetime // $result->datetime)->epoch %>"
>
<span class="dep-time">
%= $result->datetime->strftime('%H:%M')
% if ($result->delay) {
(<%= sprintf('%+d', $result->delay) %>)
% }
% elsif (not defined $result->delay and not $result->is_cancelled) {
<i class="material-icons" aria-label="Keine Echtzeitdaten vorhanden" style="font-size: 16px;">gps_off</i>
% }
</span>
<a class="dep-line <%= (split(/ /, $result->line))[0] %>">
%= $result->line
</a>
<span class="dep-dest">
%= $result->destination
% for my $checkin (@{$checkin_by_train->{$result->id} // []}) {
<span class="followee-checkin">
<i class="material-icons tiny">people</i> <%= $checkin->{followee_name} %> → <%= $checkin->{arr_name} // '???' %>
</span>
% }
</span>
</li>
% }
</ul>
|