diff rhodecode/controllers/feed.py @ 1897:0f22dedb588f beta

added short_id to feeds, and made it more compact
author Marcin Kuzminski <marcin@python-works.com>
date Fri, 13 Jan 2012 21:31:01 +0200
parents 89efedac4e6c
children 82a88013a3fd 8ecfed1d8f8b
line wrap: on
line diff
--- a/rhodecode/controllers/feed.py	Fri Jan 13 07:36:07 2012 +0200
+++ b/rhodecode/controllers/feed.py	Fri Jan 13 21:31:01 2012 +0200
@@ -51,6 +51,11 @@
         self.ttl = "5"
         self.feed_nr = 10
 
+    def _get_title(self, cs):
+        return "R%s:%s - %s" % (
+            cs.revision, cs.short_id, cs.message
+        )
+
     def __changes(self, cs):
         changes = []
 
@@ -72,18 +77,21 @@
 
     def atom(self, repo_name):
         """Produce an atom-1.0 feed via feedgenerator module"""
-        feed = Atom1Feed(title=self.title % repo_name,
-                         link=url('summary_home', repo_name=repo_name,
-                                  qualified=True),
-                         description=self.description % repo_name,
-                         language=self.language,
-                         ttl=self.ttl)
-        desc_msg = []
+        feed = Atom1Feed(
+             title=self.title % repo_name,
+             link=url('summary_home', repo_name=repo_name,
+                      qualified=True),
+             description=self.description % repo_name,
+             language=self.language,
+             ttl=self.ttl
+        )
+
         for cs in reversed(list(c.rhodecode_repo[-self.feed_nr:])):
+            desc_msg = []
             desc_msg.append('%s - %s<br/><pre>' % (cs.author, cs.date))
             desc_msg.append(self.__changes(cs))
 
-            feed.add_item(title=cs.message,
+            feed.add_item(title=self._get_title(cs),
                           link=url('changeset_home', repo_name=repo_name,
                                    revision=cs.raw_id, qualified=True),
                           author_name=cs.author,
@@ -94,18 +102,21 @@
 
     def rss(self, repo_name):
         """Produce an rss2 feed via feedgenerator module"""
-        feed = Rss201rev2Feed(title=self.title % repo_name,
-                         link=url('summary_home', repo_name=repo_name,
-                                  qualified=True),
-                         description=self.description % repo_name,
-                         language=self.language,
-                         ttl=self.ttl)
-        desc_msg = []
+        feed = Rss201rev2Feed(
+            title=self.title % repo_name,
+            link=url('summary_home', repo_name=repo_name,
+                     qualified=True),
+            description=self.description % repo_name,
+            language=self.language,
+            ttl=self.ttl
+        )
+
         for cs in reversed(list(c.rhodecode_repo[-self.feed_nr:])):
+            desc_msg = []
             desc_msg.append('%s - %s<br/><pre>' % (cs.author, cs.date))
             desc_msg.append(self.__changes(cs))
 
-            feed.add_item(title=cs.message,
+            feed.add_item(title=self._get_title(cs),
                           link=url('changeset_home', repo_name=repo_name,
                                    revision=cs.raw_id, qualified=True),
                           author_name=cs.author,