Daniel Friesel
|
582bfbe661
|
Traewelling: more consistent error messages
|
2022-02-17 21:40:47 +01:00 |
|
Daniel Friesel
|
167b01fa42
|
link traewelling profile from travelynx profile; show traewelling status
|
2022-02-16 20:56:28 +01:00 |
|
Daniel Friesel
|
ef3252863e
|
Traewelling::get: Use named args
|
2022-02-16 20:39:49 +01:00 |
|
Daniel Friesel
|
8f906da9c2
|
traewelling: log an error if pull sync fails
|
2022-02-16 20:39:00 +01:00 |
|
Daniel Friesel
|
faf8952b87
|
Send inactivity notification prior to account deletion
|
2022-02-14 21:58:30 +01:00 |
|
Daniel Friesel
|
170c7e420e
|
Controller/Account: refactor mail notifications into separate functions
|
2022-01-19 19:25:03 +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
|
71fa446800
|
traewelling sync: push first, then pull
|
2022-01-08 10:46:31 +01:00 |
|
Daniel Friesel
|
879b3b3815
|
fix caching fuckup introduced in 2e5a1b0a79
|
2021-12-12 17:24:24 +01:00 |
|
Daniel Friesel
|
2e5a1b0a79
|
DBDB: only use apps-bahn wagon order API for now
|
2021-12-12 16:38:26 +01:00 |
|
Daniel Friesel
|
ac3c70597d
|
Account: do not disclose denylist filename on open error
|
2021-10-30 10:03:40 +02:00 |
|
Daniel Friesel
|
ed0054fa50
|
Allow usage of custom hafas-rest-api instances
|
2021-10-30 10:02:58 +02:00 |
|
Daniel Friesel
|
3dc5575d5a
|
Switch from Geo::Distance (deprecated) to GIS::Distance
|
2021-10-23 22:20:41 +02:00 |
|
Daniel Friesel
|
a34a67b2f9
|
Add account add / delete CLI for sites with web registration disabled
|
2021-09-13 20:55:11 +02:00 |
|
Daniel Friesel
|
39ab6e57d3
|
allow registration to be denied for certain IPs, e.g. known spammers
(yes, there are actually spambots flooding people with unsolicited
registration e-mails)
|
2021-08-20 22:52:02 +02:00 |
|
Daniel Friesel
|
37a0b8f2ab
|
Handle another case of funky HAFAS html ("foo <> bar")
|
2021-07-12 19:16:14 +02:00 |
|
Daniel Friesel
|
7b01cae7d5
|
Pass scheduled arrival and departure times to Traewelling API
This ensures unambiguous checkins for ring lines. See
eaf975a333
|
2021-07-01 19:44:09 +02:00 |
|
Daniel Friesel
|
255d0610f1
|
Journeys->add: Support complete routes, not just intermediate stops
|
2021-06-21 17:54:09 +02:00 |
|
Daniel Friesel
|
95674ee2ea
|
Add explanation to name change page
|
2021-06-14 19:30:58 +02:00 |
|
Daniel Friesel
|
1803a1723c
|
move user name validation to Users model
|
2021-06-13 08:48:08 +02:00 |
|
Daniel Friesel
|
581aae081d
|
Model/Users: Remove superfluous "check_if_" prefix from check functions
|
2021-06-13 06:20:21 +02:00 |
|
Daniel Friesel
|
6cee1e20ef
|
allow users to change their name
|
2021-06-12 19:00:42 +02:00 |
|
Daniel Friesel
|
9221ddce85
|
HAFAS: Work around yet another case of invalid XML
|
2021-06-05 14:17:49 +02:00 |
|
Daniel Friesel
|
16c1d12373
|
remove arbitrary HTML tags from HAFAS HIMMessage attribute content
|
2021-04-24 09:11:18 +02:00 |
|
Daniel Friesel
|
810945f8bc
|
munin: add pending_user_count
|
2021-04-20 23:10:22 +02:00 |
|
Daniel Friesel
|
aad2a53459
|
attempt to prevent registration spam
|
2021-04-20 21:59:17 +02:00 |
|
Daniel Friesel
|
aabf3104b1
|
munin: Do not crash on CET -> CEST DST transition
|
2021-04-05 09:46:28 +02:00 |
|
Daniel Friesel
|
1f3b3c742c
|
munin: fix date range calculation
TODO: handle CET -> CEST transition (there's a day each year where 2am does not
exist and DateTime does not like it)
|
2021-04-05 09:46:28 +02:00 |
|
Daniel Friesel
|
11727e0f99
|
*sigh* oh hafas, you so hafas
|
2021-03-29 20:58:35 +02:00 |
|
Daniel Friesel
|
574e83d567
|
Move incomplete checkin removal from "maintenance" to "work" task
|
2021-03-07 19:06:21 +01:00 |
|
Daniel Friesel
|
a21826a055
|
Traewelling: Ignore HTTP 406 on checkin as well
HTTP 406 indicates that a user has not accepted the ToS / privacy policy
|
2021-02-21 21:13:09 +01:00 |
|
Daniel Friesel
|
3f33341a2e
|
HAFAS: Remove all illegal linebreaks from attributes, not just the first
|
2021-02-06 18:06:09 +01:00 |
|
Daniel Friesel
|
6c015a91b8
|
Traewelling: Do not warn on 409 Conflict
|
2021-02-06 16:34:03 +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
|
5b1841ccce
|
HAFAS: Handle <br> tags in HTML attributes
|
2021-02-06 12:13:25 +01:00 |
|
Daniel Friesel
|
0088f11eb0
|
Remove workaround for https://github.com/Traewelling/traewelling/issues/72
Issue has been fixed
|
2021-02-02 18:20:49 +01:00 |
|
Daniel Friesel
|
5bef0bdda9
|
Switch to a more performant wagon order backend
|
2021-02-02 18:17:45 +01:00 |
|
Daniel Friesel
|
a4ff5e8ad8
|
Switch to AGPL3+
|
2021-01-29 18:32:13 +01:00 |
|
Daniel Friesel
|
db39b2a177
|
Handle invalid HAFAS XML containing "Wagen \d+ & \d+"
|
2021-01-05 22:27:46 +01:00 |
|
Daniel Friesel
|
8b86d0680a
|
Helper/IRIS: fex error message encoding (use utf8)
|
2020-12-09 21:12:10 +01:00 |
|
Daniel Friesel
|
2613fc0e58
|
use stats-enabled list view for year list as well
|
2020-12-03 22:15:09 +01:00 |
|
Daniel Friesel
|
a5ab4fa6a8
|
regularly generate statistics in the background
|
2020-12-03 21:42:17 +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
|
0addce7bff
|
month overview: distinguish between no stats and no journeys
|
2020-11-21 15:39:21 +01:00 |
|
Daniel Friesel
|
ccfdd8007e
|
testing a more organized history navigation
|
2020-11-21 15:34:06 +01:00 |
|
Daniel Friesel
|
5e96745121
|
HAFAS: Distinguish between disguised HTTP 404 and invalid XML
|
2020-11-06 11:23:22 +01:00 |
|
Daniel Friesel
|
c70280a935
|
Merge HAFAS XML fix from DBF
|
2020-10-25 16:35:43 +01:00 |
|
Daniel Friesel
|
dc7bc5a5f4
|
work: Fix travelynx->Traewelling sync when several users are checked in
I made a derp
|
2020-10-19 19:33:40 +02:00 |
|
Daniel Friesel
|
8123797cf1
|
Traewelling: use the recently added login token expiry field
|
2020-10-17 11:03:47 +02:00 |
|