gitlabhq/app/decorators/event_decorator.rb

45 lines
1.4 KiB
Ruby
Raw Normal View History

2012-07-06 01:16:41 +02:00
class EventDecorator < ApplicationDecorator
decorates :event
def feed_title
if self.issue?
"#{self.author_name} #{self.action_name} issue ##{self.target_id}: #{self.issue_title} at #{self.project.name}"
2012-07-06 01:16:41 +02:00
elsif self.merge_request?
"#{self.author_name} #{self.action_name} MR ##{self.target_id}: #{self.merge_request_title} at #{self.project.name}"
2012-07-06 01:16:41 +02:00
elsif self.push?
"#{self.author_name} #{self.push_action_name} #{self.ref_type} #{self.ref_name} at #{self.project.name}"
2012-09-09 23:27:47 +02:00
elsif self.membership_changed?
2012-09-09 22:18:28 +02:00
"#{self.author_name} #{self.action_name} #{self.project.name}"
else
2012-07-06 01:16:41 +02:00
""
end
end
def feed_url
if self.issue?
h.project_issue_url(self.project, self.issue)
elsif self.merge_request?
h.project_merge_request_url(self.project, self.merge_request)
elsif self.push?
if self.push_with_commits?
if self.commits_count > 1
2012-10-08 13:17:46 +02:00
h.project_compare_url(self.project, :from => self.parent_commit.id, :to => self.last_commit.id)
else
2012-10-08 13:17:46 +02:00
h.project_commit_url(self.project, :id => self.last_commit.id)
end
else
2012-10-08 13:17:46 +02:00
h.project_commits_url(self.project, self.ref_name)
end
end
end
def feed_summary
if self.issue?
h.render "events/event_issue", issue: self.issue
2012-07-06 01:16:41 +02:00
elsif self.push?
h.render "events/event_push", event: self
2012-07-06 01:16:41 +02:00
end
end
end