Commit graph

662 commits

Author SHA1 Message Date
Birte Kristina Friesel
0604dd80f8
WIP: HAFAS support 2023-08-13 12:51:15 +02:00
Birte Kristina Friesel
944688cfff
influxdb: add stations statistics 2023-08-13 10:55:32 +02:00
Birte Kristina Friesel
8ec002f041
Store traewelling refresh token in database 2023-08-09 19:28:36 +02:00
Birte Kristina Friesel
3ec9970f01
traewelling oauth: pass HTTP redirect_uri in development mode 2023-08-09 19:26:25 +02:00
Birte Kristina Friesel
db7e5faaf4
sort timeline (descending by checkin timestamp, so most recent checkins first) 2023-08-08 19:53:37 +02:00
Birte Kristina Friesel
a08a4be89e
Fix Traewelling OAuth2 behind reverse proxies
a reverse proxy makes mojolicious believe that it is using HTTP, even though
it is HTTPS.
2023-08-08 18:15:31 +02:00
Birte Kristina Friesel
52c0da3f46
Traewelling: replace legacy password login with OAuth2
This is a breaking change insofar as that traewelling support is no longer
provided automatically, but must be enabled by providing a traewelling.de
application ID and secret in travelynx.conf. However, as traewelling.de
password login is deprecated and wil soon be disabled, travelynx would break
either way. So we might or might not see travelynx 2.0.0 in the next days.

Automatic token refresh is still todo, but that was the case for password
login as well.

Closes #64
2023-08-07 21:17:10 +02:00
Birte Kristina Friesel
38ad42b42c
convert checkout to promises (checkout_p) 2023-07-23 20:18:10 +02:00
Birte Kristina Friesel
13277ad770
checkout: remove with_related special case
travelynx now always calls checkout with the database-provided arr_eva,
so the edge case in which it provided a station that is not actually on the
route of a train can no longer appear.
2023-07-23 12:21:37 +02:00
Birte Kristina Friesel
9209cb292e
database: stations: make 'ds100' column optional.
HAFAS stations do not necessarily have ds100 codes
2023-07-22 18:03:46 +02:00
Birte Kristina Friesel
86ddfe5c97
Users->delete: delete relations as well 2023-07-19 09:17:19 +02:00
Birte Kristina Friesel
fef9ebe0b2
followee list: show if accounts are following back 2023-07-18 15:47:45 +02:00
Birte Kristina Friesel
19cd9f7a8d
account: add a list of sent follow requests 2023-07-16 23:01:23 +02:00
Birte Kristina Friesel
f9d1c266ce
action#checkin: re-add auto checkout
was removed from $self->checkin in 1074f248cc
2023-07-16 17:20:36 +02:00
Birte Kristina Friesel
b0bb69d87e
show followee checkins in departure board 2023-07-16 10:30:47 +02:00
Birte Kristina Friesel
40bec7774b
cleanup; perltidy 2023-07-16 10:30:23 +02:00
Birte Kristina Friesel
9df937c890
remove debug output 2023-07-15 23:23:11 +02:00
Birte Kristina Friesel
1cca278baa
add timeline / current checkins 2023-07-15 19:20:37 +02:00
Birte Kristina Friesel
bee67f096a
get_user_status: fix stop_before_dest calculation 2023-07-15 19:16:01 +02:00
Birte Kristina Friesel
40cd1d06fe
postprocess timeline; move user-related parts to get_user_status 2023-07-15 19:07:21 +02:00
Birte Kristina Friesel
5006bf6249
database: change maximum comment length 2023-07-15 17:10:24 +02:00
Birte Kristina Friesel
3c59efe2d4
timeline: minimum visibility is followers-only, not unlisted 2023-07-15 16:12:09 +02:00
Birte Kristina Friesel
cdce746afd
increase maximum comment length 2023-07-15 16:11:21 +02:00
Birte Kristina Friesel
b446b68e67
Move InTransit post-processing to InTransit module 2023-07-15 13:28:54 +02:00
Birte Kristina Friesel
d43c44e81c
add view for followees in transit 2023-07-15 08:36:26 +02:00
Birte Kristina Friesel
ca3cd1580f
Journeys->get_latest: Fix uninitialized value warning 2023-07-14 18:48:46 +02:00
Birte Kristina Friesel
5e74e35dfe
get_pushable_accounts: obtain all values from in_transit_str 2023-07-13 21:08:12 +02:00
Birte Kristina Friesel
83df6f41e2
perltidy 2023-07-13 20:56:30 +02:00
networkException
0c1993f28e
Checkin: Use correct visibility when pushing to Träwelling 2023-07-13 20:17:51 +02:00
Birte Kristina Friesel
8a422d16f7
Api: use get_departures_p 2023-07-09 19:23:11 +02:00
Birte Kristina Friesel
5b88a4bb3d
station board: fix HTTP status and IRIS error handling 2023-07-09 17:42:12 +02:00
Birte Kristina Friesel
2123a67ba0
IRIS->get_departures_p: return string in first rejection argument
This is consistent with other promises within travelynx
2023-07-09 17:41:51 +02:00
Birte Kristina Friesel
1074f248cc
use promises for checkin and traewelling_to_travelynx 2023-07-09 14:46:28 +02:00
Birte Kristina Friesel
fb83b0ad9f
checkin: reduce nesting 2023-07-09 07:16:22 +02:00
Birte Kristina Friesel
b5723264a7
HAFAS station board: fix station name display 2023-07-09 07:07:31 +02:00
Derf Null
c9bae6fcee
journeys: simplify visibily check 2023-07-03 18:12:34 +02:00
Derf Null
a608ca6781
update ALL the copyright notices! 2023-07-03 17:59:25 +02:00
Derf Null
4dd2cc9d9e
show hours and minutes until arrival, not just minutes 2023-07-02 10:48:34 +02:00
Derf Null
66e8dcb925
Profile: remove unused compute_effective_visibility function 2023-06-30 19:58:37 +02:00
Derf Null
0e4bafafd8
Profile: refactor visibility checks 2023-06-30 19:58:12 +02:00
Derf Null
a5bdf28f4c
perltidy 2023-06-29 21:54:51 +02:00
Derf Null
a73e2edc86
profile: use effective visibility from journey object 2023-06-29 21:54:25 +02:00
Derf Null
f794d3c0a4
profile: treat self as follower 2023-06-29 21:52:18 +02:00
Derf Null
00ee3de6c1
Journey->add_from_in_transit: return ID of added journey 2023-06-28 22:21:51 +02:00
Derf Null
bb43a2e8e3
journeys: return effective visibility 2023-06-27 21:50:28 +02:00
Derf Null
8cb0de1b70
compute effective visibility in database view 2023-06-26 20:53:08 +02:00
Derf Null
16237bfe21
use small stations database for some tests 2023-06-26 20:18:27 +02:00
Derf Null
0702a0edca
Move hash_password to Model/Users 2023-06-26 19:50:49 +02:00
Derf Null
05924f2c67
Login: return HTTP 400 on invalid password or unconfirmed account 2023-06-25 23:28:38 +02:00
Derf Null
e14966c488
Users->add: correctly specify default visibility 2023-06-25 11:09:51 +02:00