Commit graph

799 commits

Author SHA1 Message Date
Birte Kristina Friesel
4b6049cd1a
integritycheck: list journeys affected by #159 2024-08-26 17:47:38 +02:00
Birte Kristina Friesel
a67e39d4ce
backend selection: Rename "DB (IRIS)" to "IRIS" for better HAFAS distinction 2024-08-26 17:40:14 +02:00
Birte Kristina Friesel
6f3710c5cb
IRIS: Re-add support for stations unknown to T::S::DE::IRIS::Stations
This fixes a regression introduced by 47f76da4f8

Closes #159

Journeys logged with travelynx v2.8.0 through 2.8.30 are affected by this bug
and will contain incorrect data even after applying this patch – it only
fixes data for new entries.

To Do: See if affected entries can be repaired with a DB migration
2024-08-25 16:36:02 +02:00
Birte Kristina Friesel
d189f6f0d2
get_travel_distance: no need for debug output if there is no polyline 2024-08-25 10:47:39 +02:00
Birte Kristina Friesel
d26953d13e
fix /cancelled.json
Closes #155
2024-08-25 10:34:38 +02:00
Birte Kristina Friesel
c142d4fae4
backend suggestions: handle holes in GeoJSON polygons 2024-08-24 07:59:19 +02:00
Birte Kristina Friesel
520e645600
Suggest backends based on coverage and latest checkout coordinates
References #156
2024-08-23 22:44:02 +02:00
Birte Kristina Friesel
1a185897e2
backend selection: add coverage regions and links to coverage map 2024-08-21 19:39:30 +02:00
Birte Kristina Friesel
c481300106
backend selection: Hide Resrobot and TPG
These backends do not provide trip/journey details, making them useless for
travelynx
2024-08-17 23:10:07 +02:00
Birte Kristina Friesel
298b099097
get_travel_distance: do not overwrite {to,from}_eva with undef 2024-08-17 21:29:51 +02:00
Birte Kristina Friesel
cbc1ac791c
DBDB: put successful carriage formation requests into long-term cache 2024-08-17 08:55:01 +02:00
Birte Kristina Friesel
73030d2ae4
improve hafas checkin error message for route issues 2024-08-16 18:35:40 +02:00
Birte Kristina Friesel
917f8560a3
.. oooops 2024-08-16 16:56:58 +02:00
Birte Kristina Friesel
f0b70c4dab
work: guard HAFAS updates via eval as well 2024-08-16 16:52:14 +02:00
Birte Kristina Friesel
170aa150b1
truncate journey stats once more 2024-08-15 17:39:56 +02:00
Birte Kristina Friesel
9b7013907b
stats, map: deal with multiple EVA IDs mapping to the same station name 2024-08-15 17:38:13 +02:00
Birte Kristina Friesel
d156e3389e
HAFAS: add debug output for HAFAS requests and caching 2024-08-15 17:03:02 +02:00
Birte Kristina Friesel
119f2ea96a
IRIS checkout: do not overwrite HAFAS route with IRIS route
The IRIS route may differ from the HAFAS route in case of diversions,
causing travelynx to lose real-time data, coordinates, and polyline when
the follow-up add_route_timestamps call is not made.
2024-08-14 22:18:21 +02:00
Birte Kristina Friesel
655f69c2e9
get_travel_distance: always return beeline distance 2024-08-14 22:00:15 +02:00
Birte Kristina Friesel
43fc820e0c
add_route_timestamps: do not re-request trip id if it is already known 2024-08-14 21:50:55 +02:00
Birte Kristina Friesel
c5af2fec5b
DBDB: sort wagenreihung dict keys so that caching actually works 2024-08-13 23:05:34 +02:00
Birte Kristina Friesel
8b7e5909a8
backend selection: remove type from buttons (invisible on narrow screens) 2024-08-13 18:29:01 +02:00
Birte Kristina Friesel
521ed1eb87
DBDB: handle undef train_types 2024-08-12 18:17:05 +02:00
Birte Kristina Friesel
97b0b4bd93
backend form: always show IRIS first 2024-08-12 18:16:52 +02:00
Birte Kristina Friesel
897b88691c
backend selection: add homepage links 2024-08-12 18:16:41 +02:00
Birte Kristina Friesel
e2b5365810
database: avoid needlessly incrementing backends.id 2024-08-12 18:08:41 +02:00
Birte Kristina Friesel
9dc5d26380
DBDB: It's $tx->res->code 2024-08-11 10:31:06 +02:00
Birte Kristina Friesel
cecf3491d5
work: only request carriage formation for DB backends 2024-08-10 19:52:49 +02:00
Birte Kristina Friesel
e6ba4b0e3b
backend selection: handle backends that are no longer supported 2024-08-10 19:35:53 +02:00
Birte Kristina Friesel
ba79f62f67
get_connection_targets: always return a list
Closes #152
Closes #153
2024-08-09 12:20:06 +02:00
Birte Kristina Friesel
45dc2e4e2a
Switch to new carriage formation API 2024-08-08 21:13:39 +02:00
Birte Kristina Friesel
7e9f6bdf90
dumpstops: provide backend name and type rather than just opaque IDs 2024-08-07 12:13:15 +02:00
Birte Kristina Friesel
1bb348ad9a
journey->add: pass backend_id on to station search for route
Ref: #150
2024-08-04 20:41:25 +02:00
Birte Kristina Friesel
0c5908e722
manual journey entry: hardcode DB (HAFAS) for station selection
TODO: Add a dropdown to select different backends

Closes #150
2024-08-04 08:49:57 +02:00
Birte Kristina Friesel
6659d76101
history: add map link for monthly history 2024-07-28 15:38:31 +02:00
Birte Kristina Friesel
344541786d
iris geolocation: specify hafas=0 2024-07-26 21:19:39 +02:00
Birte Kristina Friesel
6ed2cd6f47
wat 2024-07-26 21:14:58 +02:00
Birte Kristina Friesel
5554deed5f
fix v55 migration: we also need to sync hafas->iris in some cases 2024-07-26 20:06:58 +02:00
Birte Kristina Friesel
f1ef2e472a
influxdb: per-backend stats 2024-07-26 19:20:50 +02:00
Birte Kristina Friesel
47f76da4f8
Multi-backend support
Squashed commit of the following:

commit 92518024ba295456358618c0e8180bd8e996fdf1
Author: Birte Kristina Friesel <birte.friesel@uos.de>
Date:   Fri Jul 26 18:39:46 2024 +0200

    add_or_update station: remove superfluos 'new backend id := old backend id'

commit df21c20c6e4c86454f8a9ac69121404415217f2a
Author: Birte Kristina Friesel <birte.friesel@uos.de>
Date:   Fri Jul 26 18:35:51 2024 +0200

    revert connection targets min_count to 3

commit be335cef07d0b42874f5fc1de4a1d13396e8e807
Author: Birte Kristina Friesel <birte.friesel@uos.de>
Date:   Fri Jul 26 18:20:05 2024 +0200

    mention backend selection in API documentation

commit 9f41828fb4f18fd707e0087def3032e8d4c8d7d8
Author: Birte Kristina Friesel <derf@finalrewind.org>
Date:   Thu Jul 25 20:19:23 2024 +0200

    use_history: not all backends provide route data in departure monitor

commit 09714b4d89684b8331d0e96f564a4c7432318f70
Author: Birte Kristina Friesel <derf@finalrewind.org>
Date:   Thu Jul 25 20:11:44 2024 +0200

    disambiguation: pass correct hafas parameter

commit 8cdf1120fc32155dc6525be64601b7c10a9c7f52
Author: Birte Kristina Friesel <derf@finalrewind.org>
Date:   Thu Jul 25 20:11:28 2024 +0200

    _checked_in: hide Zuglauf link for non-db checkins

commit 7455653f541198e0e0a6d11aed421487ffdb6285
Author: Birte Kristina Friesel <derf@finalrewind.org>
Date:   Thu Jul 25 20:01:47 2024 +0200

    debug output

commit b9cda07f85601a58ea32dbdacdd5399f302db52b
Author: Birte Kristina Friesel <derf@finalrewind.org>
Date:   Thu Jul 25 19:09:07 2024 +0200

    fix remaining get_connection_targets / get_connecting_trains_p invocations

commit 2759d7258c37c7498905cfe19f6b4c4f6d16bd21
Author: Birte Kristina Friesel <derf@finalrewind.org>
Date:   Wed Jul 24 20:50:12 2024 +0200

    support non-DB HAFAS backends (WiP)
2024-07-26 18:55:58 +02:00
Birte Kristina Friesel
7811520a30
Stations: Remove get_latlon_by_name (no longer needed) 2024-07-21 19:32:35 +02:00
Birte Kristina Friesel
fa20c21ec2
Add lat/lon to pre-2.7.8 journeys; add eva where missing
This speeds up the map significantly and makes coordinates_by_station obsolete
2024-07-21 19:22:52 +02:00
Birte Kristina Friesel
de55368db7
Journey->add: store lat/lon for route at entry time, if available 2024-07-21 17:23:28 +02:00
Birte Kristina Friesel
f0b6814200
HAFAS: Add get_service wrapper 2024-07-18 18:37:33 +02:00
Birte Kristina Friesel
07ab3f4e9b
store lat/lon along with route
This increases resilience against EVA ID reuse
2024-07-08 21:05:21 +02:00
Birte Kristina Friesel
9e3d0acf93
IRIS: Use EVA ID rather than DS100 code for backend requests 2024-06-23 16:27:54 +02:00
Birte Kristina Friesel
1db4f4cd43
work: give bodged background tasks some time to complete 2024-06-23 12:47:41 +02:00
Birte Kristina Friesel
1184d84827
always use HAFAS for traewelling → travelynx 2024-06-23 10:28:51 +02:00
Birte Kristina Friesel
bd24f1f2f4
oopsie
Closes #144
2024-06-21 20:43:36 +02:00
Birte Kristina Friesel
cb8964fb3c
add_route_timestamps: use $train->id rather than in_transit id
this avoids a race condition when the worker requests all current checkins and
takes a while before getting to update the data
2024-06-21 18:27:37 +02:00