From 670021117bda492f4860f4c6b7d2650ba2658a78 Mon Sep 17 00:00:00 2001
From: Jonathan Weth <git@jonathanweth.de>
Date: Fri, 9 Dec 2022 12:44:15 +0100
Subject: [PATCH] Show events only on valid timetable days

---
 CHANGELOG.rst                 | 1 +
 aleksis/apps/alsijil/tasks.py | 5 +++++
 2 files changed, 6 insertions(+)

diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 7680489d9..6e62cd43e 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -21,6 +21,7 @@ Fixed
 
 * Extra marks and excused absences were counted multiple times in some class register views.
 * Substitution teachers couldn't see any persons in the person list of a substituted lesson.
+* Events were shown for days not being inside the timetable schema in full register printout.
 
 `2.1.1`_ - 2022-09-01
 ---------------------
diff --git a/aleksis/apps/alsijil/tasks.py b/aleksis/apps/alsijil/tasks.py
index aa8de7b5a..95cbe1c5a 100644
--- a/aleksis/apps/alsijil/tasks.py
+++ b/aleksis/apps/alsijil/tasks.py
@@ -87,6 +87,11 @@ def generate_full_register_printout(group: int, file_object: int, recorder: Prog
             day = event.date_start + timedelta(days=i)
             event_copy = deepcopy(event)
             event_copy.annotate_day(day)
+
+            # Skip event days if it isn't inside the timetable schema
+            if not event_copy.raw_period_from_on_day or not event_copy.raw_period_to_on_day:
+                continue
+
             register_objects_by_day.setdefault(day, []).append(
                 (
                     event_copy,
-- 
GitLab