summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)AuthorLines
2022-05-27limit number of concurrent traewelling requests to five per second1.22.4Daniel Friesel-4/+12
2022-04-02history map: allow filtering by train typeDaniel Friesel-0/+14
2022-04-02history map: add filter by dateDaniel Friesel-13/+47
2022-03-30hafas: more generic fix for invalid XML1.22.2Daniel Friesel-2/+1
2022-03-07limit password length to 10000 charactersDaniel Friesel-2/+2
that should be sufficient…
2022-03-06Traewelling: checkin: HTTP 401 is mostly harmless, tooDaniel Friesel-1/+4
401 typically indicates an expired login token
2022-02-20fix ajax refresh of public status card (trim .html suffix)1.22.1Daniel Friesel-14/+19
2022-02-20Move webhook database queries to Users modelDaniel Friesel-73/+91
2022-02-20work: move DB manipulation to InTransit helperDaniel Friesel-109/+139
2022-02-19worker: run maintenance every 10 hoursDaniel Friesel-10/+14
2022-02-18maintenance: Log deletion notification to stdoutDaniel Friesel-4/+5
2022-02-17Traewelling: more consistent error messagesDaniel Friesel-10/+9
2022-02-16handle missing 'base_url' in travelynx.confDaniel Friesel-1/+9
2022-02-16link traewelling profile from travelynx profile; show traewelling statusDaniel Friesel-6/+29
2022-02-16Traewelling::get: Use named argsDaniel Friesel-6/+8
2022-02-16traewelling: log an error if pull sync failsDaniel Friesel-0/+6
2022-02-14Send inactivity notification prior to account deletionDaniel Friesel-4/+94
2022-02-14Use correct base URL when running a command job (work/maintenance)Daniel Friesel-4/+15
2022-01-19Controller/Account: refactor mail notifications into separate functionsDaniel Friesel-127/+174
2022-01-08Traewelling: Use API v1 for pull sync1.21.4Daniel Friesel-21/+19
API v0 has occasional performance issues and is not a preferable maintenance target
2022-01-08traewelling sync: push first, then pullDaniel Friesel-24/+24
2021-12-12fix caching fuckup introduced in 2e5a1b0a79e3a54e159cf598b2a0d398109a7bf41.21.3Daniel Friesel-8/+14
2021-12-12checkout: throw an error when called with empty $stationDaniel Friesel-14/+19
2021-12-12DBDB: only use apps-bahn wagon order API for nowDaniel Friesel-5/+4
2021-10-30Account: do not disclose denylist filename on open errorDaniel Friesel-9/+13
2021-10-30Allow usage of custom hafas-rest-api instancesDaniel Friesel-6/+12
2021-10-23Switch from Geo::Distance (deprecated) to GIS::DistanceDaniel Friesel-10/+10
2021-09-13Add account add / delete CLI for sites with web registration disabledDaniel Friesel-2/+133
2021-09-12allow registration to be disabled via configDaniel Friesel-2/+5
2021-09-03Ensure that database timezone matches IRIS time zone1.21.1Daniel Friesel-0/+9
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-08-20allow registration to be denied for certain IPs, e.g. known spammersDaniel Friesel-0/+16
(yes, there are actually spambots flooding people with unsolicited registration e-mails)
2021-07-12Handle another case of funky HAFAS html ("foo <> bar")1.20.3Daniel Friesel-0/+8
2021-07-01Pass scheduled arrival and departure times to Traewelling API1.20.2Daniel Friesel-1/+30
This ensures unambiguous checkins for ring lines. See https://github.com/Traewelling/traewelling/commit/eaf975a3337a151c4759428747342ce49eadea47
2021-06-21Journeys->add: Support complete routes, not just intermediate stops1.20.1Daniel Friesel-9/+19
2021-06-14Add explanation to name change pageDaniel Friesel-4/+17
2021-06-13move user name validation to Users modelDaniel Friesel-29/+34
2021-06-13Model/Users: Remove superfluous "check_if_" prefix from check functionsDaniel Friesel-5/+5
2021-06-12allow users to change their nameDaniel Friesel-75/+159
2021-06-12user_status: Use first available dep_infoDaniel Friesel-1/+1
2021-06-05HAFAS: Work around yet another case of invalid XMLDaniel Friesel-2/+6
2021-04-24remove arbitrary HTML tags from HAFAS HIMMessage attribute content1.19.13Daniel Friesel-1/+8
2021-04-20munin: add pending_user_count1.19.12Daniel Friesel-0/+3
2021-04-20attempt to prevent registration spam1.19.11Daniel Friesel-0/+14
2021-04-05munin: Do not crash on CET -> CEST DST transition1.19.10Daniel Friesel-15/+19
2021-04-05munin: fix date range calculationDaniel Friesel-7/+9
TODO: handle CET -> CEST transition (there's a day each year where 2am does not exist and DateTime does not like it)
2021-03-29*sigh* oh hafas, you so hafas1.19.9Daniel Friesel-1/+2
2021-03-08also show wagon order when sections are unknownDaniel Friesel-1/+0
2021-03-07Move incomplete checkin removal from "maintenance" to "work" taskDaniel Friesel-11/+11
2021-02-21Traewelling: Ignore HTTP 406 on checkin as well1.19.7Daniel Friesel-1/+1
HTTP 406 indicates that a user has not accepted the ToS / privacy policy
2021-02-08Do not warn on HAFAS "extra content at the end" (that's just an in-band 404)Daniel Friesel-1/+3