diff options
-rw-r--r-- | index.pl | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -319,6 +319,7 @@ sub handle_request { my $with_related = $self->param('recursive') // 0; my $callback = $self->param('callback'); my $apiver = $self->param('version') // 0; + my @train_types = split( /,/, $self->param('train_types') // q{} ); my %opt; my $api_version @@ -401,6 +402,7 @@ sub handle_request { for my $result (@results) { my $platform = ( split( / /, $result->platform ) )[0]; my $line = $result->line; + my $train_type = $result->type; my $delay = $result->delay; if ( $via and $result->can('route_post') ) { $via =~ s{ , \s* }{|}gx; @@ -418,6 +420,10 @@ sub handle_request { { next; } + if ( @train_types and not ( List::MoreUtils::any { $train_type =~ m{^$_} } @train_types )) + { + next; + } if ( $backend eq 'iris' and $admode eq 'arr' and not $result->arrival ) { next; |