From 7dd1c6b8712b54fe099d01d47045a5c89aac3c46 Mon Sep 17 00:00:00 2001 From: Jonathan Weth <git@jonathanweth.de> Date: Wed, 24 Feb 2021 10:53:54 +0100 Subject: [PATCH] [Events/extra lessons] Rewrite if-elif-else-clauses --- aleksis/apps/alsijil/model_extensions.py | 20 +++++++++----------- aleksis/apps/alsijil/util/alsijil_helpers.py | 2 +- aleksis/apps/alsijil/views.py | 7 +++---- 3 files changed, 13 insertions(+), 16 deletions(-) diff --git a/aleksis/apps/alsijil/model_extensions.py b/aleksis/apps/alsijil/model_extensions.py index 8b5a17af9..e72e347b3 100644 --- a/aleksis/apps/alsijil/model_extensions.py +++ b/aleksis/apps/alsijil/model_extensions.py @@ -89,20 +89,18 @@ def mark_absent( # Create and update all personal notes for the discovered lesson periods if not dry_run: for register_object in list(lesson_periods) + list(extra_lessons): - sub = ( - register_object.get_substitution() - if isinstance(register_object, LessonPeriod) - else None - ) + if isinstance(register_object, LessonPeriod): + sub = register_object.get_substitution() + q_attrs = dict( + week=wanted_week.week, year=wanted_week.year, lesson_period=register_object + ) + else: + sub = None + q_attrs = dict(extra_lesson=register_object) + if sub and sub.cancelled: continue - q_attrs = ( - dict(week=wanted_week.week, year=wanted_week.year, lesson_period=register_object) - if isinstance(register_object, LessonPeriod) - else dict(extra_lesson=register_object) - ) - personal_note, created = ( PersonalNote.objects.select_related(None) .prefetch_related(None) diff --git a/aleksis/apps/alsijil/util/alsijil_helpers.py b/aleksis/apps/alsijil/util/alsijil_helpers.py index 34d9ff4a3..31c97fbbe 100644 --- a/aleksis/apps/alsijil/util/alsijil_helpers.py +++ b/aleksis/apps/alsijil/util/alsijil_helpers.py @@ -72,7 +72,7 @@ def annotate_documentations( if klass == LessonPeriod: instances = instances.annotate_week(wanted_week) - if klass in (LessonPeriod, ExtraLesson): + elif klass in (LessonPeriod, ExtraLesson): instances = instances.order_by("period__weekday", "period__period") else: instances = instances.order_by("period_from__weekday", "period_from__period") diff --git a/aleksis/apps/alsijil/views.py b/aleksis/apps/alsijil/views.py index 07be23841..53ca6aaa1 100644 --- a/aleksis/apps/alsijil/views.py +++ b/aleksis/apps/alsijil/views.py @@ -224,10 +224,9 @@ def register_object( reversion.set_user(request.user) instances = personal_note_formset.save() - if ( - not isinstance(register_object, Event) - and get_site_preferences()["alsijil__carry_over_personal_notes"] - ): + if (not isinstance(register_object, Event)) and get_site_preferences()[ + "alsijil__carry_over_personal_notes" + ]: # Iterate over personal notes # and carry changed absences to following lessons with reversion.create_revision(): -- GitLab