Daniel Friesel
82f043e734
Move map data generation to a global helper function
2020-02-23 18:35:56 +01:00
Daniel Friesel
a15dc1791c
calculate journey distance using polyline, if available
2020-02-21 23:31:50 +01:00
Daniel Friesel
0011e4a18d
user_status: Improve TS lookup performance
2020-02-20 20:58:58 +01:00
Daniel Friesel
57f686b688
allow showing past journeys on shared status page
2020-02-19 20:58:38 +01:00
Daniel Friesel
2652ea6bab
auto-checkout for cancelled departure: guard against destination changes
2020-02-18 17:38:53 +01:00
Daniel Friesel
cc7439dd5e
handle departure cancellation after checkin
2020-02-17 21:13:07 +01:00
Daniel Friesel
a1865fa69e
add privacy setting for showing history and latest arrival timestamp
2020-02-14 16:29:44 +01:00
Daniel Friesel
6cbbc2b16f
avoid stale data when marking cancelled arrivals
2020-02-13 18:35:42 +01:00
Daniel Friesel
a830acc698
Handle cancelled arrival at checkout when departure at checkin is not cancelled
2020-02-12 20:38:24 +01:00
Daniel Friesel
ee38d48a55
Add another fix for invalid HAFAS XML
2020-02-12 20:35:27 +01:00
Daniel Friesel
7564ec34db
munin: Add polyline compression ratio
2020-02-10 20:06:55 +01:00
Daniel Friesel
3ddd1a1cf4
Improve map performance by passing actual polylines for train routes
2020-02-07 23:19:01 +01:00
Daniel Friesel
c2e0f377be
maintenance: consider station renames whan backpropagating polylines
2020-02-06 17:54:23 +01:00
Daniel Friesel
0457a53f65
maintenance: only fetch polylines from journeys which were not edited
2020-02-04 21:23:22 +01:00
Daniel Friesel
eb3f4aed05
allow checkin and checkout station to be edited
2020-02-01 16:15:20 +01:00
Daniel Friesel
5439dbad34
Fix cancellation line in journey view.
...
Broken by 993f6be6c9
2020-02-01 14:28:10 +01:00
Daniel Friesel
a29568711f
fix uninitialized value warning when handling odd trains (trains without type)
2020-02-01 10:59:46 +01:00
Daniel Friesel
aa7a7db2bc
map: show polylines by default
2020-01-31 18:16:00 +01:00
Daniel Friesel
7e92e6b5d4
retroactively add polylines to non-polyline journeys
2020-01-30 18:06:04 +01:00
Daniel Friesel
dadb0f6637
map: improve polyline duplicate detection
2020-01-29 19:54:32 +01:00
Daniel Friesel
993f6be6c9
map: set bounds on stations; move polyline feature to staging
2020-01-29 18:48:58 +01:00
Daniel Friesel
fca6a5df6c
journey_sanity_check: handle duration == 0
2020-01-28 20:01:00 +01:00
Daniel Friesel
297718603c
munin: return number of stored polylines
2020-01-27 20:33:35 +01:00
Daniel Friesel
b47a29d484
Store journey polylines in DB
...
Squashed commit of the following:
commit d60c7d3c98d88a8f5b0e3ced6c11b56053e1e44b
Author: Daniel Friesel <derf@finalrewind.org>
Date: Mon Jan 27 20:22:46 2020 +0100
fix bugs related to users without past journeys
commit 707fcc937ac7f6bc3dc29024273f5e74963f7f15
Author: Daniel Friesel <derf@finalrewind.org>
Date: Mon Jan 27 20:19:14 2020 +0100
work around Cache::file turning floats into strings
commit 55831121eb30bc30ed20134bbb48e4bee9772feb
Author: Daniel Friesel <derf@finalrewind.org>
Date: Mon Jan 27 19:43:29 2020 +0100
store journey polylines for later use
commit 1971d511037ff2b8fbc9699cb98e4f8fd51261e5
Author: Daniel Friesel <derf@finalrewind.org>
Date: Sat Jan 25 16:49:48 2020 +0100
set preliminary database schema for polyline storage.
deduplication will follow at a later stage
2020-01-27 20:32:15 +01:00
Daniel Friesel
47171500b7
fix bugs related to users without past journeys
2020-01-27 20:25:02 +01:00
Daniel Friesel
cc25a56864
Api: Import: Set correct route key for add_journey
2020-01-26 16:04:08 +01:00
Daniel Friesel
21234707fc
add_journey: allow up to 99 journeys per 24 hours
2020-01-26 15:31:01 +01:00
Daniel Friesel
d7c69acf41
import API: route -> intermediateStops
2020-01-26 10:50:21 +01:00
Daniel Friesel
ba62df34ea
validate_journey: handle 0 timestamps
2020-01-26 10:48:14 +01:00
Daniel Friesel
c31254e996
import API: Add deprecated field, remove development check
2020-01-26 10:47:51 +01:00
Daniel Friesel
1723f8c1fb
import API: invalidate stats cache after adding a journey
2020-01-26 10:08:46 +01:00
Daniel Friesel
ce6237b9fb
status API: nextStops -> intermediateStops; documentation
2020-01-26 09:59:45 +01:00
Daniel Friesel
3e9807b393
map, journey view: handle renamed stations
2020-01-25 15:46:42 +01:00
Daniel Friesel
1028e47a35
map: list skipped journeys
2020-01-25 14:55:51 +01:00
Daniel Friesel
ee1285e8fa
map: support multiple polyline groups with different colors
2020-01-25 14:41:33 +01:00
Daniel Friesel
8157f38854
JSON Status API: Add experimental and undocumented nextStops key
2020-01-23 18:18:50 +01:00
Daniel Friesel
75363c35cc
work: Fix race condition
...
When a user changes their destination station or checks into a new train
while work is updating data for their in_transit entry, values for no longer
valid database entrie would be entered.
2020-01-23 17:14:01 +01:00
Daniel Friesel
cda8e53b34
has_wagonorder: Fix promise result mixup
2020-01-22 20:18:37 +01:00
Daniel Friesel
9232cdaa5f
Return HTTP 404 for unknown journeys
2020-01-19 19:21:14 +01:00
Daniel Friesel
2764826da0
/journey/ 🆔 verify that id is numeric
...
As a side effect, this turns the response of GET /journey/edit (which should
never happen in the first place) from an exception into a 404 error (#36 )
2020-01-19 19:15:53 +01:00
Daniel Friesel
243302b9bb
Fix IOLoop crashes caused by using log->warning instead of log->warn
...
The issue manifested itself by the ioloop using 100%cpu without making any
progress.
2020-01-15 22:13:20 +01:00
Daniel Friesel
263fe6da63
do not store wagonorder error results in database
2020-01-15 21:48:50 +01:00
Daniel Friesel
e8b610f3e6
fetch trip ID when checked in
2020-01-08 18:42:17 +01:00
Daniel Friesel
172c8a3d00
move old station names to external JSON as well
2020-01-06 18:24:28 +01:00
Daniel Friesel
8a73a65656
Switch back to JSON::XS for decoding
2020-01-06 18:03:50 +01:00
Daniel Friesel
f99e069928
Move ICE names to a separate JSON file
2020-01-06 17:59:40 +01:00
Markus Heinrich
d1c005606c
remove unnecessary whitespace
2020-01-06 11:22:03 +01:00
Daniel Friesel
62b68b5010
map ICE train numbers to names where possible
2020-01-04 18:48:46 +01:00
Daniel Friesel
a9a7fa4492
Release Travel API
2019-12-31 13:27:14 +01:00
Daniel Friesel
61889603f7
Checkin API: error out if fromStation / toStation are ambiguous
2019-12-30 01:31:26 +01:00
Daniel Friesel
5435f34aa1
Set travelynx UserAgent for webhook requests
2019-12-29 23:06:51 +01:00
Daniel Friesel
6fde013585
Strip newline from version string
2019-12-29 23:06:39 +01:00
Daniel Friesel
f8436b9b4b
perltidy
2019-12-28 15:01:21 +01:00
Knuspel
d8b46dff89
Added links for old/new station names.
2019-12-28 14:35:07 +01:00
Daniel Friesel
d9126b927f
fix connections display
2019-12-26 22:48:50 +01:00
Daniel Friesel
fe6340abeb
Handle undefined user data in conncetion suggestion with no previous journey
...
Closes #30
2019-12-26 21:39:24 +01:00
Daniel Friesel
f9f1eec499
Use EVA IDs instead of travelynx-internal station IDs. Not 100% tested yet.
2019-12-23 22:57:45 +01:00
Daniel Friesel
c6634b4097
maintenance: remove checkins which were entered more than 48 hours ago
2019-12-20 18:56:57 +01:00
Daniel Friesel
e7f278574f
more travel API documentation
2019-12-20 18:33:59 +01:00
Daniel Friesel
11a2e94a04
travel API: more helpful errors on invalid input
2019-12-20 16:39:15 +01:00
Daniel Friesel
bd372d57e2
Travel API: Add "deprecated" field
2019-12-20 16:23:41 +01:00
Daniel Friesel
ebb7c22a4b
checkin api: only set comment if checkin was successful
2019-12-20 16:18:32 +01:00
Daniel Friesel
e0a2b9aa26
save all the wagon orders we can get
2019-12-19 20:16:10 +01:00
Daniel Friesel
b0ddada5d1
munin: Add 'currently checked in' counter
2019-12-19 19:22:56 +01:00
Daniel Friesel
69f961a23c
disable import and checkin API endpoints in production mode
2019-12-19 19:20:06 +01:00
Daniel Friesel
f895d34f31
undo: pass UID to invalidate_stats_cache
2019-12-19 18:18:26 +01:00
Daniel Friesel
c8695ecb1c
travel, import API: Verify that payload is a hash
2019-12-17 20:41:36 +01:00
Daniel Friesel
934a9ac21a
api/import: More helpful errors, fix "lax" support
2019-12-17 20:09:02 +01:00
Daniel Friesel
ae21896982
API: Add lax option
2019-12-17 20:01:39 +01:00
Daniel Friesel
9adec3ee8d
remove debug output
2019-12-16 22:17:40 +01:00
Daniel Friesel
bb22915fc3
Fix has_wagonorder_p logic. request success ≠ result success!
2019-12-16 22:15:37 +01:00
Daniel Friesel
cabf159f46
Handle Berlin Ringbahn and other transfer-at-destination trains
...
Requires Travel::Status::DE::IRIS v1.38 (not released yet)
2019-12-15 13:42:11 +01:00
Daniel Friesel
7ae60f2ea4
Travel API: comment support
2019-12-14 23:46:36 +01:00
Daniel Friesel
46fc64de48
Add travel (checkin/checkout/undo) API
2019-12-14 21:53:23 +01:00
Daniel Friesel
5fe4174feb
Add API entry point for journey import
2019-12-14 20:46:02 +01:00
Daniel Friesel
ba97fd2a3c
do not insert duplicate wagongroups
2019-12-13 20:37:51 +01:00
Daniel Friesel
f6bff01f76
save wagongroups if available
2019-12-13 17:28:52 +01:00
Daniel Friesel
b211e0842a
permanently store wagon numbers and types when available
2019-12-12 19:21:39 +01:00
Daniel Friesel
e6160d75de
show wagon order for regional trains too, if available
2019-12-11 21:36:41 +01:00
Daniel Friesel
315a94affe
allow a journey's cancellation status to be edited
...
Closes #27
2019-12-08 19:46:45 +01:00
Daniel Friesel
561ff4574b
Allow status visibility to be limited to travelynx users
2019-12-08 11:06:17 +01:00
Daniel Friesel
402a5597f5
Account: unset public_comment when public_status is disabled
2019-12-08 10:32:22 +01:00
Daniel Friesel
07ee4d216a
add hash tables for is_public and journey edited bitmasks
2019-12-08 10:29:25 +01:00
Daniel Friesel
fb126c6928
optionally show journey comment in public user status
...
Closes #19
2019-12-06 21:44:31 +01:00
Daniel Friesel
094c536eb4
Allow comments to be entered while still in transit
2019-12-06 21:40:51 +01:00
Daniel Friesel
119f0a6b7d
Do not show cancelled journeys without substitute in passengerrights list
2019-11-27 21:09:49 +01:00
Daniel Friesel
0e2e8cd78e
history map: Add checkbox to display manually added journeys
2019-11-27 18:26:15 +01:00
Daniel Friesel
4f0fee7783
show cancelled trains in connections list
2019-11-25 21:18:57 +01:00
Daniel Friesel
613f7d6087
Passengerrights: Fix typo
2019-11-24 20:32:24 +01:00
Daniel Friesel
b3b0a055b9
improve get_user_travels performance, most notably when rendering map
...
only create DateTime objects when needed
2019-11-24 20:29:52 +01:00
Daniel Friesel
8aced49bc3
Log unknown route entries on checkout
2019-11-22 17:59:50 +01:00
Daniel Friesel
57f47d2a3c
allow routes to be edited after recording a journey
2019-11-20 17:41:21 +01:00
Daniel Friesel
b80613b8a8
allow route input when adding journeys manually ( #26 )
2019-11-19 19:46:39 +01:00
Daniel Friesel
13e59b3aa1
add journey: make realtime data optional (default to schedule data)
...
Closes #25
2019-11-18 21:02:57 +01:00
Daniel Friesel
783a540cb0
history map: show time range; handle users with no journeys
2019-11-16 23:47:18 +01:00
Daniel Friesel
e0187c5308
history map: Do not show route for manually added journeys
2019-11-16 23:46:45 +01:00
Daniel Friesel
cea4b71ca3
history map: skip duplicates earlier
2019-11-16 21:24:35 +01:00
Daniel Friesel
4f2eac9cef
map_history: uniq_by_route did not consider the actual passenger route, scrap it
2019-11-16 16:03:03 +01:00
Daniel Friesel
733fe2d853
map: add legend, link to history map from history page
2019-11-16 15:57:09 +01:00
Daniel Friesel
77e4998708
move station -> location map to generic helper
2019-11-16 15:24:16 +01:00