vikunja/frontend/tests/e2e
kolaente a9355fc247 fix(auth): keep OAuth authorize destination in a copyable login hash (#2654)
A native client (desktop/mobile/etc.) opens /oauth/authorize in the OS
browser. When the user is unauthenticated, the router previously saved the
destination to localStorage and redirected to a bare /login, stripping the
authorize URL from the address bar. localStorage is per-browser, so a user
who is signed in (or wants to sign in) in a different browser could not copy
the URL over and complete the flow.

Now, when an unauthenticated user hits oauth.authorize, redirect to /login
with the authorize path+query encoded in a #redirect= hash. The hash keeps
the URL copyable across browsers while keeping the embedded OAuth params out
of server/proxy access logs (a query param would be logged).

On arrival at the auth route, the hash is decoded and folded back into the
existing localStorage redirect mechanism (saveLastVisited), so redirectIfSaved()
completes the journey after any auth method - including the external OIDC
round-trip, where localStorage is the only bridge that survives leaving the SPA
(populated before the user leaves to the IdP). Scoped strictly to
oauth.authorize for all client_ids; every other route keeps its existing
localStorage redirect behavior.

Fixes #2654
2026-06-19 16:55:56 +02:00
..
admin test(admin): add e2e tests for admin panel 2026-04-20 18:55:06 +00:00
editor test(editor): add e2e for emoji autocomplete 2026-04-14 13:48:49 +00:00
filters chore: remove redundant truncate calls now that all tables are wiped before each test 2026-04-05 09:48:09 +00:00
misc feat: merge duplicate notifications (#2056) 2026-01-06 17:36:29 +00:00
project test(e2e): use ISOString for date seeding to prevent timezone parsing errors 2026-04-24 11:24:34 +02:00
sharing test(e2e): cover link share permission tiers 2026-04-21 10:50:09 +00:00
task test(e2e): cover comment replies end-to-end 2026-05-20 21:02:14 +00:00
time-tracking test(time-tracking): add end-to-end coverage 2026-06-08 13:54:09 +00:00
user fix(auth): keep OAuth authorize destination in a copyable login hash (#2654) 2026-06-19 16:55:56 +02:00
websocket test: add WebSocket e2e tests 2026-04-02 16:30:23 +00:00