Skip to content

Commit af9236f

Browse files
committed
Use IDInternal as the primary object, since RFCs can have comments.
- Legacy-Id: 827
1 parent e272dda commit af9236f

1 file changed

Lines changed: 11 additions & 6 deletions

File tree

ietf/idtracker/feeds.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,29 +2,34 @@
22

33
from django.contrib.syndication.feeds import Feed, FeedDoesNotExist
44
from django.utils.feedgenerator import Atom1Feed
5-
from ietf.idtracker.models import InternetDraft, DocumentComment
5+
from ietf.idtracker.models import IDInternal, DocumentComment
66
import datetime
7+
import re
78

89
class DocumentComments(Feed):
910
feed_type = Atom1Feed
1011
def get_object(self, bits):
1112
if len(bits) != 1:
12-
raise InternetDraft.DoesNotExist
13-
return InternetDraft.objects.get(filename=bits[0])
13+
raise IDInternal.DoesNotExist
14+
rfc = re.match('rfc(\d+)', bits[0])
15+
if rfc:
16+
return IDInternal.objects.get(draft_id=int(rfc.group(1)), rfc_flag=1)
17+
else:
18+
return IDInternal.objects.get(draft__filename=bits[0], rfc_flag=0)
1419

1520
def title(self, obj):
16-
return "I-D Tracker comments for %s" % obj.filename
21+
return "I-D Tracker comments for %s" % obj.document().filename
1722

1823
def link(self, obj):
1924
if obj is None:
2025
raise FeedDoesNotExist
2126
return obj.get_absolute_url()
2227

2328
def description(self, obj):
24-
self.title(obj)
29+
return self.title(obj)
2530

2631
def items(self, obj):
27-
return DocumentComment.objects.filter(document=obj.id_document_tag, public_flag=1).order_by("-date")[:15]
32+
return obj.public_comments().order_by("-date")[:15]
2833

2934
def item_pubdate(self, item):
3035
time = datetime.time(*[int(t) for t in item.time.split(":")])

0 commit comments

Comments
 (0)