Merge remote-tracking branch 'github/main'
All checks were successful
Perl Tests / perl (5.20-buster) (push) Successful in 4m23s
Perl Tests / perl (latest) (push) Successful in 3m27s
Perl Tests / perl (threaded) (push) Successful in 3m19s

This commit is contained in:
Kumi 2024-10-14 21:25:12 +02:00
commit 95e5b593db
Signed by: kumi
GPG key ID: ECBCC9082395383F
2 changed files with 70 additions and 6 deletions

View file

@ -121,6 +121,8 @@ sub list_candidates {
} }
} }
my @abo_journeys
= grep { $_->{delay} >= 20 and $_->{delay} < 60 } @journeys;
@journeys = grep { $_->{delay} >= 60 or $_->{connection_missed} } @journeys; @journeys = grep { $_->{delay} >= 60 or $_->{connection_missed} } @journeys;
my @cancelled = $self->journeys->get( my @cancelled = $self->journeys->get(
@ -155,7 +157,8 @@ sub list_candidates {
json => { json => [@journeys] }, json => { json => [@journeys] },
any => { any => {
template => 'passengerrights', template => 'passengerrights',
journeys => [@journeys] journeys => [@journeys],
abo_journeys => [@abo_journeys]
} }
); );
} }

View file

@ -2,10 +2,10 @@
<div class="row"> <div class="row">
<div class="col s12"> <div class="col s12">
<p> <p>
Gemäß der Fahrgastrechte im Eisenbahnverkehr besteht ab 60 Minuten Ab 60 Minuten Verspätung am Ziel besteht in einigen Fällen ein
Verspätung am Ziel ein Entschädigungsanspruch gegenüber dem Entschädigungsanspruch gegenüber dem Eisenbahnverkehrsunternehmen.
Eisenbahnverkehrsunternehmen. Dieser kann mit dem Dieser kann mit dem Fahrgastrechteformular oder online geltend
Fahrgastrechteformular geltend gemacht werden. gemacht werden.
</p> </p>
<p> <p>
Die folgenden Zugfahrten sind wahrscheinliche Kandidaten dafür. Die folgenden Zugfahrten sind wahrscheinliche Kandidaten dafür.
@ -73,3 +73,64 @@
</table> </table>
</div> </div>
</div> </div>
<div class="row">
<div class="col s12">
<p>
Bei Abo-Tickets besteht teilweise die Möglichkeit, bereits ab 20
Minuten Verspätung Fahrten gesammelt zu Entschädigungszwecken
einzureichen. Die folgenden Zugfahrten sind Kandidaten dafür.
Fahrten mit einer Verspätung von 60 Minuten oder mehr werden hier
nicht aufgeführt.
</p>
</div>
</div>
<div class="row">
<div class="col s12">
<table class="striped">
<thead>
<tr>
<th>Datum</th>
<th>Zug</th>
<th>Verspätung</th>
</tr>
</thead>
<tbody>
% for my $journey (@{$abo_journeys}) {
% my $detail_link = '/journey/' . $journey->{id};
<tr>
<td><%= $journey->{sched_departure}->strftime('%d.%m.%Y') %></td>
<td><a href="<%= $detail_link %>">
<%= $journey->{type} %> <%= $journey->{line} // $journey->{no} %>
→ <%= $journey->{to_name} %>
% if ($journey->{connection}) {
% $detail_link = '/journey/' . $journey->{connection}{id};
</a><br/><a href="<%= $detail_link %>">
<%= $journey->{connection}{type} %> <%= $journey->{connection}{line} // $journey->{connection}{no} %>
→ <%= $journey->{connection}{to_name} %>
% }
</a></td>
<td>
% if ($journey->{cancelled}) {
% if ($journey->{has_substitute}) {
Ausfall, Ersatzverbindung
%= sprintf('%+d', $journey->{substitute_delay})
% }
% else {
Ausfall ohne Ersatzverbindung
% }
% }
% elsif ($journey->{connection}) {
%= sprintf('%+d, ggf. Anschluss verpasst', $journey->{delay})
% }
% else {
%= sprintf('%+d', $journey->{delay})
% }
</td>
</tr>
% }
</tbody>
</table>
</div>
</div>