From ef75d02b70bcae19c2c3b098271d314012c0356c Mon Sep 17 00:00:00 2001
From: Jonathan Weth <git@jonathanweth.de>
Date: Thu, 20 Aug 2020 16:52:54 +0200
Subject: [PATCH] Fix is_personal_note_lesson_teacher

---
 aleksis/apps/alsijil/util/predicates.py | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/aleksis/apps/alsijil/util/predicates.py b/aleksis/apps/alsijil/util/predicates.py
index f7f05ba22..ca8af7f67 100644
--- a/aleksis/apps/alsijil/util/predicates.py
+++ b/aleksis/apps/alsijil/util/predicates.py
@@ -171,9 +171,14 @@ def is_personal_note_lesson_teacher(user: User, obj: PersonalNote) -> bool:
     """
     if hasattr(obj, "lesson_period"):
         if hasattr(obj.lesson_period, "lesson"):
-            return user.person in obj.lesson_period.lesson.teachers.all() or user.person in Person.objects.filter(
+            sub = obj.lesson_period.get_substitution()
+            if sub and user.person in Person.objects.filter(
                 lesson_substitutions=obj.lesson_period.get_substitution()
-            )
+            ):
+                return True
+
+            return user.person in obj.lesson_period.lesson.teachers.all()
+
         return False
     return False
 
-- 
GitLab