From 644a7530d3f2df31d36cce3d67387dc774f27e5f Mon Sep 17 00:00:00 2001 From: Vemund Aakre Date: Thu, 4 Apr 2024 21:44:25 +0200 Subject: [PATCH] Events, but not bedpres, behind login --- nablapps/events/views.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/nablapps/events/views.py b/nablapps/events/views.py index 1347818a..4fcfc0f9 100644 --- a/nablapps/events/views.py +++ b/nablapps/events/views.py @@ -4,8 +4,10 @@ import datetime +from django.conf import settings from django.contrib.admin.models import ADDITION, DELETION, LogEntry -from django.contrib.auth import get_user_model +from django.contrib.auth import REDIRECT_FIELD_NAME, get_user_model +from django.contrib.auth.views import redirect_to_login from django.contrib.contenttypes.models import ContentType from django.core.exceptions import ValidationError from django.http import Http404, HttpResponse, HttpResponseRedirect @@ -271,6 +273,15 @@ class EventDetailView(AdminLinksMixin, MessageMixin, DetailView): context_object_name = "event" template_name = "events/event_detail.html" + def get(self, request, *args, **kwargs): + self.object = self.get_object() + context = self.get_context_data(object=self.object) + if not self.object.is_bedpres and not request.user.is_authenticated: + return redirect_to_login( + request.get_full_path(), settings.LOGIN_URL, REDIRECT_FIELD_NAME + ) + return self.render_to_response(context) + def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) event = self.object