flows: fix flows not redirecting correctly
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
parent
d767504474
commit
85e86351cd
|
@ -322,15 +322,16 @@ class FlowExecutorView(APIView):
|
||||||
"""User Successfully passed all stages"""
|
"""User Successfully passed all stages"""
|
||||||
# Since this is wrapped by the ExecutorShell, the next argument is saved in the session
|
# Since this is wrapped by the ExecutorShell, the next argument is saved in the session
|
||||||
# extract the next param before cancel as that cleans it
|
# extract the next param before cancel as that cleans it
|
||||||
self.cancel()
|
|
||||||
if self.plan and PLAN_CONTEXT_REDIRECT in self.plan.context:
|
if self.plan and PLAN_CONTEXT_REDIRECT in self.plan.context:
|
||||||
# The context `redirect` variable can only be set by
|
# The context `redirect` variable can only be set by
|
||||||
# an expression policy or authentik itself, so we don't
|
# an expression policy or authentik itself, so we don't
|
||||||
# check if its an absolute URL or a relative one
|
# check if its an absolute URL or a relative one
|
||||||
|
self.cancel()
|
||||||
return redirect(self.plan.context.get(PLAN_CONTEXT_REDIRECT))
|
return redirect(self.plan.context.get(PLAN_CONTEXT_REDIRECT))
|
||||||
next_param = self.request.session.get(SESSION_KEY_GET, {}).get(
|
next_param = self.request.session.get(SESSION_KEY_GET, {}).get(
|
||||||
NEXT_ARG_NAME, "authentik_core:root-redirect"
|
NEXT_ARG_NAME, "authentik_core:root-redirect"
|
||||||
)
|
)
|
||||||
|
self.cancel()
|
||||||
return to_stage_response(self.request, redirect_with_qs(next_param))
|
return to_stage_response(self.request, redirect_with_qs(next_param))
|
||||||
|
|
||||||
def stage_ok(self) -> HttpResponse:
|
def stage_ok(self) -> HttpResponse:
|
||||||
|
|
Reference in New Issue