From d2f88dd144b85620f2a6bb34af4479965e383734 Mon Sep 17 00:00:00 2001
From: Felix Blanke <info@fblanke.de>
Date: Wed, 29 May 2024 18:53:32 +0200
Subject: [PATCH] More refactoring

---
 AKModel/views/ak.py | 34 +++++++++++++++++++---------------
 1 file changed, 19 insertions(+), 15 deletions(-)

diff --git a/AKModel/views/ak.py b/AKModel/views/ak.py
index 611cd619..a8e07d26 100644
--- a/AKModel/views/ak.py
+++ b/AKModel/views/ak.py
@@ -113,29 +113,33 @@ class AKJSONExportView(AdminViewMixin, FilterByEventSlugMixin, ListView):
             for slot_index in block:
                 slot = self.event.time_slot(time_slot_index=slot_index,
                                             slots_in_an_hour=SLOTS_IN_AN_HOUR)
-                constraints = []
+                time_constraints = []
 
                 if self.event.reso_deadline is None or slot.end < self.event.reso_deadline:
-                    constraints.append("resolution")
-
-                for ak_id, availabilities in ak_availabilities.items():
-                    if _test_add_constraint(slot, availabilities) or _test_fixed_ak(ak_id, slot):
-                        constraints.append(f"availability-ak-{ak_id}")
-
-                for person_id, availabilities in person_availabilities.items():
-                    if _test_add_constraint(slot, availabilities):
-                        constraints.append(f"availability-person-{person_id}")
-
-                for room_id, availabilities in room_availabilities.items():
-                    if _test_add_constraint(slot, availabilities):
-                        constraints.append(f"availability-room-{room_id}")
+                    time_constraints.append("resolution")
+
+                time_constraints.extend([
+                    f"availability-ak-{ak_id}"
+                    for ak_id, availabilities in ak_availabilities.items()
+                    if _test_add_constraint(slot, availabilities) or _test_fixed_ak(ak_id, slot)
+                ])
+                time_constraints.extend([
+                    f"availability-person-{person_id}"
+                    for person_id, availabilities in person_availabilities.items()
+                    if _test_add_constraint(slot, availabilities)
+                ])
+                time_constraints.extend([
+                    f"availability-room-{room_id}"
+                    for room_id, availabilities in room_availabilities.items()
+                    if _test_add_constraint(slot, availabilities)
+                ])
 
                 current_block.append({
                     "id": str(slot_index),
                     "info": {
                         "start": slot.simplified,
                     },
-                    "fulfilled_time_constraints": constraints,
+                    "fulfilled_time_constraints": time_constraints,
                     })
 
             timeslots["blocks"].append(current_block)
-- 
GitLab