Unverified Commit f12bec53 authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

yearly/monthly history: return 404 for invalid dates

parent d0973a9d
Loading
Loading
Loading
Loading
+45 −53
Original line number Diff line number Diff line
@@ -1454,12 +1454,9 @@ sub yearly_history {
	# -> Limit time range to avoid accidental DoS.
	if ( not( $year =~ m{ ^ [0-9]{4} $ }x and $year > 1990 and $year < 2100 ) )
	{
		@journeys = $self->journeys->get(
			uid           => $self->current_user->{id},
			with_datetime => 1
		);
		$self->render('not_found');
		return;
	}
	else {
	my $interval_start = DateTime->new(
		time_zone => 'Europe/Berlin',
		year      => $year,
@@ -1480,7 +1477,6 @@ sub yearly_history {
		uid  => $self->current_user->{id},
		year => $year
	);
	}

	$self->respond_to(
		json => {
@@ -1519,12 +1515,9 @@ sub monthly_history {
			and $month < 13 )
	  )
	{
		@journeys = $self->journeys->get(
			uid           => $self->current_user->{id},
			with_datetime => 1
		);
		$self->render('not_found');
		return;
	}
	else {
	my $interval_start = DateTime->new(
		time_zone => 'Europe/Berlin',
		year      => $year,
@@ -1546,7 +1539,6 @@ sub monthly_history {
		year  => $year,
		month => $month
	);
	}

	$self->respond_to(
		json => {
+18 −1
Original line number Diff line number Diff line
@@ -3,7 +3,24 @@
% if (stash('statistics')) {
	%= include '_history_stats', stats => stash('statistics');
% }
%

<div class="row">
	% if (stash('have_review')) {
	<div class="col s12 m12 l5 center-align">
		<a href="/history/map?filter_after=1.1.<%= $year %>&amp;filter_before=31.12.<%= $year %>" class="waves-effect waves-light btn"><i class="material-icons left" aria-hidden="true">map</i> Karte</a>
	</div>
	<div class="col s12 m12 l2">&nbsp;</div>
	<div class="col s12 m12 l5 center-align">
		<a href="/history/<%= $year %>/review" class="waves-effect waves-light btn"><i class="material-icons left" aria-hidden="true">camera_roll</i> Rückblick</a>
	</div>
	% }
	% else {
	<div class="col s12 m12 l12 center-align">
		<a href="/history/map?filter_after=1.1.<%= $year %>&amp;filter_before=31.12.<%= $year %>" class="waves-effect waves-light btn"><i class="material-icons left" aria-hidden="true">map</i> Karte</a>
	</div>
	% }
</div>

%= include '_history_months_for_year';

% if (stash('journeys')) {