From 6c424493306937bec67452cf01e5e49120d7fbac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89lie=20Bouttier?= Date: Mon, 17 Oct 2016 14:22:34 +0200 Subject: [PATCH] program: hide empty rooms --- planning/utils.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/planning/utils.py b/planning/utils.py index 62e3fa7..b357027 100644 --- a/planning/utils.py +++ b/planning/utils.py @@ -17,14 +17,18 @@ Event = namedtuple('Event', ['talk', 'row', 'rowcount']) class Program: - def __init__(self, site): - self.rooms = Room.objects.filter(site=site) + def __init__(self, site, empty_rooms=False): self.talks = Talk.objects.\ - filter(site=site, room__in=self.rooms.all(), start_date__isnull=False).\ + filter(site=site, room__isnull=False, start_date__isnull=False).\ filter(Q(duration__gt=0) | Q(event__duration__gt=0)).\ exclude(accepted=False).\ order_by('start_date') + if empty_rooms: + self.rooms = Room.objects.filter(site=site) + else: + self.rooms = Room.objects.filter(talk__in=self.talks.all()).order_by('name').distinct() + self.timeslots = [] for talk in self.talks.all(): duration = talk.estimated_duration()