annotate news/feeds.py @ 697:67f8d49a9377

Cleaned up the code a bit. Separated the S3 stuff out into its own class. This class maybe should be in core. Still want to do some kind of context manager around the temporary file we are creating to ensure it gets deleted.
author Brian Neal <bgneal@gmail.com>
date Sun, 08 Sep 2013 21:02:58 -0500
parents ee87ea74d46b
children
rev   line source
gremmie@1 1 """
gremmie@1 2 This file contains the feed classes for the news application.
gremmie@1 3 """
bgneal@176 4 from django.contrib.syndication.views import Feed
bgneal@170 5
gremmie@1 6 from news.models import Story
bgneal@176 7 from core.functions import get_full_name
bgneal@176 8 from core.functions import copyright_str
bgneal@170 9
gremmie@1 10
gremmie@1 11 class LatestNewsFeed(Feed):
bgneal@170 12 """The Feed class for the news application"""
gremmie@1 13
bgneal@170 14 title = 'SurfGuitar101.com News Feed'
bgneal@170 15 link = '/feeds/news/'
bgneal@170 16 description = 'News articles and stories from SurfGuitar101.com'
bgneal@170 17 ttl = '720'
bgneal@176 18 author_name = 'Brian Neal'
bgneal@176 19 author_email = 'admin@surfguitar101.com'
gremmie@1 20
bgneal@176 21 def feed_copyright(self):
bgneal@176 22 return copyright_str()
bgneal@170 23
bgneal@170 24 def items(self):
bgneal@204 25 return Story.objects.order_by('-date_submitted')[:5]
bgneal@170 26
bgneal@176 27 def item_title(self, item):
bgneal@176 28 return item.title
bgneal@176 29
bgneal@176 30 def item_description(self, item):
bgneal@176 31 return item.short_text + item.long_text
bgneal@176 32
bgneal@176 33 def item_author_name(self, item):
bgneal@176 34 return get_full_name(item.submitter)
bgneal@176 35
bgneal@170 36 def item_pubdate(self, item):
bgneal@204 37 return item.date_submitted
bgneal@170 38
bgneal@170 39 def item_categories(self, item):
bgneal@170 40 return (item.category.title, )