annotate gpp/news/feeds.py @ 265:1ba2c6bf6eb7

Closing #98. Animated GIFs were losing their transparency and animated properties when saved as avatars. Reworked the avatar save process to only run the avatar through PIL if it is too big. This preserves the original uploaded file if it is within the desired size settings. This may still mangle big animated gifs. If this becomes a problem, then maybe look into calling the PIL Image.resize() method directly. Moved the PIL image specific functions from bio.forms to a new module: core.image for better reusability in the future.
author Brian Neal <bgneal@gmail.com>
date Fri, 24 Sep 2010 02:12:09 +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, )