]> git.0d.be Git - panikweb.git/commitdiff
update homepage to use new soundfile template
authorFrédéric Péters <fpeters@0d.be>
Mon, 16 Sep 2013 20:40:07 +0000 (22:40 +0200)
committerFrédéric Péters <fpeters@0d.be>
Mon, 16 Sep 2013 20:40:07 +0000 (22:40 +0200)
panikweb/views.py
panikweb_templates/templates/home.html

index 6ba67b0e7ec2125f44171b4e0c112dbbf799e725..706aff00e0e742288bbef060812546cb752407c4 100644 (file)
@@ -414,8 +414,8 @@ class Home(TemplateView):
                          'datetime': datetime(2007, 1, day+1)})
         context['days'] = days
 
-        context['episodes'] = Episode.objects.prefetch_related('emission__categories').filter(
-                soundfile__podcastable=True, soundfile__fragment=False) \
+        context['soundfiles'] = SoundFile.objects.prefetch_related('episode__emission__categories').filter(
+                podcastable=True, fragment=False) \
                 .select_related().extra(select={
                     'first_diffusion': 'emissions_diffusion.datetime', },
                     select_params=(False, True),
@@ -424,17 +424,6 @@ class Home(TemplateView):
                                         WHERE episode_id = emissions_episode.id)'''],
                     tables=['emissions_diffusion'],).order_by('-first_diffusion') [:6]
 
-        # get all related soundfiles in a single query
-        soundfiles = {}
-        for soundfile in SoundFile.objects.select_related().filter(podcastable=True,
-                fragment=False, episode__in=[x.id for x in context['episodes']]):
-            soundfiles[soundfile.episode_id] = soundfile
-
-        # replace dynamic property by a static attribute, to avoid database
-        # lookups
-        for episode in context['episodes']:
-            episode.main_sound = soundfiles.get(episode.id)
-
         context['newsletter_form'] = SubscribeForm()
 
         return context
index abdcbf9c41b9df768ace57f14f4482675d66ebbf..24610b1d34c5b482bd784689ac52d565e8eaa5eb 100644 (file)
@@ -28,9 +28,9 @@
                <div class="wrapper">
                        <h2><a href="{% url 'listen' %}">Derniers sons</a></h2>
                        <ul class="custom columns list">
-                       {% for episode in episodes %}
-                               <li class="item {% if episode.emission.categories.all.count = 0 %}nocat{% endif %} {% for category in episode.emission.categories.all %} {{ category|slugify }}{% endfor %}">
-                                       {% episode_resume model="inline" klass="standalone"%}                   
+                       {% for soundfile in soundfiles %}
+                               <li class="item {% if soundfile.episode.emission.categories.all.count = 0 %}nocat{% endif %} {% for category in soundfile.episode.emission.categories.all %} {{ category|slugify }}{% endfor %}">
+                                 {% soundfile_resume soundfile=soundfile date=soundfile.first_diffusion %}
                                </li>
                        {% endfor %}
                        </ul>