Redirect back to agenda after login

Closes: #91
This commit is contained in:
Edward Betts 2024-01-21 16:23:46 +00:00
parent 533c7767e8
commit d41d53367f

View file

@ -20,10 +20,14 @@ def verify_auth_token(token: str) -> str | None:
def require_authentication() -> werkzeug.Response | None:
"""Require authentication."""
"""Require authentication and redirect with return URL."""
token = flask.request.cookies.get("auth_token")
return (
None
if token and verify_auth_token(token)
else flask.redirect(flask.current_app.config["UNIAUTH_LOGIN_URL"])
if token and verify_auth_token(token):
return None
# Construct the redirect URL with the original URL as a parameter
return flask.redirect(
flask.current_app.config["UNIAUTH_LOGIN_URL"]
+ "?next="
+ werkzeug.urls.url_quote(flask.request.url)
)