diff options
author | Daniel Friesel <derf@finalrewind.org> | 2015-06-26 13:58:20 +0200 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2015-06-26 13:58:20 +0200 |
commit | 4a7eca2e34be18214cfeefa3962487ed521bca20 (patch) | |
tree | 2f68ebcfb6a9cdf871a3d89ae2e8ecf857047050 /bin/efa-m | |
parent | d42703ea3bde5fd383c96380918d6b0b0140a60a (diff) |
efa-m: implement -V / --track-via option
Diffstat (limited to 'bin/efa-m')
-rwxr-xr-x | bin/efa-m | 17 |
1 files changed, 14 insertions, 3 deletions
@@ -18,7 +18,7 @@ use Travel::Status::DE::EFA; my $efa_url = 'http://efa.vrr.de/vrr/XSLT_DM_REQUEST'; my ( $date, $time, $input_type, $list_lines, $offset, $relative_times ); my ($full_routes); -my ($filter_via); +my ( $filter_via, $track_via ); my ( $timeout, $developer_mode ); my ( @grep_lines, @grep_platforms ); my ( %edata, @edata_pre ); @@ -38,7 +38,8 @@ GetOptions( 'timeout=i' => \$timeout, 'u|efa-url=s' => \$efa_url, 'v|via=s' => \$filter_via, - 'V|version' => \&show_version, + 'V|track-via=s' => sub { $filter_via = $track_via = $_[1] }, + 'version' => \&show_version, 'devmode' => \$developer_mode, ) or show_help(1); @@ -219,6 +220,10 @@ sub show_results { $dtime .= ' CANCELED'; } } + elsif ($track_via) { + my $via = first { $_->name =~ m{$filter_via}io } $d->route_post; + $dtime .= ' → ' . $via->arr_time; + } if ( $d->delay ) { $dtime .= ' (+' . $d->delay . ')'; } @@ -334,7 +339,13 @@ Only show trains serving I<station> after the requseted stop. I<station> is matched against the "I<city> I<stop>" fields in each line's route. Regular expressions are also supported. -=item B<-V>, B<--version> +=item B<-V>, B<--track-via> I<station> + +Lik B<--via>: Only show trains serving I<station> after the requseted stop. +Also, show the arrival time at I<station> after the departure time at the +current stop. + +=item B<--version> Show version information. |