From c55288a25d2140f7ab60c980894658feb3dafd59 Mon Sep 17 00:00:00 2001
From: Hangzhi Yu <hangzhi@protonmail.com>
Date: Wed, 16 Oct 2024 00:49:31 +0200
Subject: [PATCH] Fix manager filters

---
 aleksis/apps/chronos/managers.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/aleksis/apps/chronos/managers.py b/aleksis/apps/chronos/managers.py
index 2fb3c8e3..66115515 100644
--- a/aleksis/apps/chronos/managers.py
+++ b/aleksis/apps/chronos/managers.py
@@ -885,14 +885,14 @@ class LessonEventQuerySet(RecurrencePolymorphicQuerySet):
 
     def for_participant(self, person: Union[int, Person]) -> "LessonEventQuerySet":
         """Get all lesson events the person participates in (including amends)."""
-        amended = self.filter(Q(amended_by__isnull=False) | Q(groups__members=person)).values_list(
+        amended = self.filter(Q(amended_by__isnull=False) & Q(groups__members=person)).values_list(
             "amended_by__pk", flat=True
         )
         return self.filter(Q(groups__members=person) | Q(pk__in=amended)).distinct()
 
     def for_owner(self, person: Union[int, Person]) -> "LessonEventQuerySet":
         """Get all lesson events the person owns any group of (including amends)."""
-        amended = self.filter(Q(amended_by__isnull=False) | Q(groups__owners=person)).values_list(
+        amended = self.filter(Q(amended_by__isnull=False) & Q(groups__owners=person)).values_list(
             "amended_by__pk", flat=True
         )
         return self.filter(Q(groups__owners=person) | Q(pk__in=amended)).distinct()
-- 
GitLab