From d370d60eefb67fd89af72d645f28547a39c9fb65 Mon Sep 17 00:00:00 2001 From: Grollicus <cccvgitlab.db5c7b60@grollmann.eu> Date: Thu, 17 Aug 2023 13:53:39 +0200 Subject: [PATCH] don't show events without schedule_end set, as they will crash the template anyways --- src/plainui/views.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/plainui/views.py b/src/plainui/views.py index 54750c3ea..e82a2ac4c 100644 --- a/src/plainui/views.py +++ b/src/plainui/views.py @@ -251,7 +251,7 @@ class TagView(ConferenceRequiredMixin, TemplateView): # TODO other types. What should we link here? context['events'] = Event.objects.conference_accessible(self.conf).filter( id__in=TagItem.objects.filter(tag=tag, target_type=ContentType.objects.get_for_model(Event)).values_list('target_id') - ) + ).filter(schedule_start__isnull=False, schedule_end__isnull=False) context['my_favorite_events'] = _session_get_favorite_events(self.request.session, self.request.user) context['my_scheduled_events'] = _session_get_scheduled_events(self.request.session, self.request.user) @@ -766,11 +766,11 @@ class ProfileView(ConferenceRequiredMixin, UpdateView): context['badges'] = UserBadge.objects.filter(user=user, accepted_by_user=True).select_related('badge') context['amount_badges_not_accepted'] = len(UserBadge.objects.filter(user=user, accepted_by_user=False).select_related('badge')) context['is_favorite_events'] = favorite_events = _session_get_favorite_events(self.request.session, self.request.user) - context['my_favorite_events'] = Event.objects.conference_accessible(conference=self.conf).filter(pk__in=favorite_events) + context['my_favorite_events'] = Event.objects.conference_accessible(conference=self.conf).filter(pk__in=favorite_events).filter(schedule_start__isnull=False, schedule_end__isnull=False) context['is_favorite_assemblies'] = favorite_assemblies = _session_get_favorite_assemblies(self.request.session, self.request.user) context['my_favorite_assemblies'] = Assembly.objects.conference_accessible(conference=self.conf).filter(pk__in=favorite_assemblies) context['is_fahrplan_events'] = scheduled_events = _session_get_scheduled_events(self.request.session, self.request.user) - context['my_fahrplan_events'] = Event.objects.conference_accessible(conference=self.conf).filter(pk__in=scheduled_events) + context['my_fahrplan_events'] = Event.objects.conference_accessible(conference=self.conf).filter(pk__in=scheduled_events).filter(schedule_start__isnull=False, schedule_end__isnull=False) context['dereferrer_allowlist'] = UserDereferrerAllowlist.objects.filter(user=self.request.user) context['redeem_badge_form'] = RedeemBadgeForm return context @@ -2087,7 +2087,7 @@ class ChannelEventsView(ConferenceRequiredMixin, TemplateView): current_events[event.room_id] = event next_events_qs = Event.objects.conference_accessible(self.conf)\ - .filter(room_id__in=room_ids, schedule_start__gt=now).order_by('room_id', 'schedule_start').distinct('room_id') + .filter(room_id__in=room_ids, schedule_start__gt=now, schedule_end__isnull=False).order_by('room_id', 'schedule_start').distinct('room_id') speakers = EventParticipant.objects.filter(is_public=True, role=EventParticipant.Role.SPEAKER).order_by('participant__username') speakers = speakers.annotate(speaker_name=F('participant__username')) next_events_qs = next_events_qs.prefetch_related( -- GitLab