diff options
| author | Derf Null <derf@finalrewind.org> | 2023-06-04 19:37:16 +0200 | 
|---|---|---|
| committer | Derf Null <derf@finalrewind.org> | 2023-06-04 19:37:16 +0200 | 
| commit | ab04bc19b9694d906125345e516c89fd0c4626f1 (patch) | |
| tree | c65c4301504e28383c89b37d7357fad86782d1ca | |
| parent | c1635e24fb78d981a790463cfe35ba552bcaac04 (diff) | |
consistently return HTTP 404 on not found errors
| -rwxr-xr-x | lib/Travelynx/Controller/Profile.pm | 8 | ||||
| -rwxr-xr-x | lib/Travelynx/Controller/Traveling.pm | 33 | 
2 files changed, 26 insertions, 15 deletions
| diff --git a/lib/Travelynx/Controller/Profile.pm b/lib/Travelynx/Controller/Profile.pm index b11dd71..1e29748 100755 --- a/lib/Travelynx/Controller/Profile.pm +++ b/lib/Travelynx/Controller/Profile.pm @@ -66,7 +66,7 @@ sub profile {  	my $user = $self->users->get_privacy_by( name => $name );  	if ( not $user ) { -		$self->render('not_found'); +		$self->render( 'not_found', status => 404 );  		return;  	} @@ -437,11 +437,11 @@ sub user_status {  					"/p/${name}/j/$journey->{id}?token=${token}-${ts}");  			}  			else { -				$self->render('not_found'); +				$self->render( 'not_found', status => 404 );  			}  			return;  		} -		$self->render('not_found'); +		$self->render( 'not_found', status => 404 );  		return;  	} @@ -550,7 +550,7 @@ sub status_card {  	delete $self->stash->{layout};  	if ( not $user ) { -		$self->render('not_found'); +		$self->render( 'not_found', status => 404 );  		return;  	} diff --git a/lib/Travelynx/Controller/Traveling.pm b/lib/Travelynx/Controller/Traveling.pm index 80214ab..2463bb5 100755 --- a/lib/Travelynx/Controller/Traveling.pm +++ b/lib/Travelynx/Controller/Traveling.pm @@ -1222,7 +1222,7 @@ sub year_in_review {  	# -> Limit time range to avoid accidental DoS.  	if ( not( $year =~ m{ ^ [0-9]{4} $ }x and $year > 1990 and $year < 2100 ) )  	{ -		$self->render('not_found'); +		$self->render( 'not_found', status => 404 );  		return;  	} @@ -1244,8 +1244,11 @@ sub year_in_review {  	);  	if ( not @journeys ) { -		$self->render( 'not_found', -			message => 'Keine Zugfahrten im angefragten Jahr gefunden.' ); +		$self->render( +			'not_found', +			message => 'Keine Zugfahrten im angefragten Jahr gefunden.', +			status  => 404 +		);  		return;  	} @@ -1253,9 +1256,11 @@ sub year_in_review {  	if (  		not( $year < $now->year or ( $now->month == 12 and $now->day == 31 ) ) )  	{ -		$self->render( 'not_found', +		$self->render( +			'not_found',  			message => -'Der aktuelle Jahresrückblick wird erst zum Jahresende (am 31.12.) freigeschaltet' +'Der aktuelle Jahresrückblick wird erst zum Jahresende (am 31.12.) freigeschaltet', +			status => 404  		);  		return;  	} @@ -1287,7 +1292,7 @@ sub yearly_history {  	# -> Limit time range to avoid accidental DoS.  	if ( not( $year =~ m{ ^ [0-9]{4} $ }x and $year > 1990 and $year < 2100 ) )  	{ -		$self->render('not_found'); +		$self->render( 'not_found', status => 404 );  		return;  	}  	my $interval_start = DateTime->new( @@ -1312,8 +1317,11 @@ sub yearly_history {  	}  	if ( not @journeys ) { -		$self->render( 'not_found', -			message => 'Keine Zugfahrten im angefragten Jahr gefunden.' ); +		$self->render( +			'not_found', +			status  => 404, +			message => 'Keine Zugfahrten im angefragten Jahr gefunden.' +		);  		return;  	} @@ -1365,7 +1373,7 @@ sub monthly_history {  			and $month < 13 )  	  )  	{ -		$self->render('not_found'); +		$self->render( 'not_found', status => 404 );  		return;  	}  	my $interval_start = DateTime->new( @@ -1386,8 +1394,11 @@ sub monthly_history {  	);  	if ( not @journeys ) { -		$self->render( 'not_found', -			message => 'Keine Zugfahrten im angefragten Monat gefunden.' ); +		$self->render( +			'not_found', +			message => 'Keine Zugfahrten im angefragten Monat gefunden.', +			status  => 404 +		);  		return;  	} | 
