diff options
Diffstat (limited to 'lib/DBInfoscreen/Controller/Stationboard.pm')
-rw-r--r-- | lib/DBInfoscreen/Controller/Stationboard.pm | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/DBInfoscreen/Controller/Stationboard.pm b/lib/DBInfoscreen/Controller/Stationboard.pm index 79538a0..c3c720b 100644 --- a/lib/DBInfoscreen/Controller/Stationboard.pm +++ b/lib/DBInfoscreen/Controller/Stationboard.pm @@ -993,7 +993,8 @@ sub handle_request { # stops. This is a rare case, one point where it can be observed is # the TGV service at Frankfurt/Karlsruhe/Mannheim. if ( $route_info - and my @hafas_stations = @{ $route_info->{stations} } ) + and my @hafas_stations + = @{ $route_info->{stations} // [] } ) { if ( my @iris_stations = @{ $departures[-1]{route_pre_diff} } ) @@ -1059,7 +1060,7 @@ sub handle_request { } } } - if ( $route_info and @{ $route_info->{messages} } ) { + if ( $route_info and @{ $route_info->{messages} // [] } ) { my $him = $route_info->{messages}; my @him_messages; $departures[-1]{messages}{him} = $him; @@ -1174,6 +1175,11 @@ sub handle_request { { $linetype = 'ext'; } + elsif ( $departure->{train_line} + and $departure->{train_line} =~ m{^S\d} ) + { + $linetype = 'sbahn'; + } $self->render( '_train_details', |