authentik.stages.user_delete.stage

Delete stage logic

 1"""Delete stage logic"""
 2
 3from django.contrib import messages
 4from django.contrib.auth import logout
 5from django.http import HttpRequest, HttpResponse
 6from django.utils.translation import gettext as _
 7
 8from authentik.flows.planner import PLAN_CONTEXT_PENDING_USER
 9from authentik.flows.stage import StageView
10
11
12class UserDeleteStageView(StageView):
13    """Finalise unenrollment flow by deleting the user object."""
14
15    def dispatch(self, request: HttpRequest) -> HttpResponse:
16        """Delete currently pending user"""
17        user = self.get_pending_user()
18        if not user.is_authenticated:
19            message = _("No Pending User.")
20            messages.error(request, message)
21            self.logger.debug(message)
22            return self.executor.stage_invalid()
23        logout(self.request)
24        user.delete()
25        self.logger.debug("Deleted user", user=user)
26        if PLAN_CONTEXT_PENDING_USER in self.executor.plan.context:
27            del self.executor.plan.context[PLAN_CONTEXT_PENDING_USER]
28        return self.executor.stage_ok()
class UserDeleteStageView(authentik.flows.stage.StageView):
13class UserDeleteStageView(StageView):
14    """Finalise unenrollment flow by deleting the user object."""
15
16    def dispatch(self, request: HttpRequest) -> HttpResponse:
17        """Delete currently pending user"""
18        user = self.get_pending_user()
19        if not user.is_authenticated:
20            message = _("No Pending User.")
21            messages.error(request, message)
22            self.logger.debug(message)
23            return self.executor.stage_invalid()
24        logout(self.request)
25        user.delete()
26        self.logger.debug("Deleted user", user=user)
27        if PLAN_CONTEXT_PENDING_USER in self.executor.plan.context:
28            del self.executor.plan.context[PLAN_CONTEXT_PENDING_USER]
29        return self.executor.stage_ok()

Finalise unenrollment flow by deleting the user object.

def dispatch( self, request: django.http.request.HttpRequest) -> django.http.response.HttpResponse:
16    def dispatch(self, request: HttpRequest) -> HttpResponse:
17        """Delete currently pending user"""
18        user = self.get_pending_user()
19        if not user.is_authenticated:
20            message = _("No Pending User.")
21            messages.error(request, message)
22            self.logger.debug(message)
23            return self.executor.stage_invalid()
24        logout(self.request)
25        user.delete()
26        self.logger.debug("Deleted user", user=user)
27        if PLAN_CONTEXT_PENDING_USER in self.executor.plan.context:
28            del self.executor.plan.context[PLAN_CONTEXT_PENDING_USER]
29        return self.executor.stage_ok()

Delete currently pending user