equal
deleted
inserted
replaced
1 from django.core.exceptions import ObjectDoesNotExist |
|
2 from django.utils.feedgenerator import Atom1Feed |
|
3 from django.contrib.syndication.feeds import Feed |
|
4 from hgbook.comments.models import Comment, Element |
|
5 |
|
6 class MyAtomFeed(Atom1Feed): |
|
7 title_type = u'html' |
|
8 |
|
9 class Comments(Feed): |
|
10 feed_type = MyAtomFeed |
|
11 title = 'Mercurial - The Definitive Guide: recent comments' |
|
12 subtitle = ('Recent comments on the text of “Mercurial: The ' |
|
13 'Definitive Guide”, from our readers') |
|
14 link = '/feeds/comments/' |
|
15 author_name = 'Our readers' |
|
16 |
|
17 def feedfilter(self, queryset): |
|
18 return queryset.order_by('-date')[:20] |
|
19 |
|
20 def items(self): |
|
21 return self.feedfilter(Comment.objects) |
|
22 |
|
23 def item_author_name(self, obj): |
|
24 return obj.submitter_name |
|
25 |
|
26 def item_pubdate(self, obj): |
|
27 return obj.date |
|
28 |
|
29 def get_object(self, bits): |
|
30 if len(bits) == 0: |
|
31 return self.items() |
|
32 elif len(bits) > 1: |
|
33 raise ObjectDoesNotExist |
|
34 return self.feedfilter(Comment.objects.filter(element__chapter=bits[0], |
|
35 hidden=False)) |
|