From 189a4907c73e8914f1c5190fc16f41dbfffe9313 Mon Sep 17 00:00:00 2001 From: Lucas Brandstaetter <lucas@brandstaetter.tech> Date: Sat, 2 Nov 2024 22:19:27 +0100 Subject: [PATCH] Fix member check in assembly create view --- src/backoffice/views/assemblies.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/backoffice/views/assemblies.py b/src/backoffice/views/assemblies.py index d5c894fbc..3208942e5 100644 --- a/src/backoffice/views/assemblies.py +++ b/src/backoffice/views/assemblies.py @@ -58,7 +58,12 @@ class CreateAssemblyView(ConferenceLoginRequiredMixin, CreateView): template_name = 'backoffice/assembly_create.html' def dispatch(self, request: HttpRequest, *args, **kwargs) -> HttpResponse: - member = ConferenceMember.objects.get(conference=self.conference, user=request.user) + if not request.user.is_authenticated: + return redirect(f'{reverse('backoffice:login')}?next={reverse('backoffice:assembly-create')}') + try: + member = ConferenceMember.objects.get(conference=self.conference, user=request.user) + except ConferenceMember.DoesNotExist: + raise PermissionDenied if (member.is_staff and member.has_perms('core.assembly_team')) or self.conference.is_open: return super().dispatch(request, *args, **kwargs) -- GitLab