@@ -151,12 +151,15 @@ class OmnibusFeed(ConservancyFeedBase):
class BlogFeed(ConservancyFeedBase):
link = "/blog/"
get_absolute_url = '/feeds/blog/'
def get_object(self, request):
# This is a hack: keep GET object handy so I always have it in all methods.
if not hasattr(self, 'GET') and request and hasattr(request, 'GET'):
self.GET = request.GET
return request
def title(self, obj):
answer = "The Software Freedom Conservancy Blog"
GET = obj.GET
@@ -220,13 +223,13 @@ class BlogFeed(ConservancyFeedBase):
return item.summary
def item_author_name(self, item):
return item.author.formal_name
def item_author_email(self, item):
GET = self.get_object().GET
GET = self.GET
if not 'author' in GET:
return "%s@sfconservancy.org" % item.author
else:
answer = ""
authors = GET.getlist('author')
firstTime = True
@@ -238,13 +241,17 @@ class BlogFeed(ConservancyFeedBase):
answer += ",%s@sfconservancy.org" % author
def item_pubdate(self, item):
return item.pub_date
def items(self, obj):
def OR_filter(field_name, subfield_name, objs):
from django.db.models import Q
return reduce(lambda x, y: x | y,
[Q(**{'%s__%s' % (field_name, subfield_name): x})
for x in objs])