From d1af59cf9643c8013e35dd153ffbcdeb35a98863 Mon Sep 17 00:00:00 2001
From: Hangzhi Yu <hangzhi@protonmail.com>
Date: Sat, 17 Feb 2024 16:32:35 +0100
Subject: [PATCH] Allow filtering for own lessons as teacher

---
 aleksis/apps/chronos/models.py | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/aleksis/apps/chronos/models.py b/aleksis/apps/chronos/models.py
index 12edca5b..90d6ddb3 100644
--- a/aleksis/apps/chronos/models.py
+++ b/aleksis/apps/chronos/models.py
@@ -1540,6 +1540,7 @@ class LessonEvent(CalendarEvent):
             type_ = params.get("type", None)
             not_amended = params.get("not_amended", False)
             not_amending = params.get("not_amending", False)
+            own = params.get("own", False)
 
             if not_amended:
                 objs = objs.not_amended()
@@ -1547,6 +1548,9 @@ class LessonEvent(CalendarEvent):
             if not_amending:
                 objs = objs.not_amending()
 
+            if own and has_person(request.user):
+                objs = objs.for_teacher(request.user.person.id)
+
             if type_ and obj_id:
                 if type_ == "TEACHER":
                     return objs.for_teacher(obj_id)
@@ -1556,6 +1560,7 @@ class LessonEvent(CalendarEvent):
                     return objs.for_room(obj_id)
                 elif type_ == "COURSE":
                     return objs.for_course(obj_id)
+            return objs
         return objs.for_person(request.user.person)
 
     class Meta:
-- 
GitLab