From 86725d5f392c193e64dbc4d79733b4abdda1ff45 Mon Sep 17 00:00:00 2001
From: Ernesto Rico-Schmidt <e.rico.schmidt@gmail.com>
Date: Fri, 27 May 2016 17:37:25 +0200
Subject: Optimize selection of time slot by fetching the program slots


diff --git a/program/views.py b/program/views.py
index 5dc82dd..23aab75 100644
--- a/program/views.py
+++ b/program/views.py
@@ -27,7 +27,7 @@ class HostDetailView(DetailView):
 
 class ShowListView(ListView):
     context_object_name = 'show_list'
-    queryset = Show.objects.filter(is_active=True).exclude(id=1).distinct()
+    queryset = Show.objects.filter(is_active=True).exclude(id=1)
     template_name = 'show_list.html'
 
     def get_queryset(self):
@@ -50,7 +50,7 @@ class ShowListView(ListView):
 
 
 class ShowDetailView(DetailView):
-    queryset = Show.objects.all().exclude(id=1)
+    queryset = Show.objects.exclude(id=1)
     template_name = 'show_detail.html'
 
 
@@ -195,7 +195,7 @@ def json_day_schedule(request, year=None, month=None, day=None):
     else:
         today = datetime.strptime('%s__%s__%s__00__00' % (year, month, day), '%Y__%m__%d__%H__%M')
 
-    timeslots = TimeSlot.objects.get_24h_timeslots(today)
+    timeslots = TimeSlot.objects.get_24h_timeslots(today).select_related('programslot')
     schedule = []
     for ts in timeslots:
         entry = {
-- 
cgit v0.10.2