Commit graph

441 commits

Author SHA1 Message Date
Daniel Friesel
c31254e996 import API: Add deprecated field, remove development check 2020-01-26 10:47:51 +01:00
Daniel Friesel
ce6237b9fb status API: nextStops -> intermediateStops; documentation 2020-01-26 09:59:45 +01:00
Daniel Friesel
384dc57291 Surely a little bit of colour won't hurt. 2020-01-25 17:01:35 +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
c6a0c76092 checked in view: Add details panel 2020-01-09 18:13:37 +01:00
Daniel Friesel
873a4dc082 map: show checkin and checkout location 2020-01-08 21:31:28 +01:00
Daniel Friesel
8f79a004fd public status card: fix map link 2020-01-08 20:33:45 +01:00
Daniel Friesel
2aba2b6522 move links to card-actions for public, hide in app view for now 2020-01-08 19:12:03 +01:00
Daniel Friesel
9697279aeb add links to complete route and map for checked-in trains 2020-01-08 19:01:19 +01:00
Daniel Friesel
f99e069928 Move ICE names to a separate JSON file 2020-01-06 17:59:40 +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
86a991c28c always show QoS messages in public status 2019-12-31 13:04:03 +01:00
Knuspel
bf86fb95f4 changed color of symbol in legend 2019-12-29 15:39:21 +01:00
Daniel Friesel
0ec82a5102 map: improve line color 2019-12-28 22:21:17 +01:00
Daniel Friesel
97d771f55e Formulierungsdetails 2019-12-28 15:02:03 +01:00
Knuspel
eec69680c4 Added note about Trainnumbers for non DB trains. 2019-12-28 14:36:52 +01:00
Daniel Friesel
74a1f731c8 Use #travelynx hashtag 2019-12-28 11:03:03 +01:00
Daniel Friesel
d9126b927f fix connections display 2019-12-26 22:48:50 +01:00
Daniel Friesel
f2f58ab507 Changelog / v1.12 2019-12-26 17:30:06 +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
d0589781be account: use correct token type for travel API 2019-12-20 16:23:05 +01:00
Daniel Friesel
2831fbdfb7 public status card: link to marudor.de for train details 2019-12-20 14:51:50 +01:00
Daniel Friesel
837e3a949e move wagon group display to sub-template 2019-12-19 20:25:38 +01:00
Daniel Friesel
e0a2b9aa26 save all the wagon orders we can get 2019-12-19 20:16:10 +01:00
Daniel Friesel
69f961a23c disable import and checkin API endpoints in production mode 2019-12-19 19:20:06 +01:00
Daniel Friesel
ae21896982 API: Add lax option 2019-12-17 20:01:39 +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
1d589fa0b7 departures: show orientation bar dividing past from future 2019-12-14 08:52:44 +01:00
Daniel Friesel
fc9595e99c improve wagon output in journey details 2019-12-14 06:47:21 +01:00
Daniel Friesel
22b0e98b9c preliminary wagon view 2019-12-13 17:59:12 +01:00
Daniel Friesel
875dd4e0b5 confirm undo of checkins after 15 minutes 2019-12-08 21:04:34 +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
2bee9077ba account: typo 2019-12-08 10:32:07 +01:00
Daniel Friesel
17ce377307 release v1.11 2019-12-06 21:56:19 +01:00
Daniel Friesel
ededbef98f use comment in share text (if public) 2019-12-06 21:56:06 +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
424897fcc3 improve cancellation mark in connections overview 2019-11-27 18:32:13 +01:00
Daniel Friesel
0e2e8cd78e history map: Add checkbox to display manually added journeys 2019-11-27 18:26:15 +01:00
Daniel Friesel
5e03718f14 public_status_card: fix uninitialized value warning 2019-11-26 18:35:51 +01:00
Daniel Friesel
4f0fee7783 show cancelled trains in connections list 2019-11-25 21:18:57 +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
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
ff2a3afe34 Release v1.10
Release early, release often
2019-11-18 17:40:35 +01:00
Daniel Friesel
563ceb131e history_map: note that inconsistent and manually entered routes are special
See #26
2019-11-18 17:33:15 +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
733fe2d853 map: add legend, link to history map from history page 2019-11-16 15:57:09 +01:00
Daniel Friesel
45f747961e map: add station names to points 2019-11-16 14:50:07 +01:00
Daniel Friesel
0bfb71d78d add map view of past journeys. unfinished and unreferenced. 2019-11-16 00:01:50 +01:00
Daniel Friesel
35e9dae349 include URL in copied share text if enabled 2019-11-14 18:23:21 +01:00
Daniel Friesel
3e61b9de48 Copy share text to clipboard if sharing API is unavailable
Closes #24
2019-11-14 17:47:06 +01:00
Daniel Friesel
4483073539 update asset version 2019-10-30 20:46:19 +01:00
Daniel Friesel
b05b535ae7 remove 'next stop' header to align with JS 2019-10-30 20:45:51 +01:00
Daniel Friesel
663b4dc6d8 live update of next station via javascript 2019-10-29 21:18:46 +01:00
Daniel Friesel
780cdafcf5 show related stations in departure list 2019-10-19 10:15:18 +02:00
Daniel Friesel
daa05870fd improve undo/share button layout on small screens
should fix #22
2019-10-14 15:45:10 +02:00
Daniel Friesel
6d45533c14 mark cancelled stops in checkin view 2019-10-04 23:27:45 +02:00
Daniel Friesel
3582ba317b checked in view: link to marudor.de detail view for wagon order 2019-09-20 19:39:14 +02:00
Daniel Friesel
1cb26e2053 handle substitute connections in passenger rights form 2019-09-18 20:21:16 +02:00
Daniel Friesel
8e6ee729e0 passengerrights: improve support for cancelled trains
To do: also do so in form generation
2019-09-18 18:19:54 +02:00
Daniel Friesel
aac8e2a0e1 Save scheduled arrival time for cancelled trains 2019-09-18 18:08:06 +02:00
Daniel Friesel
2075c89655 landingpage: Add passengerrights support 2019-09-16 17:20:37 +02:00
Daniel Friesel
b8f00bcf98 make 'missed connection' passengerrights message less confusing 2019-09-15 15:58:15 +02:00
Daniel Friesel
5f7933cffb pasengerrights: link to both journeys on connection miss 2019-09-14 12:32:28 +02:00
Daniel Friesel
35cc18dfae add passenger rights heuristic for missed connections 2019-09-13 23:39:28 +02:00
Daniel Friesel
29d99fe140 show arrival times in destination selection 2019-09-13 11:54:19 +02:00
Daniel Friesel
c891da97fb Explicitly set passenger rights form filename 2019-09-12 18:23:23 +02:00
Daniel Friesel
0822cfc993 add auto-generated passenger rights forms 2019-09-12 18:07:21 +02:00
Daniel Friesel
628a5c705b turn force checkout into a proper button 2019-08-25 09:00:59 +02:00
Daniel Friesel
74f2132c2e declutter Checked In-panel 2019-08-23 22:54:59 +02:00
Daniel Friesel
a40aa1936b Allow comments to be edited 2019-08-23 12:02:22 +02:00
Daniel Friesel
f6d56d3134 Add proper journey comment support 2019-08-23 10:34:02 +02:00
Daniel Friesel
d08c1ead33 update autocomplete station list 2019-08-22 13:41:31 +02:00
Daniel Friesel
c9592e3f76 show boarding countdown in departure overview 2019-08-06 20:21:57 +02:00
Daniel Friesel
0439aa8b02 use the same direction for wagon order and direction indicator 2019-08-03 15:09:15 +02:00
Daniel Friesel
a48352ada4 also show train direction on departure 2019-08-03 12:35:47 +02:00
Daniel Friesel
b12b5a821b Show departures of all linked stations
Not well-tested yet, deployment will have to wait a bit. Issue #15
2019-07-14 21:29:52 +02:00
Daniel Friesel
8e5a8fad93 indicate whether a connecting train is cancelled or not 2019-07-07 08:10:05 +02:00
Daniel Friesel
29958c1968 wagon order detail has been deployed on marudor.de 2019-06-25 20:19:45 +02:00
Daniel Friesel
7ef47cdbf9 wagon order: link to marudor.de for details 2019-06-24 21:11:02 +02:00
Daniel Friesel
36121ccffc show wagon order before departure 2019-06-24 18:02:45 +02:00
Daniel Friesel
590b27f2ca also show exit direction for regional trains at select stations 2019-06-23 18:46:25 +02:00
Daniel Friesel
b3b0823829 show exit direction on kopfgleis platforms 2019-06-22 17:02:04 +02:00
Daniel Friesel
ee24664ee9 make share button link to status page if share API is unavailable 2019-06-19 21:04:36 +02:00
Daniel Friesel
c35548e909 re-phrase auto checkout notice 2019-06-10 19:22:41 +02:00
Daniel Friesel
b54c977e08 increase checkout delay to work around IRIS information lag 2019-06-10 18:09:54 +02:00
Daniel Friesel
2d250d02bc use a distinct 'offline' icon 2019-06-05 18:49:13 +02:00
Daniel Friesel
7be3a4219e checked in: Show QoS messages before departure and HIM messages at all times 2019-06-04 21:12:36 +02:00
Daniel Friesel
ac3abd5c51 v1.7 2019-06-01 12:08:00 +02:00
Daniel Friesel
b1591eed54 show current/next stop while checked in 2019-05-31 20:18:22 +02:00
Daniel Friesel
155f9f39cc use journey-specific status links -> one twitter card per journey 2019-05-29 20:01:52 +02:00
Daniel Friesel
146b3a2682 add twitter preview tags to public user status page 2019-05-29 18:11:25 +02:00
Daniel Friesel
22eee81c1c fix email fields in dark mode 2019-05-28 22:24:44 +02:00
Daniel Friesel
7fe95532c1 Use JSON for messages and route storage, prepare for extended route data 2019-05-26 17:28:21 +02:00
Daniel Friesel
45a4089431 Handle missing platform numbers 2019-05-25 23:04:36 +02:00
Daniel Friesel
302a6a144e Remove apple-mobile-web-app-capable tag to work around Safari session issues
iOS Safari does not send session cookies when following links to PWAs using
the apple-mobile-web-app-capable tag. This is not documented on
<https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html>,
though I can't say whether it is a bug in Safari or lacking documentation.

