annotate gpp/news/feeds.py @ 467:b910cc1460c8

Add the ability to conditionally add model instances to the search index on update. This is not perfect, as some instances should be deleted from the index if they are updated such that they should not be in the index anymore. Will think about and address that later.
author Brian Neal <bgneal@gmail.com>
date Sun, 24 Jul 2011 18:12:20 +0000
parents b4305e18d3af
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, )