From 01aec7e9770d99565c06f673268ba587007c2b1f Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Sun, 20 Feb 2022 21:45:51 +0100 Subject: [PATCH] fix ajax refresh of public status card (trim .html suffix) --- lib/Travelynx.pm | 2 +- lib/Travelynx/Controller/Traveling.pm | 31 ++++++++++++++++----------- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/lib/Travelynx.pm b/lib/Travelynx.pm index 621f3e8..49c1399 100755 --- a/lib/Travelynx.pm +++ b/lib/Travelynx.pm @@ -2520,7 +2520,7 @@ sub startup { $r->get('/reg/:id/:token')->to('account#verify'); $r->get('/status/:name')->to('traveling#user_status'); $r->get('/status/:name/:ts')->to('traveling#user_status'); - $r->get('/ajax/status/:name')->to('traveling#public_status_card'); + $r->get('/ajax/status/#name')->to('traveling#public_status_card'); $r->get('/ajax/status/:name/:ts')->to('traveling#public_status_card'); $r->get('/p/:name')->to('traveling#public_profile'); $r->get('/p/:name/j/:id')->to('traveling#public_journey_details'); diff --git a/lib/Travelynx/Controller/Traveling.pm b/lib/Travelynx/Controller/Traveling.pm index ffc4211..9f8a193 100755 --- a/lib/Travelynx/Controller/Traveling.pm +++ b/lib/Travelynx/Controller/Traveling.pm @@ -58,9 +58,10 @@ sub user_status { $ts and ( not $status->{checked_in} or $status->{sched_departure}->epoch != $ts ) - and ( $user->{public_level} & 0x20 - or - ( $user->{public_level} & 0x10 and $self->is_user_authenticated ) ) + and ( + $user->{public_level} & 0x20 + or ( $user->{public_level} & 0x10 and $self->is_user_authenticated ) + ) ) { for my $candidate ( @@ -173,9 +174,10 @@ sub public_profile { if ( $user - and ( $user->{public_level} & 0x22 - or - ( $user->{public_level} & 0x11 and $self->is_user_authenticated ) ) + and ( + $user->{public_level} & 0x22 + or ( $user->{public_level} & 0x11 and $self->is_user_authenticated ) + ) ) { my $status = $self->get_user_status( $user->{id} ); @@ -233,9 +235,10 @@ sub public_journey_details { if ( $user - and ( $user->{public_level} & 0x20 - or - ( $user->{public_level} & 0x10 and $self->is_user_authenticated ) ) + and ( + $user->{public_level} & 0x20 + or ( $user->{public_level} & 0x10 and $self->is_user_authenticated ) + ) ) { my $journey = $self->journeys->get_single( @@ -312,15 +315,17 @@ sub public_status_card { my ($self) = @_; my $name = $self->stash('name'); + $name =~ s{[.]html$}{}; my $user = $self->users->get_privacy_by_name( name => $name ); delete $self->stash->{layout}; if ( $user - and ( $user->{public_level} & 0x02 - or - ( $user->{public_level} & 0x01 and $self->is_user_authenticated ) ) + and ( + $user->{public_level} & 0x02 + or ( $user->{public_level} & 0x01 and $self->is_user_authenticated ) + ) ) { my $status = $self->get_user_status( $user->{id} ); @@ -1293,7 +1298,7 @@ sub add_journey_form { $self->render( 'add_journey', with_autocomplete => 1, - error => + error => 'Zug muss als „Typ Nummer“ oder „Typ Linie Nummer“ eingegeben werden.' ); return;