Daniel Friesel
f0d61a4083
Prepare settings and templates for opt-in public travel status
2019-04-30 23:23:49 +02:00
Daniel Friesel
2d7c75f877
show imprint and version on landing page
2019-04-30 18:18:09 +02:00
Daniel Friesel
048767149e
use a separate table for registration tokens
2019-04-30 18:05:07 +02:00
Daniel Friesel
a57a24c2d6
add "active user count" munin command
2019-04-30 12:56:11 +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
0226eba60a
maintenance: Also delete pending_passwords entries
2019-04-29 20:32:04 +02:00
Daniel Friesel
25d0530e86
Add password reset functionality
...
Closes #5
2019-04-29 20:12:59 +02:00
Daniel Friesel
6ff397c9b3
add database table/column comments
2019-04-29 10:25:17 +02:00
Daniel Friesel
fd6d12d355
Handle inconsistent data when calculating monthly/yearly stats
...
Closes #11
2019-04-28 22:33:09 +02:00
Daniel Friesel
d6e6c9992e
History: Only show months and years with logged journeys
2019-04-27 09:11:42 +02:00
Daniel Friesel
e500c2e537
work: Update route and messages
2019-04-26 22:12:34 +02:00
Daniel Friesel
a760274c7c
Invalidate stats cache after adding a new journey
2019-04-26 20:39:44 +02:00
Daniel Friesel
d77566bba4
add_journey: Fix incorrect return in case of unmatched station
2019-04-26 19:56:03 +02:00
Daniel Friesel
e07063c52c
Add manual journey entry
...
Closes #3
2019-04-26 19:53:01 +02:00
Daniel Friesel
2cae5a51d2
undo: Redirect to departure station when undoing a checkin
2019-04-25 09:22:54 +02:00
Daniel Friesel
aa0f9fdeea
show recent delay/qos messages in checked_in view
2019-04-24 14:58:08 +02:00
Daniel Friesel
b992a6dc75
$render(status => ...) is a special variable. derp.
2019-04-24 09:00:30 +02:00
Daniel Friesel
fd314e327d
maintenance, munin: Use journeys, not user_actions
2019-04-24 08:45:56 +02:00
Daniel Friesel
438319e63a
Bump API to v1
2019-04-24 07:34:41 +02:00
Daniel Friesel
906ec60ea2
export: Add in_transit field
2019-04-24 07:13:38 +02:00
Daniel Friesel
4c63efe4a1
Remove legacy action_type attributes
2019-04-23 23:04:04 +02:00
Daniel Friesel
3389ca2bcf
Fix checkin/checkout of cancelled journeys
2019-04-23 23:02:57 +02:00
Daniel Friesel
6c1cae86f4
Primitive auto-refresh of current journey status
...
Todo: Redirect user to destination station upon arrival
2019-04-23 22:27:13 +02:00
Daniel Friesel
ffaa0c44a7
Automatic checkout \o/
2019-04-23 21:30:31 +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
812be4f0cb
Finish transition from DBI to Mojo::Pg
2019-04-22 13:42:41 +02:00
Daniel Friesel
c65232904f
Use Mojo::Pg for migrations
2019-04-22 12:30:05 +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
4ed24c5565
Also use Mojo::Pg for user_status and user_travels queries
2019-04-22 11:11:14 +02:00
Daniel Friesel
fb3fda9736
More Mojo::Pg migrations
2019-04-22 09:58:39 +02:00
Daniel Friesel
b860b46e52
database migrate: Use truncate
2019-04-21 17:45:25 +02:00
Daniel Friesel
78b2d995ef
Ignore stations without coordinates in distance calculation
...
Reported by @marudor
2019-04-21 15:46:19 +02:00
Daniel Friesel
24d0943cdc
refactor set_status_query and get_token_query
2019-04-19 15:56:54 -04:00
Daniel Friesel
eff979081c
Add a registration test
2019-04-18 14:51:45 -04:00
Daniel Friesel
065c844fde
Refactor munin command to use Mojo::Pg
2019-04-17 13:36:01 -04:00
Daniel Friesel
8ad05720a2
Refactor user_actions insert/update/delete statements with Mojo::Pg
2019-04-17 13:35:38 -04:00
Daniel Friesel
ecedc6a4f2
Add a dumpconfig command, mostly useful to debug Docker setups
2019-04-17 07:11:04 -04:00
Daniel Friesel
c23334896d
Initiate transition to Mojo::Pg
2019-04-17 07:10:49 -04:00
Daniel Friesel
d9b82a4133
Sendmail: Actually print info log messages as documented
2019-04-17 07:07:05 -04:00
Daniel Friesel
e1e07d5811
Set version via config
2019-04-14 17:34:30 -04:00
Daniel Friesel
c19f239d1d
Do not print error when encountering an empty database
2019-04-14 08:44:27 +02:00
Markus Witt
ed397093c2
database setup: merge setup and migration code paths
2019-04-13 23:36:58 +02:00
Daniel Friesel
13dbcf8761
add explicit config toggle to disable sendmail
2019-04-13 18:56:06 +02:00
Daniel Friesel
4d413d06a3
"database" sub-command: Provide an exit status
2019-04-13 17:17:44 +02:00
Daniel Friesel
ee53b8f37e
Pass config to sendmail helper
2019-04-13 17:09:10 +02:00
Markus Witt
4bf62cf2a8
fix dbschema: add type for edited
2019-04-13 16:56:15 +02:00
Daniel Friesel
80a6317ac5
Use travelynx.conf for configuration and secrets
...
This avoids having to specify secrets in the environment, where they can leak
easily.
2019-04-13 12:18:26 +02:00
Daniel Friesel
61b1ef398e
maintenance: Fix stats table name
2019-04-13 11:52:26 +02:00