Reuse the map_bug_comment table as a more general history table of map_bugs including close and reopen events
This helps the rss feed to work on a per event basis rather than on a per bug basis
This commit is contained in:
parent
4aec8dc3a5
commit
c3bf919e3e
9 changed files with 120 additions and 21 deletions
49
app/views/map_bugs/rss.rss.builder
Normal file
49
app/views/map_bugs/rss.rss.builder
Normal file
|
@ -0,0 +1,49 @@
|
|||
xml.instruct!
|
||||
|
||||
xml.rss("version" => "2.0",
|
||||
"xmlns:geo" => "http://www.w3.org/2003/01/geo/wgs84_pos#",
|
||||
"xmlns:georss" => "http://www.georss.org/georss") do
|
||||
xml.channel do
|
||||
xml.title "OpenStreetBugs"
|
||||
xml.description t('bugs.rss.description_area', :min_lat => @min_lat, :min_lon => @min_lon, :max_lat => @max_lat, :max_lon => @max_lon )
|
||||
xml.link url_for(:controller => "site", :action => "index", :only_path => false)
|
||||
|
||||
for comment in @comments
|
||||
xml.item do
|
||||
if comment.event == "closed"
|
||||
xml.title t('bugs.rss.closed', :place => comment.map_bug.nearby_place)
|
||||
else if comment.event == "commented"
|
||||
xml.title t('bugs.rss.comment', :place => comment.map_bug.nearby_place)
|
||||
else if comment.event == "opened"
|
||||
xml.title t('bugs.rss.new', :place => comment.map_bug.nearby_place)
|
||||
else
|
||||
xml.title "unknown event"
|
||||
end end end
|
||||
|
||||
xml.link url_for(:controller => "browse", :action => "bug", :id => comment.map_bug.id, :only_path => false)
|
||||
xml.guid url_for(:controller => "browse", :action => "bug", :id => comment.map_bug.id, :only_path => false)
|
||||
|
||||
description_text = ""
|
||||
if (comment.event == "commented") and (not comment.nil?)
|
||||
description_text += "<B> Comment: </B><br>"
|
||||
description_text += htmlize(comment.comment)
|
||||
description_text += "<br>"
|
||||
end
|
||||
description_text += "<B> Full bug report: </B><br>"
|
||||
description_text += comment.map_bug.flatten_comment("<br>", comment.date_created)
|
||||
xml.description description_text
|
||||
|
||||
if (comment.user.nil?)
|
||||
xml.author comment.commenter_name
|
||||
else
|
||||
xml.author comment.user.dislay_name
|
||||
end
|
||||
|
||||
xml.pubDate comment.date_created.to_s(:rfc822)
|
||||
xml.geo :lat, comment.map_bug.lat
|
||||
xml.geo :long, comment.map_bug.lon
|
||||
xml.georss :point, "#{comment.map_bug.lat} #{comment.map_bug.lon}"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue