From aca3e2a1c439cf0487b4b738d2ecae7112c17528 Mon Sep 17 00:00:00 2001 From: Christian Cueni Date: Thu, 24 Oct 2024 12:50:43 +0200 Subject: [PATCH] Fix error if uri is not correctly set, use ruff --- server/config/settings/base.py | 2 +- server/vbv_lernwelt/sso/views.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/server/config/settings/base.py b/server/config/settings/base.py index 68710668..e1500867 100644 --- a/server/config/settings/base.py +++ b/server/config/settings/base.py @@ -639,7 +639,7 @@ OAUTH_SIGNIN_REDIRECT_URI = env( "OAUTH_SIGNIN_REDIRECT_URI", default="http://localhost:8000/sso/callback" ) -OAUTH_LOGOUT_REDIRECT_URI = env("OAUTH_LOGOUT_REDIRECT_URI", default="") +OAUTH_LOGOUT_REDIRECT_URI = env("OAUTH_LOGOUT_REDIRECT_URI", default="/") OAUTH_SIGNIN_URL = env("OAUTH_SIGNIN_URL", default="") OAUTH_SIGNIN_REALM = env("OAUTH_SIGNIN_REALM", default="vbv") diff --git a/server/vbv_lernwelt/sso/views.py b/server/vbv_lernwelt/sso/views.py index bae5040b..686a5c04 100644 --- a/server/vbv_lernwelt/sso/views.py +++ b/server/vbv_lernwelt/sso/views.py @@ -143,7 +143,8 @@ def logout(request): id_token = user_data.get("id_token", "") if not id_token: logger.debug("SSO Logout", extra={"mode": "id_token_not_set"}) - return redirect(f"{redirect_uri}&client_id=iterativ") + url_param_symbol = "&" if "?" in redirect_uri else "?" + return redirect(f"{redirect_uri}{url_param_symbol}client_id=iterativ") # Handle scenarios when SSO-related data is present or redirect_uri is not set if not redirect_uri: