From d05c7253084ea73dfd734099455f3d8964d4cf25 Mon Sep 17 00:00:00 2001 From: Jacob Kaplan-Moss Date: Tue, 12 Aug 2008 22:12:14 +0000 Subject: Fixed #8253: fixed xmlns regression for Atom feeds, and in the process added a hook for adding attributes specifically on the root element (for RSS feeds only, of course). Patch by Justin Bronn. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8331 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/utils/feedgenerator.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'django/utils') diff --git a/django/utils/feedgenerator.py b/django/utils/feedgenerator.py index da6e0a8dc8..705dd84502 100644 --- a/django/utils/feedgenerator.py +++ b/django/utils/feedgenerator.py @@ -178,13 +178,16 @@ class RssFeed(SyndicationFeed): def write(self, outfile, encoding): handler = SimplerXMLGenerator(outfile, encoding) handler.startDocument() - handler.startElement(u"rss", {u"version": self._version}) + handler.startElement(u"rss", self.rss_attributes()) handler.startElement(u"channel", self.root_attributes()) self.add_root_elements(handler) self.write_items(handler) self.endChannelElement(handler) handler.endElement(u"rss") + def rss_attributes(self): + return {u"version": self._version} + def write_items(self, handler): for item in self.items: handler.startElement(u'item', self.item_attributes(item)) @@ -266,7 +269,7 @@ class Atom1Feed(SyndicationFeed): self.write_items(handler) handler.endElement(u"feed") - def root_element_attributes(self): + def root_attributes(self): if self.feed['language'] is not None: return {u"xmlns": self.ns, u"xml:lang": self.feed['language']} else: -- cgit v1.3