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