Commit graph

380 commits

Author SHA1 Message Date
Daniel Friesel
e8054faf76 checkout: throw an error when called with empty $station 2021-12-12 17:13:51 +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
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
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
08abde269b user_status: Use first available dep_info 2021-06-12 17:33:16 +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
0358cd51d5 also show wagon order when sections are unknown 2021-03-08 21:02:19 +01: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
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
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
5e29b99d61 remove superfluous ->app call 2020-12-17 20:58:47 +01:00
Daniel Friesel
8b86d0680a Helper/IRIS: fex error message encoding (use utf8) 2020-12-09 21:12:10 +01:00
Daniel Friesel
2ee5332ee5 warn if a connecting train may not be reached 2020-12-07 19:44:18 +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
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
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