diff options
| -rw-r--r-- | lib/DBInfoscreen/Controller/Stationboard.pm | 17 | ||||
| -rw-r--r-- | lib/DBInfoscreen/Helper/HAFAS.pm | 2 | 
2 files changed, 18 insertions, 1 deletions
| diff --git a/lib/DBInfoscreen/Controller/Stationboard.pm b/lib/DBInfoscreen/Controller/Stationboard.pm index 23a6ee2..11f499b 100644 --- a/lib/DBInfoscreen/Controller/Stationboard.pm +++ b/lib/DBInfoscreen/Controller/Stationboard.pm @@ -1161,6 +1161,23 @@ sub train_details {  		$opt{language} = 'en';  	} +	if ( my $date = $self->param('date') ) { +		if ( $date +			=~ m{ ^ (?<day> \d{1,2} ) [.] (?<month> \d{1,2} ) [.] (?<year> \d{4})? $ }x +		  ) +		{ +			$opt{datetime} = DateTime->now( time_zone => 'Europe/Berlin' ); +			$opt{datetime}->set( +				day   => $+{day}, +				month => $+{month} +			); +			if ( $+{year} ) { +				$opt{datetime}->set( year => $+{year} ); +			} +			say "set $opt{datetime}"; +		} +	} +  	$self->stash( hide_opts => 1 );  	$self->render_later; diff --git a/lib/DBInfoscreen/Helper/HAFAS.pm b/lib/DBInfoscreen/Helper/HAFAS.pm index 1b9226d..525cc45 100644 --- a/lib/DBInfoscreen/Helper/HAFAS.pm +++ b/lib/DBInfoscreen/Helper/HAFAS.pm @@ -58,7 +58,7 @@ sub get_route_timestamps_p {  	$hafas_promise //= Travel::Status::DE::HAFAS->new_p(  		journeyMatch => $opt{train_req} =~ s{^- }{}r, -		datetime     => ( $opt{train} ? $opt{train}->start : undef ), +		datetime     => ( $opt{train} ? $opt{train}->start : $opt{datetime} ),  		language     => $opt{language},  		cache        => $self->{realtime_cache},  		promise      => 'Mojo::Promise', | 
