From 890fb5128047594a327f4d0ef7c40f768d36b568 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Mon, 3 Mar 2014 13:28:08 +0100 Subject: add -f/--full-route option (show all interemdiate stops) --- Changelog | 1 + bin/efa | 13 +++++++++++++ lib/Travel/Routing/DE/EFA.pm | 5 ++++- 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/Changelog b/Changelog index 2b0ed68..b05c727 100644 --- a/Changelog +++ b/Changelog @@ -2,6 +2,7 @@ git HEAD * Improve error message for unparsable (or missing) route data * Add option to specify maximum number of connections + * efa: add -f / --full-route option Travel::Routing::DE::VRR 2.04 - Tue Jan 07 2014 diff --git a/bin/efa b/bin/efa index dcd2b41..cbc384a 100755 --- a/bin/efa +++ b/bin/efa @@ -131,6 +131,13 @@ sub display_connection { $c->train_line, $c->train_destination, ); + if ( $opt->{'full-route'} ) { + for my $via_stop ( $c->via ) { + printf( "%-5s %-30s %s\n", + $via_stop->[1], $via_stop->[2], $via_stop->[3] ); + } + } + printf( "%-5s an %s\n\n", $c->arrival_time, $c->arrival_stop_and_platform, ); @@ -152,6 +159,7 @@ GetOptions( exclude|e=s@ extended-info|E from=s@{2} + full-route|f help|h ignore-info|I:s max-change|m=i @@ -328,6 +336,11 @@ schnellbus, seilbahn, schiff, ast, sonstige Display duration, ticket class and price for each route (if available) +=item B<-f>|B<--full-route> + +Display intermediate stops (with time and platform) of each train. Note that +these are not always available. + =item B<-m>|B<--max-change> I Print connections with at most I interchanges diff --git a/lib/Travel/Routing/DE/EFA.pm b/lib/Travel/Routing/DE/EFA.pm index 4047306..1b00300 100644 --- a/lib/Travel/Routing/DE/EFA.pm +++ b/lib/Travel/Routing/DE/EFA.pm @@ -411,6 +411,9 @@ sub new { ); } + # $ref->{config}->{rm_base} //= 'http://efa.vrr.de/vrr/'; + # $ref->{config}->{sm_base} //= 'http://efa.vrr.de/download/envmaps/'; + $ref->create_post; if ( not( defined $conf{submit} and $conf{submit} == 0 ) ) { @@ -598,7 +601,7 @@ sub parse_xml { my $tree = $self->{tree} = XML::LibXML->load_xml( string => $self->{xml_reply}, ); - # say $tree->toString(2); + #say $tree->toString(2); my $xp_element = XML::LibXML::XPathExpression->new( '//itdItinerary/itdRouteList/itdRoute'); -- cgit v1.2.3