diff options
author | Daniel Friesel <derf@finalrewind.org> | 2022-07-27 13:54:20 +0200 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2022-07-27 13:54:20 +0200 |
commit | 2da48e05bef789e3d4f42588dbeb0ad4ca0a75d5 (patch) | |
tree | 18002f79c2fd4109bb3ba13cecd5c86374bfdf13 | |
parent | 52ff7565774049c6fa8189a36e40f8e01a6b2e71 (diff) |
move get_connecting_trains call from _checkeed_in to controller
-rwxr-xr-x | lib/Travelynx/Controller/Traveling.pm | 23 | ||||
-rw-r--r-- | templates/_checked_in.html.ep | 12 | ||||
-rw-r--r-- | templates/landingpage.html.ep | 1 |
3 files changed, 27 insertions, 9 deletions
diff --git a/lib/Travelynx/Controller/Traveling.pm b/lib/Travelynx/Controller/Traveling.pm index 6a53fe0..0493d25 100755 --- a/lib/Travelynx/Controller/Traveling.pm +++ b/lib/Travelynx/Controller/Traveling.pm @@ -17,9 +17,20 @@ use Travel::Status::DE::IRIS::Stations; sub homepage { my ($self) = @_; if ( $self->is_user_authenticated ) { + my $status = $self->get_user_status; + my @connecting_trains; + if ( $status->{checked_in} ) { + if ( defined $status->{arrival_countdown} + and $status->{arrival_countdown} < ( 20 * 60 ) ) + { + @connecting_trains = $self->get_connecting_trains(); + } + } $self->render( 'landingpage', version => $self->app->config->{version} // 'UNKNOWN', + status => $status, + connections => \@connecting_trains, with_autocomplete => 1, with_geolocation => 1 ); @@ -348,7 +359,17 @@ sub status_card { delete $self->stash->{layout}; if ( $status->{checked_in} ) { - $self->render( '_checked_in', journey => $status ); + my @connecting_trains; + if ( defined $status->{arrival_countdown} + and $status->{arrival_countdown} < ( 20 * 60 ) ) + { + @connecting_trains = $self->get_connecting_trains(); + } + $self->render( + '_checked_in', + journey => $status, + connections => \@connecting_trains + ); } elsif ( $status->{cancellation} ) { my @connecting_trains = $self->get_connecting_trains( diff --git a/templates/_checked_in.html.ep b/templates/_checked_in.html.ep index bd1ddc6..f2b6eba 100644 --- a/templates/_checked_in.html.ep +++ b/templates/_checked_in.html.ep @@ -193,14 +193,12 @@ </ul> </p> % } - % if (defined $journey->{arrival_countdown} and $journey->{arrival_countdown} < (20*60)) { - % if (my @connections = get_connecting_trains()) { - <span class="card-title" style="margin-top: 2ex;">Verbindungen</span> - % if ($journey->{arrival_countdown} < 0) { - <p>Zug auswählen zum Einchecken mit Zielwahl.</p> - % } - %= include '_connections', connections => \@connections, checkin_from => $journey->{arrival_countdown} < 0 ? $journey->{arr_ds100} : undef; + % if (my @connections = @{stash('connections') // []}) { + <span class="card-title" style="margin-top: 2ex;">Verbindungen</span> + % if ($journey->{arrival_countdown} < 0) { + <p>Zug auswählen zum Einchecken mit Zielwahl.</p> % } + %= include '_connections', connections => \@connections, checkin_from => $journey->{arrival_countdown} < 0 ? $journey->{arr_ds100} : undef; % } % if (defined $journey->{arrival_countdown} and $journey->{arrival_countdown} <= 0) { <p style="margin-top: 2ex;"> diff --git a/templates/landingpage.html.ep b/templates/landingpage.html.ep index 61d136e..3e7d761 100644 --- a/templates/landingpage.html.ep +++ b/templates/landingpage.html.ep @@ -13,7 +13,6 @@ % } <div class="row"> <div class="col s12 statuscol"> - % my $status = get_user_status(); % if ($status->{checked_in}) { %= include '_checked_in', journey => $status; % } |