Fix for unclickable cites in admin.
[wolnelektury.git] / apps / catalogue / feeds.py
index eadfa2f..2411d01 100644 (file)
@@ -5,7 +5,6 @@
 from django.contrib.sites.models import Site
 from django.contrib.syndication.views import Feed
 from django.core.urlresolvers import reverse
-from django.db.models import Q
 
 from catalogue import models
 
@@ -52,27 +51,21 @@ class AudiobookFeed(Feed):
         return item.name
 
     def item_categories(self, item):
-        authors = set()
-        for book in item.book_set.all():
-            for author in book.tags.filter(category='author'):
-                authors.add(author.name)
-        return sorted(authors)
+        return sorted(set(author.name for author in
+                            item.book.tags.filter(category='author').iterator()))
 
     def item_description(self, item):
         lines = []
-        artist = item.get_extra_info_value().get('artist_name', None)
+        artist = item.extra_info.get('artist_name', None)
         if artist is not None:
             lines.append(u'Czyta: %s' % artist)
-        director = item.get_extra_info_value().get('artist_name', None)
+        director = item.extra_info.get('artist_name', None)
         if director is not None:
             lines.append(u'Reżyseruje: %s' % director)
         return u'<br/>\n'.join(lines)
 
     def item_link(self, item):
-        if item.book_set.exists():
-            return item.book_set.all()[0].get_absolute_url()
-        else:
-            return item.file.url
+        return item.book.get_absolute_url()
 
     def item_guid(self, item):
         return absolute_url(item.file.url)