diff --git a/www/conservancy/feeds.py b/www/conservancy/feeds.py new file mode 100644 index 0000000000000000000000000000000000000000..699a02516f5511947cc60bbeba070167e3e5cd6f --- /dev/null +++ b/www/conservancy/feeds.py @@ -0,0 +1,32 @@ +from django.contrib.syndication.feeds import Feed +from sflc.apps.news.models import PressRelease + +from django.shortcuts import render_to_response +from django.conf import settings +import datetime + +class PressReleaseFeed(Feed): + title = "Software Freedom Conservancy News" + link = "/news/" + description = "" + + def items(self): + return PressRelease.objects.filter(pub_date__lte=datetime.datetime.now(), + sites__id__exact=settings.SITE_ID).order_by('-pub_date')[:10] + + def item_pubdate(self, item): + return item.pub_date + +feed_dict = { + 'news': PressReleaseFeed, +} + +# make each feed know its canonical url +for k, v in feed_dict.items(): + v.get_absolute_url = '/feeds/%s/' % k + +def view(request): + """Listing of all available feeds + """ + + return render_to_response("feeds.html", {'feeds': feed_dict.values()})