history map: show time range; handle users with no journeys
This commit is contained in:
parent
e0187c5308
commit
783a540cb0
2 changed files with 28 additions and 3 deletions
|
@ -422,6 +422,21 @@ sub map_history {
|
|||
# TODO create map-specific get_user_travels function returning EVA/DS100 station codes?
|
||||
my @journeys = $self->get_user_travels;
|
||||
|
||||
if ( not @journeys ) {
|
||||
$self->render(
|
||||
template => 'history_map',
|
||||
with_map => 1,
|
||||
station_coordinates => [],
|
||||
station_pairs => [],
|
||||
range_from => 0,
|
||||
range_to => 0,
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
my $first_departure = $journeys[-1]->{rt_departure};
|
||||
my $last_departure = $journeys[0]->{rt_departure};
|
||||
|
||||
my @stations = uniq map { $_->{to_name} } @journeys;
|
||||
push( @stations, uniq map { $_->{from_name} } @journeys );
|
||||
@stations = uniq @stations;
|
||||
|
@ -437,7 +452,10 @@ sub map_history {
|
|||
my $from_index = first_index { $_ eq $journey->{from_name} } @route;
|
||||
my $to_index = first_index { $_ eq $journey->{to_name} } @route;
|
||||
|
||||
if ( $from_index == -1 or $to_index == -1 or $journey->{edited} == 0x3fff ) {
|
||||
if ( $from_index == -1
|
||||
or $to_index == -1
|
||||
or $journey->{edited} == 0x3fff )
|
||||
{
|
||||
next;
|
||||
}
|
||||
|
||||
|
@ -475,7 +493,9 @@ sub map_history {
|
|||
template => 'history_map',
|
||||
with_map => 1,
|
||||
station_coordinates => \@station_coordinates,
|
||||
station_pairs => \@station_pairs
|
||||
station_pairs => \@station_pairs,
|
||||
range_from => $first_departure,
|
||||
range_to => $last_departure,
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,11 @@
|
|||
<div class="row">
|
||||
<div class="col s12">
|
||||
Karte aller bisherigen Zugfahrten:
|
||||
% if (@{$station_coordinates}) {
|
||||
Zugfahrten zwischen <%= $range_from->strftime('%d.%m.%Y') %> und <%= $range_to->strftime('%d.%m.%Y') %>
|
||||
% }
|
||||
% else {
|
||||
Keine Zugfahrten gefunden.
|
||||
% }
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
Loading…
Reference in a new issue