show.atom.builder 1.28 KB
Newer Older
Nihad Abbasov's avatar
Nihad Abbasov committed
1 2 3
xml.instruct!
xml.feed "xmlns" => "http://www.w3.org/2005/Atom", "xmlns:media" => "http://search.yahoo.com/mrss/" do
  xml.title   "Dashboard feed#{" - #{current_user.name}" if current_user.name.present?}"
4 5
  xml.link    :href => dashboard_url(:atom), :rel => "self", :type => "application/atom+xml"
  xml.link    :href => dashboard_url, :rel => "alternate", :type => "text/html"
Nihad Abbasov's avatar
Nihad Abbasov committed
6 7 8 9
  xml.id      projects_url
  xml.updated @events.maximum(:updated_at).strftime("%Y-%m-%dT%H:%M:%SZ") if @events.any?

  @events.each do |event|
10
    if event.proper?
Nihad Abbasov's avatar
Nihad Abbasov committed
11
      xml.entry do
12 13 14
        event_link = event_feed_url(event)
        event_title = event_feed_title(event)
        event_summary = event_feed_summary(event)
Nihad Abbasov's avatar
Nihad Abbasov committed
15 16 17 18 19 20 21 22 23 24

        xml.id      "tag:#{request.host},#{event.created_at.strftime("%Y-%m-%d")}:#{event.id}"
        xml.link    :href => event_link
        xml.title   truncate(event_title, :length => 80)
        xml.updated event.created_at.strftime("%Y-%m-%dT%H:%M:%SZ")
        xml.media   :thumbnail, :width => "40", :height => "40", :url => gravatar_icon(event.author_email)
        xml.author do |author|
          xml.name event.author_name
          xml.email event.author_email
        end
25
        xml.summary(:type => "xhtml") { |x| x << event_summary unless event_summary.nil? }
Nihad Abbasov's avatar
Nihad Abbasov committed
26 27 28 29
      end
    end
  end
end