diff --git a/src/plainui/jinja2/plainui/components/list_events.html b/src/plainui/jinja2/plainui/components/list_events.html index 6c09a54fa75a337c91ecb05cbca9dadfc2a8fdee..4720be0b7b3a0785896ab3d231f9e153cc44bd9f 100644 --- a/src/plainui/jinja2/plainui/components/list_events.html +++ b/src/plainui/jinja2/plainui/components/list_events.html @@ -11,7 +11,7 @@ {% if events %} <ul class="list-unstyled d-flex flex-column gap-3 mb-0"> {# using a list here to be able to set a value in the nested block #} - {% set first_now_done = [] %} + {% set ns = namespace(first_now_done=false) %} {% for event in events %} {% if event.schedule_end < now %} @@ -28,11 +28,11 @@ scheduled=true if event.id | safe in my_scheduled_events, first=loop.first, event_when=event_when, - first_now=true if event_when == 'now' and not first_now_done[0] + first_now=true if event_when == 'now' and not ns.first_now_done ) }} - {% if when == 'now' and not first_now_done[0] %} - {% set ignore = first_now_done.append(True) %} + {% if event_when == 'now' %} + {% set ns.first_now_done = true %} {% endif %} {% endfor %} </ul> diff --git a/src/plainui/views.py b/src/plainui/views.py index c794cc9a2b1eb4c5ae915a50c335f8cc42f5693e..3e9a6b5463ef10465028bf983bdb2b10964c6d1c 100644 --- a/src/plainui/views.py +++ b/src/plainui/views.py @@ -1746,6 +1746,7 @@ def _event_filter( filters['room__is_public_fahrplan'] = public_fahrplan events = Event.objects.conference_accessible(conf) + events = events.filter(schedule_start__isnull=False, schedule_end__isnull=False) if upcoming: now = timezone.now() events = events.filter(Q(schedule_start__lt=now, schedule_end__gte=now) | Q(schedule_start__gte=now, schedule_start__lt=now + UPCOMING_WINDOW))