]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/changeset/list.atom.builder
While we don't have the sanitizing backend to safely solve ticket
[rails.git] / app / views / changeset / list.atom.builder
index 7c1cf8bda0ad9d9027a6fe2a2670e109f4a7ef79..82309ee53164be7fd498af0fa6058a7993099a5f 100644 (file)
@@ -5,7 +5,9 @@ atom_feed(:language => I18n.locale, :schema_date => 2009,
   feed.title @title
 
   feed.subtitle :type => 'xhtml' do |xhtml|
-    xhtml.p @description
+    xhtml.p do |p|
+      p << @description
+    end
   end
 
   feed.updated @edits.map {|e|  [e.created_at, e.closed_at].max }.max
@@ -27,7 +29,11 @@ atom_feed(:language => I18n.locale, :schema_date => 2009,
                  :href => changeset_download_url(changeset, :only_path => false),
                  :type => "application/osmChange+xml"
 
-      entry.title t('browse.changeset.title') + " " + h(changeset.id)
+      if !changeset.tags.empty? and changeset.tags.has_key? "comment"
+        entry.title t('browse.changeset.feed.title_comment', :id => h(changeset.id), :comment => h(changeset.tags['comment'])), :type => "html"
+      else
+        entry.title t('browse.changeset.feed.title', :id => h(changeset.id))
+      end
 
       if changeset.user.data_public?
         entry.author do |author|
@@ -36,8 +42,40 @@ atom_feed(:language => I18n.locale, :schema_date => 2009,
         end
       end
 
-      if changeset.tags['comment']
-        feed.content changeset.tags['comment']
+      feed.content :type => 'xhtml' do |xhtml|
+        xhtml.style "th { text-align: left } tr { vertical-align: top }"
+        xhtml.table do |table|
+          table.tr do |tr|
+            tr.th t("browse.changeset_details.created_at")
+            tr.td l(changeset.created_at)
+          end
+          table.tr do |tr|
+            tr.th t("browse.changeset_details.closed_at")
+            tr.td l(changeset.closed_at)
+          end
+          if changeset.user.data_public?
+            table.tr do |tr|
+              tr.th t("browse.changeset_details.belongs_to")
+              tr.td do |td|
+                td.a h(changeset.user.display_name), :href => url_for(:controller => "user", :action => "view", :display_name => changeset.user.display_name, :only_path => false)
+              end
+            end
+          end
+          unless changeset.tags.empty?
+            table.tr do |tr|
+              tr.th t("browse.tag_details.tags")
+              tr.td do |td|
+                td.table :cellpadding => "0" do |table|
+                  changeset.tags.sort.each do |tag|
+                    table.tr do |tr|
+                      tr.td "#{h(tag[0])} = #{sanitize(tag[1])}"
+                    end
+                  end
+                end
+              end
+            end
+          end
+        end
       end
 
       unless changeset.min_lat.nil?