summaryrefslogtreecommitdiff
path: root/index.pl
diff options
context:
space:
mode:
Diffstat (limited to 'index.pl')
-rwxr-xr-xindex.pl11
1 files changed, 7 insertions, 4 deletions
diff --git a/index.pl b/index.pl
index 90fb660..3809d20 100755
--- a/index.pl
+++ b/index.pl
@@ -213,7 +213,7 @@ sub get_departures {
lookbehind => 20,
datetime => DateTime->now( time_zone => 'Europe/Berlin' )
->subtract( minutes => $lookbehind ),
- lookahead => $lookbehind + 20,
+ lookahead => $lookbehind + 10,
);
return {
results => [ $status->results ],
@@ -700,10 +700,13 @@ get '/*station' => sub {
$self->render( 'landingpage', error => $status->{errstr} );
}
else {
- my @results = sort { $a->line cmp $b->line } @{ $status->{results} };
-
# You can't check into a train which terminates here
- @results = grep { $_->departure } @results;
+ my @results = grep { $_->departure } @{ $status->{results} };
+
+ @results = map { $_->[0] }
+ sort { $b->[1] <=> $a->[1] }
+ map { [$_, $_->sched_departure->epoch // $_->departure->epoch] } @results;
+
$self->render(
'departures',
ds100 => $status->{station_ds100},