Factor out common last modified code for news feed

This will set up retrieving this value from memcached as well as some other
changes to come.

Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
Dan McGee 2010-10-07 19:16:40 -05:00
parent 82f3b02f60
commit cf7bf2de29

View File

@ -78,18 +78,23 @@ def item_categories(self, item):
return (item.repo.name, item.arch.name)
def news_etag(request, *args, **kwargs):
latest = News.objects.latest('last_modified')
if latest:
return md5_constructor(str(latest.last_modified)).hexdigest()
def retrieve_news_latest():
try:
latest = News.objects.values('last_modified').latest('last_modified')
return latest['last_modified']
except News.DoesNotExist:
pass
return None
def news_last_modified(request):
latest = News.objects.latest('last_modified')
def news_etag(request, *args, **kwargs):
latest = retrieve_news_latest()
if latest:
return latest.last_modified
return md5_constructor(str(latest)).hexdigest()
return None
def news_last_modified(request, *args, **kwargs):
return retrieve_news_latest()
class NewsFeed(Feed):
title = 'Arch Linux: Recent news updates'
link = '/news/'