change in multilingual
[wolnelektury.git] / apps / opds / views.py
index 9431684..06e0119 100644 (file)
@@ -18,6 +18,7 @@ from basicauth import logged_in_or_basicauth, factory_decorator
 from catalogue.models import Book, Tag
 from catalogue.views import books_starting_with
 
 from catalogue.models import Book, Tag
 from catalogue.views import books_starting_with
 
+from stats.utils import piwik_track
 
 _root_feeds = (
     {
 
 _root_feeds = (
     {
@@ -186,7 +187,7 @@ class AcquisitionFeed(Feed):
     def item_enclosure_length(self, book):
         return book.root_ancestor.epub_file.size
 
     def item_enclosure_length(self, book):
         return book.root_ancestor.epub_file.size
 
-
+@piwik_track
 class RootFeed(Feed):
     feed_type = OPDSFeed
     title = u'Wolne Lektury'
 class RootFeed(Feed):
     feed_type = OPDSFeed
     title = u'Wolne Lektury'
@@ -207,7 +208,7 @@ class RootFeed(Feed):
     def item_description(self, item):
         return item['description']
 
     def item_description(self, item):
         return item['description']
 
-
+@piwik_track
 class ByCategoryFeed(Feed):
     feed_type = OPDSFeed
     link = u'http://www.wolnelektury.pl/'
 class ByCategoryFeed(Feed):
     feed_type = OPDSFeed
     link = u'http://www.wolnelektury.pl/'
@@ -228,7 +229,7 @@ class ByCategoryFeed(Feed):
         return feed['title']
 
     def items(self, feed):
         return feed['title']
 
     def items(self, feed):
-        return (tag for tag in Tag.objects.filter(category=feed['category']) if tag.get_count() > 0)
+        return Tag.objects.filter(category=feed['category']).exclude(book_count=0)
 
     def item_title(self, item):
         return item.name
 
     def item_title(self, item):
         return item.name
@@ -239,7 +240,7 @@ class ByCategoryFeed(Feed):
     def item_description(self):
         return u''
 
     def item_description(self):
         return u''
 
-
+@piwik_track
 class ByTagFeed(AcquisitionFeed):
     def link(self, tag):
         return tag.get_absolute_url()
 class ByTagFeed(AcquisitionFeed):
     def link(self, tag):
         return tag.get_absolute_url()
@@ -263,7 +264,8 @@ class ByTagFeed(AcquisitionFeed):
         return books
 
 
         return books
 
 
-#@factory_decorator(logged_in_or_basicauth())
+@factory_decorator(logged_in_or_basicauth())
+@piwik_track
 class UserFeed(Feed):
     feed_type = OPDSFeed
     link = u'http://www.wolnelektury.pl/'
 class UserFeed(Feed):
     feed_type = OPDSFeed
     link = u'http://www.wolnelektury.pl/'
@@ -278,7 +280,7 @@ class UserFeed(Feed):
         return u"Półki użytkownika %s" % user.username
 
     def items(self, user):
         return u"Półki użytkownika %s" % user.username
 
     def items(self, user):
-        return (tag for tag in Tag.objects.filter(category='set', user=user) if tag.get_count() > 0)
+        return Tag.objects.filter(category='set', user=user).exclude(book_count=0)
 
     def item_title(self, item):
         return item.name
 
     def item_title(self, item):
         return item.name
@@ -290,10 +292,11 @@ class UserFeed(Feed):
         return u''
 
 # no class decorators in python 2.5
         return u''
 
 # no class decorators in python 2.5
-UserFeed = factory_decorator(logged_in_or_basicauth())(UserFeed)
+#UserFeed = factory_decorator(logged_in_or_basicauth())(UserFeed)
 
 
 
 
-#@factory_decorator(logged_in_or_basicauth())
+@factory_decorator(logged_in_or_basicauth())
+@piwik_track
 class UserSetFeed(AcquisitionFeed):
     def link(self, tag):
         return tag.get_absolute_url()
 class UserSetFeed(AcquisitionFeed):
     def link(self, tag):
         return tag.get_absolute_url()
@@ -311,9 +314,9 @@ class UserSetFeed(AcquisitionFeed):
         return Book.tagged.with_any([tag])
 
 # no class decorators in python 2.5
         return Book.tagged.with_any([tag])
 
 # no class decorators in python 2.5
-UserSetFeed = factory_decorator(logged_in_or_basicauth())(UserSetFeed)
-
+#UserSetFeed = factory_decorator(logged_in_or_basicauth())(UserSetFeed)
 
 
+@piwik_track
 class SearchFeed(AcquisitionFeed):
     description = u"Wyniki wyszukiwania na stronie WolneLektury.pl"
     title = u"Wyniki wyszukiwania"
 class SearchFeed(AcquisitionFeed):
     description = u"Wyniki wyszukiwania na stronie WolneLektury.pl"
     title = u"Wyniki wyszukiwania"