summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDaniel Friesel <derf@finalrewind.org>2019-12-14 23:46:36 +0100
committerDaniel Friesel <derf@finalrewind.org>2019-12-14 23:46:36 +0100
commit7ae60f2ea44aa61ed0d9451c4389b6d7630d583e (patch)
treecc0cddad42d299a9815d7d2b06579c6a144266f8 /lib
parent46fc64de4831e90971c4a3db91d6fcfa3628a2d0 (diff)
Travel API: comment support
Diffstat (limited to 'lib')
-rwxr-xr-xlib/Travelynx.pm4
-rwxr-xr-xlib/Travelynx/Controller/Api.pm9
2 files changed, 11 insertions, 2 deletions
diff --git a/lib/Travelynx.pm b/lib/Travelynx.pm
index def2d3d..73c221a 100755
--- a/lib/Travelynx.pm
+++ b/lib/Travelynx.pm
@@ -806,8 +806,8 @@ sub startup {
$self->helper(
'update_in_transit_comment' => sub {
- my ( $self, $comment ) = @_;
- my $uid = $self->current_user->{id};
+ my ( $self, $comment, $uid ) = @_;
+ $uid //= $self->current_user->{id};
my $status = $self->pg->db->select( 'in_transit', ['user_data'],
{ user_id => $uid } )->expand->hash;
diff --git a/lib/Travelynx/Controller/Api.pm b/lib/Travelynx/Controller/Api.pm
index f420a9e..2e1fa49 100755
--- a/lib/Travelynx/Controller/Api.pm
+++ b/lib/Travelynx/Controller/Api.pm
@@ -260,6 +260,10 @@ sub travel_v1 {
my ( $train, $error )
= $self->checkin( $from_station, $train_id, $uid );
+ if ( $payload->{comment} ) {
+ $self->update_in_transit_comment(
+ sanitize( q{}, $payload->{comment} ), $uid );
+ }
if ( $to_station and not $error ) {
( $train, $error ) = $self->checkout( $to_station, 0, $uid );
}
@@ -284,6 +288,11 @@ sub travel_v1 {
elsif ( $payload->{action} eq 'checkout' ) {
my $to_station = sanitize( q{}, $payload->{toStation} );
+ if ( $payload->{comment} ) {
+ $self->update_in_transit_comment(
+ sanitize( q{}, $payload->{comment} ), $uid );
+ }
+
my ( $train, $error )
= $self->checkout( $to_station, $payload->{force} ? 1 : 0, $uid );
if ($error) {