summaryrefslogtreecommitdiff
path: root/lib/Travelynx/Controller
diff options
context:
space:
mode:
authorBirte Kristina Friesel <derf@finalrewind.org>2023-08-15 08:37:14 +0200
committerBirte Kristina Friesel <derf@finalrewind.org>2023-08-15 08:37:14 +0200
commitdfe820952f13ccd792130758303c338dc94d3bc9 (patch)
treee2be5abe46e037a5526f82a8e6f871755a8258e3 /lib/Travelynx/Controller
parent8f377d4ee5e279e14e26e14857081aa0c8f3184b (diff)
station board: add iris / hafas links
Diffstat (limited to 'lib/Travelynx/Controller')
-rwxr-xr-xlib/Travelynx/Controller/Traveling.pm16
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/Travelynx/Controller/Traveling.pm b/lib/Travelynx/Controller/Traveling.pm
index b64fcfa..4d2f22d 100755
--- a/lib/Travelynx/Controller/Traveling.pm
+++ b/lib/Travelynx/Controller/Traveling.pm
@@ -907,9 +907,17 @@ sub station {
$promise->then(
sub {
my ($status) = @_;
-
+ my $api_link;
my @results;
+
if ($use_hafas) {
+
+ my $iris_eva = List::Util::min grep { $_ >= 1000000 }
+ @{ $status->station->{evas} // [] };
+ if ($iris_eva) {
+ $api_link = '/s/' . $iris_eva;
+ }
+
my $now = $self->now->epoch;
@results = map { $_->[0] }
sort { $b->[1] <=> $a->[1] }
@@ -928,6 +936,9 @@ sub station {
};
}
else {
+
+ $api_link = '/s/' . $status->{station_eva} . '?hafas=1';
+
# You can't check into a train which terminates here
@results = grep { $_->departure } @{ $status->{results} };
@@ -991,6 +1002,7 @@ sub station {
user_status => $user_status,
can_check_out => $can_check_out,
connections => $connecting_trains,
+ api_link => $api_link,
title => "travelynx: $status->{station_name}",
);
}
@@ -1005,6 +1017,7 @@ sub station {
related_stations => $status->{related_stations},
user_status => $user_status,
can_check_out => $can_check_out,
+ api_link => $api_link,
title => "travelynx: $status->{station_name}",
);
}
@@ -1020,6 +1033,7 @@ sub station {
related_stations => $status->{related_stations},
user_status => $user_status,
can_check_out => $can_check_out,
+ api_link => $api_link,
title => "travelynx: $status->{station_name}",
);
}