summaryrefslogtreecommitdiff
path: root/templates/wagenreihung.html.ep
blob: 3d47466289d7cfd3d774527e7e3f62f75f32747a (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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
% if ($wr->errstr) {
  <div class="container">
    <div class="error">
      <strong>Fehler bei der Abfrage der Wagenreihung:</strong>
      <%= $wr->errstr %>
    </div>
  </div>
% }
% else {
  <div class="container">
    <div style="text-align: center;">
%=    join(' / ', map { $wr->train_type . ' ' . $_ } $wr->train_numbers )
    </div>
    <div style="text-align: center;">
%=    join( ' / ', $wr->origins )
      →
%=    join( ' / ', map { $_->{name} } $wr->destinations )
    </div>
    <%= $wr->station_name %> Gleis <%= $wr->platform %><br/>
    Zugtyp: <%= $wr->train_subtype // 'IC?' %>
  </div>
  </div>
%   if ($wr->train_type ne 'ICE') {
    <div class="container">
      <div class="warning">
        <strong>⚠ Keine zuverlässigen Daten vorhanden.</strong>
        IC/EC-Wagenreihungen werden vom Backend noch nicht offiziell unterstützt.
        Sowohl die hier angegebenen Daten als auch die am Bahnsteig angezeigte
        Wagenreihung können fehlerhaft sein.
      </div>
    </div>
%   }
  <div class="container">
    <div style="position: relative; width: 100%; height: 70ex;">
%     if (not $wr->has_bad_wagons) {
%       for my $section ($wr->sections) {
          <div style="position: absolute; left: 1em; width: 2em;
          top: <%= $section->{start_percent} %>%; bottom: <%= 100 - $section->{end_percent} %>%; text-align: center;">
%=          $section->{name}
          </div>
%       }
%     }
%     for my $wagon ($wr->wagons) {
%       my $bg = '';
%       if ($wagon->is_first_class) {
%         $bg = 'background-color: #ffff99;';
%       }
%       if ($wagon->is_locomotive or $wagon->is_powercar) {
%         $bg = 'background-color: #cccccc;';
%       }
        <div style="position: absolute; left: 6em;
        top: <%= $wagon->{position}{start_percent} %>%; bottom: <%= 100 - $wagon->{position}{end_percent} %>%;">
%         if ($wr->has_bad_wagons) {
%         }
%         elsif ($wr->direction == 100) {
            ↓
%         }
%         else {
            ↑
%         }
        </div>
        <div style="position: absolute; left: 3em;
        top: <%= $wagon->{position}{start_percent} %>%; bottom: <%= 100 - $wagon->{position}{end_percent} %>%;
        min-width: 2em; text-align: right;
        border: 1px solid black; padding-left: 0.2em; padding-right: 0.2em; <%= $bg %>">
%         if ($wagon->is_locomotive or $wagon->is_powercar) {
            LOK
%         }
%         else {
%=          $wagon->number // '?'
%         }
        </div>
        <div style="position: absolute; left: 7em; right: 0em;
        top: <%= $wagon->{position}{start_percent} %>%; bottom: <%= 100 - $wagon->{position}{end_percent} %>%;">
%         if ($wagon->is_first_class) {
            <span style="display: inline-block; width: 0.8em; text-align: center; color: #ffffff; background-color: #666666; border: 1px solid #666666;">1</span>
%         }
%         if ($wagon->is_second_class) {
            <span style="display: inline-block; width: 0.8em; text-align: center; color: #666666; border: 1px solid #666666;">2</span>
%         }
%         if ($wagon->has_accessibility) {
            <i class="material-icons">accessible</i>
%         }
%         if ($wagon->has_bistro) {
            <i class="material-icons">restaurant</i>
%         }
%         if ($wagon->has_compartments) {
            <!--<i class="material-icons">folder</i>-->
%         }
%         if ($wagon->has_quiet_area) {
            <i class="material-icons">volume_off</i>
%         }
%         if ($wagon->has_phone_area) {
            <i class="material-icons">smartphone</i>
%         }
%         if ($wagon->has_family_area) {
            <i class="material-icons">people</i>
%         }
%         if ($wagon->has_bahn_comfort) {
            <i class="material-icons">star</i>
%         }
%         if ($wagon->is_interregio) {
            
%         }
          <span style="color: #999999;">
%=          $wagon->type
          </span>
        </div>
%     }
      </div>
<!--  <div>
      Legende: ♿ Behindertengerechte Ausstattung / 🍴 Bistro/Restaurant / 🚪 Abteile vorhanden
    </div>
-->
    <div>
      Angaben ohne Gewähr – Echtzeitdaten sind möglicherweise nicht berücksichtigt.
    </div>

  </div>
% }