diff --git a/AKModel/views/ak.py b/AKModel/views/ak.py index 611cd619f9cad82c96ef212f6c047ac3fe46f359..a8e07d262558f7f8bcf03b85b0221ce594a2cd68 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)