summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbin/efa-m11
-rw-r--r--lib/Travel/Status/DE/EFA.pm12
-rw-r--r--lib/Travel/Status/DE/EFA/Line.pm2
3 files changed, 14 insertions, 11 deletions
diff --git a/bin/efa-m b/bin/efa-m
index f4211a3..77f80e1 100755
--- a/bin/efa-m
+++ b/bin/efa-m
@@ -251,7 +251,7 @@ sub show_lines {
for my $l ( $efa->lines ) {
- if ( ( @grep_lines and none { $l->name eq $_ } @grep_lines )
+ if ( ( @grep_lines and none { $l->number eq $_ } @grep_lines )
or ( @grep_mots and none { $l->mot_name eq $_ } @grep_mots ) )
{
next;
@@ -261,8 +261,13 @@ sub show_lines {
next;
}
- push( @output,
- [ $l->type, $l->name, $l->direction // q{}, q{}, $l->route // q{} ]
+ push(
+ @output,
+ [
+ $l->type, $l->number,
+ $l->direction // q{}, q{},
+ $l->route // q{}
+ ]
);
}
diff --git a/lib/Travel/Status/DE/EFA.pm b/lib/Travel/Status/DE/EFA.pm
index c936dbc..4d591d7 100644
--- a/lib/Travel/Status/DE/EFA.pm
+++ b/lib/Travel/Status/DE/EFA.pm
@@ -372,9 +372,11 @@ sub lines {
return @{ $self->{lines} };
}
- for my $line ( @{ $self->{response}{servingLines} // [] } ) {
+ for my $line ( @{ $self->{response}{servingLines}{lines} // [] } ) {
push( @{ $self->{lines} }, $self->parse_line($line) );
}
+
+ return @{ $self->{lines} // [] };
}
sub parse_line {
@@ -383,7 +385,9 @@ sub parse_line {
my $mode = $line->{mode} // {};
return Travel::Status::DE::EFA::Line->new(
+ type => $mode->{product},
name => $mode->{name},
+ number => $mode->{number},
direction => $mode->{destination},
valid => $mode->{timetablePeriod},
mot => $mode->{product},
@@ -515,12 +519,6 @@ sub results {
my $json = $self->{response};
- if ( not @{ $self->{lines} // [] } ) {
- for my $line ( @{ $json->{servingLines}{lines} // [] } ) {
- push( @{ $self->{lines} }, $self->parse_line($line) );
- }
- }
-
for my $departure ( @{ $json->{departureList} // [] } ) {
push( @results, $self->parse_departure($departure) );
}
diff --git a/lib/Travel/Status/DE/EFA/Line.pm b/lib/Travel/Status/DE/EFA/Line.pm
index 69526fd..4f44c7b 100644
--- a/lib/Travel/Status/DE/EFA/Line.pm
+++ b/lib/Travel/Status/DE/EFA/Line.pm
@@ -9,7 +9,7 @@ use parent 'Class::Accessor';
our $VERSION = '2.02';
Travel::Status::DE::EFA::Line->mk_ro_accessors(
- qw(direction mot name operator route type valid));
+ qw(direction mot name number operator route type valid));
my @mot_mapping = qw{
zug s-bahn u-bahn stadtbahn tram stadtbus regionalbus