Derf Null
671e518caf
get_user_status: expose lat/lon from database view, do not re-compute it
2023-05-16 20:02:20 +02:00
Derf Null
b7720a1acf
get_user_status: remove superfluous station requests
2023-05-16 19:56:02 +02:00
Derf Null
b9f8ccd82a
ajax route: handle missing schedule data
2023-05-11 18:32:27 +02:00
Derf Null
af3cdee113
route: only override delay if real-time data is not available
2023-05-01 11:38:11 +02:00
Derf Null
796699a9c6
add_route_timestamps: keep real-time data where possible
2023-04-30 07:42:48 +02:00
Derf Null
852c7797b0
Update HAFAS polylines prior to checkout
...
In case of diversions, the polyline fetched at checkin time may no longer be
accurate. Request a new polyline prior to checkout to address this.
Closes #66
2023-04-01 18:05:32 +02:00
Derf Null
402fcc4d6f
move profile / public data to a separate controller
2023-03-13 21:06:53 +01:00
Derf Null
abc1e4e3a8
work: avoid race conditions with frontend when calling checkout
2023-03-10 17:18:08 +01:00
Daniel Friesel
609d7b3ebc
remove unused journey_edit_mask attrs
2023-03-09 19:10:08 +01:00
Daniel Friesel
5d2bc54343
remve unused account_public_mask attr
2023-03-05 12:48:01 +01:00
Daniel Friesel
5d20bf155a
resolve_sb_template: escape / in station name
2023-03-04 10:55:05 +01:00
Daniel Friesel
e1231b88e2
status/profile: re-add ability to show latest checkout, if desired
...
got lost in 1.30.0
2023-03-04 09:03:50 +01:00
Daniel Friesel
6d261197e3
set visibility per journey (wip)
...
some odds and ends left to polish, but ready for testing
2023-02-27 22:14:54 +01:00
Daniel Friesel
fb3878665b
update ze copyright
2023-02-19 09:35:38 +01:00
Daniel Friesel
978c7b03c2
journey: add share button
2023-02-15 20:01:43 +01:00
Daniel Friesel
1c63574245
users: rename "add_user" to "add" and "get_data" to "get"
2023-01-22 12:44:19 +01:00
Daniel Friesel
e98fc8493f
annotate unused TRavelynx.pm components (todo)
2023-01-22 12:34:54 +01:00
Daniel Friesel
8e94fcea5f
move token type to ID map from Travelynx.pm to Model/Users
2023-01-22 12:33:02 +01:00
Daniel Friesel
59e9a24aa6
move get_api_token to users model
2023-01-22 11:34:53 +01:00
Daniel Friesel
4abc43b72e
change route/stop layout to [name, eva, {data}]
2023-01-15 16:37:32 +01:00
Daniel Friesel
113caf705d
base_url_for: fix config key (it's "base_url")
2023-01-08 09:59:18 +01:00
Daniel Friesel
7b2cd23c39
add webfinger "profile-page" support (for public profiles only)
2023-01-08 09:40:49 +01:00
Daniel Friesel
3abe6aed5c
it's a secret to everybody.
2022-12-27 11:07:16 +01:00
Daniel Friesel
44ced8056c
add_route_timestamps: change log severity to debug
...
we cannot do much about backend errors
2022-12-23 21:22:03 +01:00
Daniel Friesel
fc9562f790
Improve "Betriebsstelle nicht bekannt" handling
2022-12-12 18:20:40 +01:00
Daniel Friesel
115e07f35c
move grep_unknown_stations to Stations model
2022-12-08 18:22:09 +01:00
Daniel Friesel
afedcef266
get name/ds100 from db and lat/lon from dict
...
result: significant performance improvement for stats generation
2022-12-07 22:46:04 +01:00
Daniel Friesel
2f9ba6e017
switch to internal station database; add out-of-service stations for old journeys
2022-12-07 19:42:48 +01:00
Daniel Friesel
6594d74edd
show expected utilization alongsie train route
2022-11-12 11:10:58 +01:00
Daniel Friesel
fa94447f10
only show important HIM messages
2022-11-10 17:46:43 +01:00
Daniel Friesel
df74dd5cf9
route: handle stops without real-time data
2022-11-09 19:28:48 +01:00
Daniel Friesel
d75ae5eb45
travelynx no longer requires XML::LibXML
2022-11-09 18:15:18 +01:00
Daniel Friesel
c26c8820f2
Switch to internal HAFAS client for connection details
2022-11-09 18:14:07 +01:00
Daniel Friesel
528f59dbd2
obtain polylines via mgate (T-S-DE-HAFAS)
2022-11-05 22:01:51 +01:00
Daniel Friesel
087d3871e1
Use Travel::Status::DE::HAFAS instead of traininfo.exe for journey details
2022-11-05 19:19:52 +01:00
Daniel Friesel
4367085887
add legend (not referenced yet)
2022-09-23 17:35:02 +02:00
marudor
dbe379a34d
use bahn.expert as new domain for marudor.de
2022-08-19 18:13:13 +02:00
Daniel Friesel
0e14df21d2
traewelling: more detailed error messages
2022-08-17 21:51:24 +02:00
Daniel Friesel
d0c061569d
Traveling: Rename log_action to travel_action
2022-08-02 22:22:10 +02:00
Daniel Friesel
83954508f0
move get_connecting_trains helper to Traveling controller
2022-07-30 10:27:57 +02:00
Daniel Friesel
1712694011
mov get_connection_targets helper to Journeys Model
2022-07-29 10:10:34 +02:00
Daniel Friesel
116becccb0
.
2022-07-16 20:34:11 +02:00
Daniel Friesel
8c15966bd1
dbf: link to currently checked in train
2022-07-15 22:26:50 +02:00
Daniel Friesel
e2214dfdcd
repair /offline.html
2022-07-15 19:27:47 +02:00
Daniel Friesel
5eab0c14f4
optionally link to external departure boards where sensible (WiP)
2022-07-11 22:09:26 +02:00
Daniel Friesel
4deb0bde0b
.
2022-07-11 22:08:02 +02:00
Daniel Friesel
13b4572a2f
limit password length to 10000 characters
...
that should be sufficient…
2022-03-07 18:12:43 +01:00
Daniel Friesel
01aec7e977
fix ajax refresh of public status card (trim .html suffix)
2022-02-20 21:45:51 +01:00
Daniel Friesel
209e291821
Move webhook database queries to Users model
2022-02-20 17:35:30 +01:00
Daniel Friesel
582bfbe661
Traewelling: more consistent error messages
2022-02-17 21:40:47 +01:00
Daniel Friesel
6e95180a3c
handle missing 'base_url' in travelynx.conf
2022-02-16 21:29:28 +01:00
Daniel Friesel
167b01fa42
link traewelling profile from travelynx profile; show traewelling status
2022-02-16 20:56:28 +01:00
Daniel Friesel
6fc21cac41
Use correct base URL when running a command job (work/maintenance)
2022-02-14 21:41:32 +01:00
Daniel Friesel
1233796866
Traewelling: Use API v1 for pull sync
...
API v0 has occasional performance issues and is not a preferable
maintenance target
2022-01-08 14:36:31 +01:00
Daniel Friesel
e8054faf76
checkout: throw an error when called with empty $station
2021-12-12 17:13:51 +01:00
Daniel Friesel
ed0054fa50
Allow usage of custom hafas-rest-api instances
2021-10-30 10:02:58 +02:00
Daniel Friesel
79b55c430d
allow registration to be disabled via config
2021-09-12 08:15:59 +02:00
Daniel Friesel
9d4f3f8ce1
Ensure that database timezone matches IRIS time zone
...
All travelynx and IRIS timestamps are Europe/Berlin. And the DateTime objects
know that they are Europe/Berlin. However, when inserting into a timestamp with
time zone column, Mojo::Pg or one of the backend DBI/DBD libraries does not
respect the time zone. So, UTC+1 or UTC+2 timestamps are treated as UTC+0,
resulting in major mayhem.
2021-09-03 20:24:54 +02:00
Daniel Friesel
6cee1e20ef
allow users to change their name
2021-06-12 19:00:42 +02:00
Daniel Friesel
08abde269b
user_status: Use first available dep_info
2021-06-12 17:33:16 +02:00
Daniel Friesel
0358cd51d5
also show wagon order when sections are unknown
2021-03-08 21:02:19 +01:00
Daniel Friesel
9666a2c6bc
Do not warn on HAFAS "extra content at the end" (that's just an in-band 404)
2021-02-08 18:08:19 +01:00
Daniel Friesel
9223ba5fa1
fall back to apps-bahn if ist-wr does not know about a train
2021-02-06 12:31:35 +01:00
Daniel Friesel
a4ff5e8ad8
Switch to AGPL3+
2021-01-29 18:32:13 +01:00
Daniel Friesel
5e29b99d61
remove superfluous ->app call
2020-12-17 20:58:47 +01:00
Daniel Friesel
2ee5332ee5
warn if a connecting train may not be reached
2020-12-07 19:44:18 +01:00
Daniel Friesel
77ecd6d034
move statistics cache to a separate model class
2020-11-28 21:03:51 +01:00
Daniel Friesel
b70ecc7c7c
Add a bunch of licensing data
2020-11-27 22:12:56 +01:00
Daniel Friesel
bed4ebe4cc
another log level adjustment
2020-11-09 22:58:56 +01:00
Daniel Friesel
c8832e410e
add_route_timestamps: adjust log severity
...
we can't do anything about "trainlink not found", so it really shouldn't be
a warning.
2020-11-08 18:44:32 +01:00
Daniel Friesel
e61550f751
Move remaining journeys queries to journeys model class
2020-10-11 21:08:22 +02:00
Daniel Friesel
b1348c7d4a
move in_transit queries to an InTransit model class
2020-10-11 19:38:01 +02:00
Daniel Friesel
b6330217f0
calculate tripid from trainsearch.exe.
...
Removes the need for an additional transport.rest request.
2020-10-11 12:04:33 +02:00
Daniel Friesel
3ca18af9b6
make unknown stations warning more helpful
2020-10-08 20:04:25 +02:00
Daniel Friesel
e8ff730320
Stats: Fix handling of negative cumulative arrival/departure delays
2020-10-06 19:28:00 +02:00
Daniel Friesel
9acc9822e4
also allow regionalExpress, just to be safe
2020-10-04 13:09:47 +02:00
Daniel Friesel
ce88fe440c
HAFAS "national" trips are also trains
2020-10-04 13:04:52 +02:00
Daniel Friesel
89e709d8d5
Allow linking a Träwelling account, auto-sync Träwelling→travelynx
...
travelynx→Träwelling is still work-in-progress
Squashed commit of the following:
commit 97faa6e2e6c8d20fba30f2d0f6e78187ceeb72e6
Author: Daniel Friesel <derf@finalrewind.org>
Date: Wed Sep 30 18:50:05 2020 +0200
improve traewelling log and tx handling
commit 487d7dd728b9d45b731bdc7098cf3358ea2e206e
Author: Daniel Friesel <derf@finalrewind.org>
Date: Wed Sep 30 18:02:41 2020 +0200
add missing traewelling template
commit 0148da2f48d9a52dcddc0ab81f83d8f8ac3062ab
Author: Daniel Friesel <derf@finalrewind.org>
Date: Wed Sep 30 18:02:35 2020 +0200
improve traewelling pull sync
commit 4861a9750f9f2d7621043361d0af6b0a8869a0df
Author: Daniel Friesel <derf@finalrewind.org>
Date: Tue Sep 29 22:14:24 2020 +0200
wip checkin from traewelling
commit f6aeb6f06998a2a7a80f63a7b1b688b1a26b66bd
Author: Daniel Friesel <derf@finalrewind.org>
Date: Tue Sep 29 18:37:53 2020 +0200
refactor traewelling integration. login and logout are less of a hack now.
checkin and checkout are not supported at the moment.
2020-09-30 19:12:29 +02:00
Daniel Friesel
e27e37190e
add explicit empty return statements to promise handlers
2020-09-20 10:01:03 +02:00
Daniel Friesel
874de11298
handle rejected promises; do not accidentally duplicate rejections
2020-09-10 21:20:26 +02:00
Daniel Friesel
4171fe22ca
add DBDB helper for wagonorder and stationinfo
2020-09-06 12:55:25 +02:00
Daniel Friesel
482fa975b5
add public profile page and public journey details
2020-09-03 22:27:50 +02:00
Daniel Friesel
47b957361e
Move most journey code to newly introduced Journey model
2020-08-16 21:20:23 +02:00
Daniel Friesel
d9624ee308
Remove now-useless include
2020-08-15 08:25:24 +02:00
Daniel Friesel
717cc18a40
Move get_departures to a separate IRIS helper
2020-08-06 16:04:12 +02:00
Daniel Friesel
56c275875c
Move HAFAS helpers to a separate Helper module
2020-07-28 13:01:44 +02:00
Daniel Friesel
f08bdaca5c
Move user model to a separate module
2020-07-27 18:53:22 +02:00
Daniel Friesel
f5fd6d42e1
Add CSV Export
2020-04-19 18:26:20 +02:00
Daniel Friesel
5ce4bc6995
improve commute station heuristic
...
Select top station on work days (Mo .. Fr) with arrival < 13:00 or
departure >= 13:00.
2020-04-19 17:40:39 +02:00
Daniel Friesel
a3cfa598a6
use german locale in epoch_to_dt helper
2020-04-19 17:09:02 +02:00
Daniel Friesel
0a87135e35
get_top_destinations: order by count desc
...
order is ascending by default, resulting in flop instead of top destinations.
2020-04-19 16:50:50 +02:00
Daniel Friesel
94932c4102
add commute stats. not linked from nav yet.
2020-04-19 16:49:31 +02:00
Daniel Friesel
ac2a23c3fa
Fix occasionally incorrect TripIDs (and thus incorrect polylines)
...
Until now, tripIDs were cached based on station and departure timestamp.
These are identical for any two trains departing at the same time at the same
station, leading to one of those getting being assigned a wrong tripID.
From now on, only the JSON reported by transport.rest is cached -- tripIDs
are always recomputed based on it.
2020-04-16 09:47:31 +02:00
Daniel Friesel
d66cf00d9d
log train number when encountering a timestamp error
2020-04-16 04:55:04 +02:00
Daniel Friesel
e5f273ced3
ignore missing timestamps when performing a force checkout
2020-04-16 04:54:41 +02:00
Daniel Friesel
4cc510d710
use polyline when computing monthly/yearly distance travelled
...
Closes #40
2020-04-14 18:22:49 +02:00
Daniel Friesel
6826c03386
show select past departures in checkin suggestion list
...
Previously, for each destination, up to two departures between now and
now + 40 minutes were shown.
When performing a fresh checkin (i.e., the has not logged a journey in the
past few minutes and is not currently checked in), the departure list now
additionally contains all departures between now - 5 minutes and now.
When checking in from a train (i.e., the user has recently checked out at
the station or is still checked in), it additionally contains all departures
between arrival time and now.
Closes #33
2020-04-14 17:45:09 +02:00
Daniel Friesel
e6b74ef087
show QoS pictograms in connection list
2020-03-03 18:29:37 +01:00
Daniel Friesel
3c897ad62a
polyline sanity check: Handle border stations and incomplete IRIS routes
2020-02-25 21:25:53 +01:00
Daniel Friesel
1d2b37f849
Ignore polylines which do not agree with IRIS route
2020-02-25 17:55:19 +01:00