move get_connecting_trains call from _checkeed_in to controller

This commit is contained in:
Daniel Friesel 2022-07-27 13:54:20 +02:00
parent 52ff756577
commit 2da48e05be
No known key found for this signature in database
GPG key ID: 100D5BFB5166E005
3 changed files with 27 additions and 9 deletions

View file

@ -17,9 +17,20 @@ use Travel::Status::DE::IRIS::Stations;
sub homepage { sub homepage {
my ($self) = @_; my ($self) = @_;
if ( $self->is_user_authenticated ) { 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( $self->render(
'landingpage', 'landingpage',
version => $self->app->config->{version} // 'UNKNOWN', version => $self->app->config->{version} // 'UNKNOWN',
status => $status,
connections => \@connecting_trains,
with_autocomplete => 1, with_autocomplete => 1,
with_geolocation => 1 with_geolocation => 1
); );
@ -348,7 +359,17 @@ sub status_card {
delete $self->stash->{layout}; delete $self->stash->{layout};
if ( $status->{checked_in} ) { 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} ) { elsif ( $status->{cancellation} ) {
my @connecting_trains = $self->get_connecting_trains( my @connecting_trains = $self->get_connecting_trains(

View file

@ -193,15 +193,13 @@
</ul> </ul>
</p> </p>
% } % }
% if (defined $journey->{arrival_countdown} and $journey->{arrival_countdown} < (20*60)) { % if (my @connections = @{stash('connections') // []}) {
% if (my @connections = get_connecting_trains()) {
<span class="card-title" style="margin-top: 2ex;">Verbindungen</span> <span class="card-title" style="margin-top: 2ex;">Verbindungen</span>
% if ($journey->{arrival_countdown} < 0) { % if ($journey->{arrival_countdown} < 0) {
<p>Zug auswählen zum Einchecken mit Zielwahl.</p> <p>Zug auswählen zum Einchecken mit Zielwahl.</p>
% } % }
%= include '_connections', connections => \@connections, checkin_from => $journey->{arrival_countdown} < 0 ? $journey->{arr_ds100} : undef; %= include '_connections', connections => \@connections, checkin_from => $journey->{arrival_countdown} < 0 ? $journey->{arr_ds100} : undef;
% } % }
% }
% if (defined $journey->{arrival_countdown} and $journey->{arrival_countdown} <= 0) { % if (defined $journey->{arrival_countdown} and $journey->{arrival_countdown} <= 0) {
<p style="margin-top: 2ex;"> <p style="margin-top: 2ex;">
Der automatische Checkout erfolgt wegen gelegentlich veralteter Der automatische Checkout erfolgt wegen gelegentlich veralteter

View file

@ -13,7 +13,6 @@
% } % }
<div class="row"> <div class="row">
<div class="col s12 statuscol"> <div class="col s12 statuscol">
% my $status = get_user_status();
% if ($status->{checked_in}) { % if ($status->{checked_in}) {
%= include '_checked_in', journey => $status; %= include '_checked_in', journey => $status;
% } % }