Commit graph

47 commits

Author SHA1 Message Date
Daniel Friesel
e54130ad6e
optionally show local transit connections as well 2022-09-24 18:53:04 +02:00
Daniel Friesel
0e01485952
Account: Move helpers to a separate section 2022-07-30 10:41:31 +02:00
Daniel Friesel
ff290c78e0
services: add marudor.de/regional 2022-07-16 13:55:36 +02:00
Daniel Friesel
5eab0c14f4
optionally link to external departure boards where sensible (WiP) 2022-07-11 22:09:26 +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
209e291821
Move webhook database queries to Users model 2022-02-20 17:35:30 +01:00
Daniel Friesel
170c7e420e Controller/Account: refactor mail notifications into separate functions 2022-01-19 19:25:03 +01:00
Daniel Friesel
ac3c70597d
Account: do not disclose denylist filename on open error 2021-10-30 10:03:40 +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
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
aad2a53459 attempt to prevent registration spam 2021-04-20 21:59:17 +02:00
Daniel Friesel
a4ff5e8ad8 Switch to AGPL3+ 2021-01-29 18:32:13 +01:00
Daniel Friesel
b70ecc7c7c Add a bunch of licensing data 2020-11-27 22:12:56 +01:00
Daniel Friesel
7eb5f967f2 profile: limit history to four weeks by default 2020-09-04 18:38:35 +02:00
Daniel Friesel
f08bdaca5c Move user model to a separate module 2020-07-27 18:53:22 +02:00
Daniel Friesel
a1865fa69e add privacy setting for showing history and latest arrival timestamp 2020-02-14 16:29:44 +01:00
Daniel Friesel
561ff4574b Allow status visibility to be limited to travelynx users 2019-12-08 11:06:17 +01:00
Daniel Friesel
402a5597f5 Account: unset public_comment when public_status is disabled 2019-12-08 10:32:22 +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
1dc04eb45a show journey suggestions on departure board as well 2019-05-20 19:15:21 +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
269b8536f4 Add webhook to account page 2019-05-10 19:03:18 +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
954638e7c7 data export: use station names, not IDs 2019-05-03 21:14:49 +02:00
Daniel Friesel
af5c26bf8a Do not error out when receiving UIDs > INT_MAX 2019-05-02 11:34:52 +02:00
Daniel Friesel
3de5de7db2 Finish public-facing exposed user status (opt-in) 2019-05-02 10:05:15 +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
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
906ec60ea2 export: Add in_transit field 2019-04-24 07:13:38 +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
2aece36803 Use Mojo::Pg for all remaining Controller and Helper logic 2019-04-22 12:11:22 +02:00
Daniel Friesel
fb3fda9736 More Mojo::Pg migrations 2019-04-22 09:58:39 +02:00
Daniel Friesel
24d0943cdc refactor set_status_query and get_token_query 2019-04-19 15:56:54 -04:00
Daniel Friesel
1405eb6ea3 Add password change form 2019-04-06 11:20:10 +02:00
Daniel Friesel
45f409e3df Fix export layout 2019-04-05 21:42:54 +02:00
Daniel Friesel
4787dbae15 move mailing to sendmail helper 2019-04-02 20:10:48 +02:00
Daniel Friesel
e2b78170a5 Postgres does not require decode() calls 2019-03-25 18:11:48 +01:00
Daniel Friesel
632f731940 Migrate to postgresql 2019-03-25 17:04:39 +01:00
Daniel Friesel
32cc2f0f81 More refactoring 2019-03-22 16:56:49 +01:00