Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/views/dashboard/index.atom.builder')
-rw-r--r--app/views/dashboard/index.atom.builder36
1 files changed, 36 insertions, 0 deletions
diff --git a/app/views/dashboard/index.atom.builder b/app/views/dashboard/index.atom.builder
new file mode 100644
index 00000000000..706b808ee43
--- /dev/null
+++ b/app/views/dashboard/index.atom.builder
@@ -0,0 +1,36 @@
+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?}"
+ xml.link :href => projects_url(:atom), :rel => "self", :type => "application/atom+xml"
+ xml.link :href => projects_url, :rel => "alternate", :type => "text/html"
+ xml.id projects_url
+ xml.updated @events.maximum(:updated_at).strftime("%Y-%m-%dT%H:%M:%SZ") if @events.any?
+
+ @events.each do |event|
+ if event.allowed?
+ xml.entry do
+ if event.issue?
+ event_link = project_issue_url(event.project, event.issue)
+ event_title = event.issue_title
+ elsif event.merge_request?
+ event_link = project_merge_request_url(event.project, event.merge_request)
+ event_title = event.merge_request_title
+ elsif event.push?
+ event_link = project_commits_url(event.project, :ref => event.ref_name)
+ event_title = event.ref_name
+ end
+
+ 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
+ xml.summary event_title
+ end
+ end
+ end
+end