]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/notes/feed.rss.builder
Combine and refine third and sixth section
[rails.git] / app / views / notes / feed.rss.builder
index ba0e3fbfecdfa5ca6149358e3f4dbe8f961124f6..e663d94a60ff8d19c61cfb0cb4ccc4ddc84829f9 100644 (file)
@@ -1,6 +1,7 @@
 xml.instruct!
 
 xml.rss("version" => "2.0", 
+        "xmlns:dc" => "http://purl.org/dc/elements/1.1/",
         "xmlns:geo" => "http://www.w3.org/2003/01/geo/wgs84_pos#",
         "xmlns:georss" => "http://www.georss.org/georss") do
   xml.channel do
@@ -9,36 +10,22 @@ xml.rss("version" => "2.0",
     xml.link url_for(:controller => "site", :action => "index", :only_path => false)
 
     @comments.each do |comment|
-      location_string = Rails.cache.fetch("location_description_#{comment.note.lat}_#{comment.note.lon}_#{locale}") do
-        describe_location comment.note.lat, comment.note.lon, 14, locale
-      end
+      location = describe_location(comment.note.lat, comment.note.lon, 14, locale)
+
       xml.item do
-        if comment.event == "closed"
-          xml.title t('note.rss.closed', :place => location_string)    
-        elsif comment.event == "commented"
-          xml.title t('note.rss.comment', :place => location_string)
-        elsif comment.event == "opened"
-          xml.title t('note.rss.new', :place => location_string)
-        else
-          xml.title "unknown event"
-        end
+        xml.title t("note.rss.#{comment.event}", :place => location)
         
-        xml.link url_for(:controller => "browse", :action => "note", :id => comment.note.id, :only_path => false)
-        xml.guid url_for(:controller => "browse", :action => "note", :id => comment.note.id, :only_path => false)
+        xml.link url_for(:controller => "browse", :action => "note", :id => comment.note.id, :anchor => "c#{comment.id}", :only_path => false)
+        xml.guid url_for(:controller => "browse", :action => "note", :id => comment.note.id, :anchor => "c#{comment.id}", :only_path => false)
 
-        description_text = ""
-
-        if comment.event == "commented" and not comment.nil?
-          description_text += "<b>Comment:</b><br>"
-          description_text += comment.body.to_html
-          description_text += "<br>"
+        xml.description do
+          xml.cdata! render(:partial => "entry", :object => comment, :formats => [ :html ])
         end
 
-        description_text += "<b>Full note:</b><br>"
-        description_text += comment.note.flatten_comment("<br>", comment.created_at)
+        if comment.author
+          xml.dc :creator, comment.author.display_name
+        end
 
-        xml.description description_text 
-        xml.author comment.author_name
         xml.pubDate comment.created_at.to_s(:rfc822)
         xml.geo :lat, comment.note.lat
         xml.geo :long, comment.note.lon