Skip to content
Snippets Groups Projects
Verified Commit 9a6a316b authored by Jonathan Weth's avatar Jonathan Weth :keyboard:
Browse files

Add missing method extensions for events and extra lessons

parent 4e7004ce
No related branches found
No related tags found
1 merge request!120Resolve "Support events and extra lessons in class register"
Pipeline #5365 passed
......@@ -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."""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment