summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog4
-rw-r--r--lib/Travel/Routing/DE/HAFAS.pm13
2 files changed, 14 insertions, 3 deletions
diff --git a/Changelog b/Changelog
index b5a30ce..5f5781d 100644
--- a/Changelog
+++ b/Changelog
@@ -1,3 +1,7 @@
+git HEAD
+
+ * HAFAS->new: Add arrival option
+
Travel::Routing::DE::HAFAS 0.02 - Sat Nov 25 2023
* hafas: Add -f / --full-route option
diff --git a/lib/Travel/Routing/DE/HAFAS.pm b/lib/Travel/Routing/DE/HAFAS.pm
index 3c768be..aa7e8b7 100644
--- a/lib/Travel/Routing/DE/HAFAS.pm
+++ b/lib/Travel/Routing/DE/HAFAS.pm
@@ -216,8 +216,9 @@ sub new {
my $req;
- my $date = ( $conf{datetime} // $now )->strftime('%Y%m%d');
- my $time = ( $conf{datetime} // $now )->strftime('%H%M%S');
+ my $date = ( $conf{datetime} // $now )->strftime('%Y%m%d');
+ my $time = ( $conf{datetime} // $now )->strftime('%H%M%S');
+ my $outFrwd = $conf{arrival} ? \0 : undef;
my ( $from_lid, $to_lid );
if ( $self->{from_stop} =~ m{ ^ [0-9]+ $ }x ) {
@@ -243,7 +244,7 @@ sub new {
numF => 6,
maxChg => undef,
minChgTime => undef,
- outFrwd => undef,
+ outFrwd => $outFrwd,
viaLocL => undef,
trfReq => {
cType => 'PK',
@@ -692,6 +693,12 @@ must be specified either by name or by EVA ID (e.g. 8000080 for Dortmund Hbf).
Destination stop, e.g. "Essen HBf" or "Alfredusbad, Essen (Ruhr)". The stop
must be specified either by name or by EVA ID (e.g. 8000080 for Dortmund Hbf).
+=item B<arrival> => I<bool>
+
+If true: request connections that arrive at the destination before the
+specified time. If false (default): request connections that leave at the
+origin after the specified time.
+
=item B<cache> => I<Cache::File object>
Store HAFAS replies in the provided cache object. This module works with