See <https://github.com/foosel/OctoPrint/issues/1792> for a more detailed
description of this type of issue.
2019-05-25 13:21:03 +02:00
Daniel Friesel
1dc04eb45a show journey suggestions on departure board as well 2019-05-20 19:15:21 +02:00
Daniel Friesel
8a43c4073f changelog 2019-05-19 10:37:59 +02:00
Daniel Friesel
d9d3aac792 allow checkin from connections view 2019-05-19 10:32:57 +02:00
Daniel Friesel
7960114f71 Work in progress: show connections when arriving soon
At the moment, the heuristic used to determine connection targets is quite
simple: $station is a target iff there were at least two trips in the past
6 weeks with checkin at the current destination station and checkout at
$station.

Todo / enhanhement options:

* Consider current origin station as well, i.e.: $station is a target
  iff there were at least two trips in the past 6 weeks which are preceded by
  a trip from the current origin station and (same as above)
* Make connection links clickable once the current journey has ended.
  Connections need to be added to _checked_out as well for this to work.
2019-05-19 08:55:23 +02:00
Daniel Friesel
e68043b8fb Show arrival/departure platform in journey card 2019-05-18 17:10:53 +02:00
Daniel Friesel
b4676c11fb Fix progress bar colours 2019-05-18 10:16:49 +02:00
Daniel Friesel
b9f8d536b5 fix input background color in dark theme 2019-05-18 08:49:28 +02:00
Daniel Friesel
99d0339602 changelog 2019-05-18 08:32:49 +02:00
Daniel Friesel
c3071d54eb Merge branch 'marudor-darkMode' 2019-05-18 08:31:13 +02:00
Daniel Friesel
2107c0bbaf release new asset version 2019-05-18 08:30:36 +02:00
Daniel Friesel
283f5aad04 remove debug output 2019-05-18 08:29:39 +02:00
Daniel Friesel
fa98aba3d3 Pre-select theme css in backend 2019-05-18 08:23:59 +02:00
Daniel Friesel
3668c69d1f correctly show departure station in cancelled view 2019-05-16 20:51:31 +02:00
Daniel Friesel
681ecabdf6 Provide light theme by default, avoid re-styling unless dark theme is active
This eliminates a large portion of main-thread work on page load
2019-05-16 20:39:54 +02:00
Daniel Friesel
6457ef2f9d fix typo in color scheme preference query 2019-05-16 20:32:58 +02:00
marudor
84b32b28e9
Further color improvements 2019-05-16 16:10:53 +02:00
marudor
87e74ca90d
Add color switcher to toolbar 2019-05-16 15:22:47 +02:00
marudor
5c2388d3a2
Add dark mode (only available with prefers-color-scheme currently) 2019-05-16 15:04:08 +02:00
Daniel Friesel
b85db3a10d Show web-hook test result immediately after saving it
Closes #12
2019-05-14 20:05:45 +02:00
Daniel Friesel
5c3a0a562a oops 2 (asset release) 2019-05-12 11:48:17 +02:00
Daniel Friesel
e171616c6f oops 2019-05-12 11:46:55 +02:00
Daniel Friesel
82297687ed social sharing for current journey 2019-05-12 11:44:28 +02:00
Daniel Friesel
42eafec28d update landingpage 2019-05-11 15:45:16 +02:00
Daniel Friesel
48fede41aa checked in: clarify checkout / update actions 2019-05-11 15:42:10 +02:00
marudor
94febe86cd
Release version 19, fix asset-release for macos 2019-05-11 12:51:41 +02:00
marudor
d2f01f963a
Do not nag directly for geolocation 2019-05-11 12:43:13 +02:00
Daniel Friesel
098d02972a switch to a less generic icon 2019-05-11 11:52:47 +02:00
Daniel Friesel
93c6e85f60 footer: Link to "about" page for travelynx 2019-05-11 10:10:07 +02:00
Daniel Friesel
736e36d45c account: fix uninitialized value warning 2019-05-11 01:42:14 +02:00
Daniel Friesel
b0397e50b4 add custom not_found and exception templates 2019-05-11 01:29:21 +02:00
Daniel Friesel
fc4cfade14 version bump 2019-05-10 19:07:37 +02:00
Daniel Friesel
269b8536f4 Add webhook to account page 2019-05-10 19:03:18 +02:00
Daniel Friesel
25c460a34a public status: Do not overwrite line name 2019-05-10 18:16:45 +02:00
Daniel Friesel
f6800c8668 javascript-based refresh of journey progress and countdown 2019-05-10 17:58:13 +02:00
Daniel Friesel
374da87182 hide status countdown when offline 2019-05-09 18:14:16 +02:00
Daniel Friesel
76bd6763df only show loading animation on links without custom animation 2019-05-07 17:56:40 +02:00
Daniel Friesel
bd676674e9 always show navbar, even when scrolling 2019-05-06 18:14:30 +02:00
Daniel Friesel
18df44cc71 add loading indicator to nav 2019-05-06 18:07:53 +02:00
Daniel Friesel
2ddab75644 basic webhook support, onwards to betatesting 2019-05-06 16:59:48 +02:00
Daniel Friesel
b36ba45aef WiP webhook support 2019-05-05 18:09:11 +02:00
Daniel Friesel
55581d1f25 update asset version 2019-05-05 12:41:06 +02:00
Daniel Friesel
4696f8d68e update material icons 2019-05-04 08:55:21 +02:00
Daniel Friesel
507ed344c3 checked in view: update sync_problem marker color 2019-05-04 08:30:18 +02:00
Daniel Friesel
a7b899dcc0 migrate to jQuery 3 2019-05-04 08:30:05 +02:00
Daniel Friesel
2810eb490c do not mange journey edit link on small devices 2019-05-03 21:39:50 +02:00
Daniel Friesel
1694026c86 add a description 2019-05-03 21:13:22 +02:00
Daniel Friesel
cdbb3ee45b use versioning for service worker and web app manifest 2019-05-03 21:02:24 +02:00
Daniel Friesel
5178e58c0c add apple mobile web app foo 2019-05-03 20:59:14 +02:00
Daniel Friesel
709919a962 Experimental PWA support (#13) 2019-05-03 20:43:46 +02:00
Daniel Friesel
9f3b80a859 use /account/... links for mail/password change 2019-05-03 18:57:24 +02:00
Daniel Friesel
03a6780405 checked_in menu: purple, not green 2019-05-03 18:34:18 +02:00
Daniel Friesel
545796c4a1 changelog: Do not include imprint 2019-05-03 12:31:57 +02:00
Daniel Friesel
973cccd494 checkin: lighter background color, more prominent destination selection 2019-05-03 10:49:14 +02:00
Daniel Friesel
bf2dae7c45 Add changelog 2019-05-03 10:32:58 +02:00
Daniel Friesel
be1e5dda23 Public API documentation 2019-05-02 11:29:43 +02:00
Daniel Friesel
3068652d35 oops 2019-05-02 10:24:05 +02:00
Daniel Friesel
3de5de7db2 Finish public-facing exposed user status (opt-in) 2019-05-02 10:05:15 +02:00
Daniel Friesel
1bf128936d account: move edit links to the left 2019-05-02 09:13:21 +02:00
Daniel Friesel
f0d61a4083 Prepare settings and templates for opt-in public travel status 2019-04-30 23:23:49 +02:00
Daniel Friesel
ddea9abc6e show imprint/privacy/version on all public-facing pages 2019-04-30 18:24:30 +02:00
Daniel Friesel
2d7c75f877 show imprint and version on landing page 2019-04-30 18:18:09 +02:00
Daniel Friesel
048767149e use a separate table for registration tokens 2019-04-30 18:05:07 +02:00
Daniel Friesel
99aa3a4a0d Implement deletion of inactive accounts 2019-04-30 12:48:23 +02:00
Daniel Friesel
867a5d4afb allow users to change their mail address
Closes #6
2019-04-30 12:08:51 +02:00
Daniel Friesel
4ad1a1d20e Move invalid input errors into common sub-template 2019-04-30 10:46:46 +02:00
Daniel Friesel
25d0530e86 Add password reset functionality
Closes #5
2019-04-29 20:12:59 +02:00
Daniel Friesel
fd6d12d355 Handle inconsistent data when calculating monthly/yearly stats
Closes #11
2019-04-28 22:33:09 +02:00
Daniel Friesel
cc1a620041 checked_in: make sync-failed marker less obtrusive 2019-04-27 10:48:47 +02:00
Daniel Friesel
d6e6c9992e History: Only show months and years with logged journeys 2019-04-27 09:11:42 +02:00
Daniel Friesel
8c1888263b show marker when unable to sync 2019-04-26 22:27:07 +02:00
Daniel Friesel
e07063c52c Add manual journey entry
Closes #3
2019-04-26 19:53:01 +02:00
Daniel Friesel
1e2e33399f checked_in: distinguish between unknown and not-yet-known arrival 2019-04-25 07:52:51 +02:00
Daniel Friesel
35b3fc44e9 history: Use buttons for links 2019-04-24 15:15:53 +02:00
Daniel Friesel
aa0f9fdeea show recent delay/qos messages in checked_in view 2019-04-24 14:58:08 +02:00
Daniel Friesel
501038ce11 _checked_in: Do not skip last two minutes of departure countdown 2019-04-24 12:15:26 +02:00
Daniel Friesel
b992a6dc75 $render(status => ...) is a special variable. derp. 2019-04-24 09:00:30 +02:00
Daniel Friesel
14d2dd52eb _checked_out: Link to destination station 2019-04-24 07:58:22 +02:00
Daniel Friesel
49f81c0c52 oops 2019-04-24 07:52:37 +02:00
Daniel Friesel
def2fedf98 _checked_in: Clarify checkout/interchange UI 2019-04-24 07:50:31 +02:00
Daniel Friesel
e726d076c3 _checked_in: Fix misleading output on arrival_countdown == 0 2019-04-24 07:38:45 +02:00
Daniel Friesel
438319e63a Bump API to v1 2019-04-24 07:34:41 +02:00
Daniel Friesel
79dcd4677e _checked_in: Fix uninitialized value warning 2019-04-23 23:03:02 +02:00
Daniel Friesel
6c1cae86f4 Primitive auto-refresh of current journey status
Todo: Redirect user to destination station upon arrival
2019-04-23 22:27:13 +02:00
Daniel Friesel
ffaa0c44a7 Automatic checkout \o/ 2019-04-23 21:30:31 +02:00
Daniel Friesel
5af134ef1e landingpage: Fix plural for "0 minutes" 2019-04-23 20:00:03 +02:00
Daniel Friesel
e168d9cd39 Use one row per journey instead of split checkin/checkout entries
Whether a user is in transit or not is now determined by an entry in the
in_transit table instead of a dangling checkin.

All completed journeys are stored in the "journeys" table.

This does most of the work needed for automatic checkout. However, note that
the corresponding worker process is not implemented yet.
2019-04-23 18:08:07 +02:00
Daniel Friesel
07c6e8878b journey detail: gps_off -> location_off 2019-04-21 17:25:22 +02:00
Daniel Friesel
78b2d995ef Ignore stations without coordinates in distance calculation
Reported by @marudor
2019-04-21 15:46:19 +02:00
Daniel Friesel
c6812f6083 Print db and host in development mode 2019-04-13 18:59:46 +02:00
Daniel Friesel
80a6317ac5 Use travelynx.conf for configuration and secrets
This avoids having to specify secrets in the environment, where they can leak
easily.
2019-04-13 12:18:26 +02:00
Daniel Friesel
9df9f7c845 edit journey: use link to cancel
This bypasses form element validation, which doesn't make sense for
"cancel edit"
2019-04-13 10:45:57 +02:00
Daniel Friesel
1ee185d26b work-in-progress manual journey entry. incomplete and not enabled yet. 2019-04-13 10:43:05 +02:00
Daniel Friesel
863a33b111 landingpage: Fix typo in required form element tag 2019-04-11 20:42:38 +02:00
Daniel Friesel
40d926e62d decrease minimum history width by hiding train number if line is available 2019-04-11 18:09:02 +02:00
Daniel Friesel
e91c540c8e history: Show time next to station 2019-04-10 17:51:51 +02:00