2010-09-26 21:20:05 +00:00
|
|
|
from django.contrib.syndication.feeds import Feed
|
2010-09-26 21:56:29 +00:00
|
|
|
from conservancy.apps.news.models import PressRelease
|
2010-09-26 21:20:05 +00:00
|
|
|
|
|
|
|
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()})
|