diff --git a/aleksis/apps/alsijil/model_extensions.py b/aleksis/apps/alsijil/model_extensions.py index f45e752f120084ecb12aefe83fdcdc5af5431bd0..e75ab0d438be36c9399b1ad38c1ece05bb7b77dc 100644 --- a/aleksis/apps/alsijil/model_extensions.py +++ b/aleksis/apps/alsijil/model_extensions.py @@ -241,6 +241,10 @@ def get_absences_simple(self, week: Optional[CalendarWeek] = None) -> Iterator: return self.personal_notes.all() +Event.method(get_absences_simple, "get_absences") +ExtraLesson.method(get_absences_simple, "get_absences") + + @LessonPeriod.method def get_excused_absences(self, week: Optional[CalendarWeek] = None) -> QuerySet: """Get all personal notes of excused absent persons for this lesson.""" @@ -254,6 +258,10 @@ def get_excused_absences_simple(self, week: Optional[CalendarWeek] = None) -> Qu return self.personal_notes.filter(absent=True, excused=True) +Event.method(get_excused_absences_simple, "get_excused_absences") +ExtraLesson.method(get_excused_absences_simple, "get_excused_absences") + + @LessonPeriod.method def get_unexcused_absences(self, week: Optional[CalendarWeek] = None) -> QuerySet: """Get all personal notes of unexcused absent persons for this lesson.""" @@ -267,6 +275,10 @@ def get_unexcused_absences_simple(self, week: Optional[CalendarWeek] = None) -> return self.personal_notes.filter(absent=True, excused=False) +Event.method(get_unexcused_absences_simple, "get_unexcused_absences") +ExtraLesson.method(get_unexcused_absences_simple, "get_unexcused_absences") + + @LessonPeriod.method def get_tardinesses(self, week: Optional[CalendarWeek] = None) -> QuerySet: """Get all personal notes of late persons for this lesson.""" @@ -280,6 +292,10 @@ def get_tardinesses_simple(self, week: Optional[CalendarWeek] = None) -> QuerySe return self.personal_notes.filter(late__gt=0) +Event.method(get_tardinesses_simple, "get_tardinesses") +ExtraLesson.method(get_tardinesses_simple, "get_tardinesses") + + @LessonPeriod.method def get_extra_marks(self, week: Optional[CalendarWeek] = None) -> Dict[ExtraMark, QuerySet]: """Get all statistics on extra marks for this lesson.""" @@ -306,6 +322,10 @@ def get_extra_marks_simple(self, week: Optional[CalendarWeek] = None) -> Dict[Ex return stats +Event.method(get_extra_marks_simple, "get_extra_marks") +ExtraLesson.method(get_extra_marks_simple, "get_extra_marks") + + @Group.class_method def get_groups_with_lessons(cls: Group): """Get all groups which have related lessons or child groups with related lessons."""