diff --git a/lib/Travelynx.pm b/lib/Travelynx.pm index e8d3902..7688136 100755 --- a/lib/Travelynx.pm +++ b/lib/Travelynx.pm @@ -573,6 +573,7 @@ sub startup { db => $db, journey => $journey, stop => $found, + data => { trip_id => $journey->id } ); }; if ($@) { @@ -581,11 +582,6 @@ sub startup { $promise->reject( 'INSERT failed: ' . $@ ); return; } - $self->in_transit->update_data( - uid => $uid, - db => $db, - data => { trip_id => $journey->id } - ); my $polyline; if ( $journey->polyline ) { diff --git a/lib/Travelynx/Model/InTransit.pm b/lib/Travelynx/Model/InTransit.pm index 09f682f..6bafd93 100644 --- a/lib/Travelynx/Model/InTransit.pm +++ b/lib/Travelynx/Model/InTransit.pm @@ -98,6 +98,7 @@ sub add { my $stop = $opt{stop}; my $checkin_station_id = $opt{departure_eva}; my $route = $opt{route}; + my $data = $opt{data}; my $json = JSON->new; @@ -126,7 +127,8 @@ sub add { data => JSON->new->encode( { rt => $train->departure_has_realtime ? 1 - : 0 + : 0, + %{ $data // {} } } ), backend_id => $backend_id, @@ -183,7 +185,12 @@ sub add { sched_departure => $stop->{sched_dep}, real_departure => $stop->{rt_dep} // $stop->{sched_dep}, route => $json->encode( \@route ), - data => JSON->new->encode( { rt => $stop->{rt_dep} ? 1 : 0 } ), + data => JSON->new->encode( + { + rt => $stop->{rt_dep} ? 1 : 0, + %{ $data // {} } + } + ), backend_id => $backend_id, } );