#
from base64 import b64encode
import os.path
+from urlparse import urljoin
from django.contrib.syndication.views import Feed
from django.core.urlresolvers import reverse
from catalogue.models import Book, Tag
from catalogue.views import books_starting_with
+from opds.utils import piwik_track
_root_feeds = (
{
def full_url(url):
- return "http://%s%s" % (Site.objects.get_current().domain, url)
+ return urljoin("http://%s" % Site.objects.get_current().domain, url)
class OPDSFeed(Atom1Feed):
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'
def item_description(self, item):
return item['description']
-
+@piwik_track
class ByCategoryFeed(Feed):
feed_type = OPDSFeed
link = u'http://www.wolnelektury.pl/'
def item_description(self):
return u''
-
+@piwik_track
class ByTagFeed(AcquisitionFeed):
def link(self, tag):
return tag.get_absolute_url()
@factory_decorator(logged_in_or_basicauth())
+@piwik_track
class UserFeed(Feed):
feed_type = OPDSFeed
link = u'http://www.wolnelektury.pl/'
def item_description(self):
return u''
+# no class decorators in python 2.5
+#UserFeed = factory_decorator(logged_in_or_basicauth())(UserFeed)
+
@factory_decorator(logged_in_or_basicauth())
+@piwik_track
class UserSetFeed(AcquisitionFeed):
def link(self, tag):
return tag.get_absolute_url()
def items(self, tag):
return Book.tagged.with_any([tag])
+# no class decorators in python 2.5
+#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"