Clean up code somewhat.

This commit is contained in:
Douwe Maan 2015-04-17 11:03:33 +02:00
parent 990b476faa
commit 630e879066
4 changed files with 24 additions and 26 deletions

View File

@ -139,15 +139,14 @@ class Commit
users << author
users << committer
mentions = []
mentions << self.mentioned_users(current_user, project)
users.push *self.mentioned_users(current_user, project)
notes(project).each do |note|
users << note.author
mentions << note.mentioned_users(current_user, project)
users.push *note.mentioned_users(current_user, project)
end
users.concat(mentions.reduce([], :|)).uniq
users.uniq
end
def notes(project)

View File

@ -122,16 +122,15 @@ module Issuable
users = []
users << author
users << assignee if is_assigned?
mentions = []
mentions << self.mentioned_users(current_user)
users.push *self.mentioned_users(current_user)
notes.each do |note|
users << note.author
mentions << note.mentioned_users(current_user)
users.push *note.mentioned_users(current_user)
end
users.concat(mentions.reduce([], :|)).uniq
users.uniq
end
def subscribed?(user)

View File

@ -90,15 +90,13 @@ class Snippet < ActiveRecord::Base
def participants(current_user = self.author)
users = []
users << author
mentions = []
notes.each do |note|
users << note.author
mentions << note.mentioned_users(current_user)
users.push *note.mentioned_users(current_user)
end
users.concat(mentions.reduce([], :|)).uniq
users.uniq
end
class << self

View File

@ -13,19 +13,21 @@ module Projects
end
def participants_in(type, id)
users = case type
when "Issue"
issue = project.issues.find_by_iid(id)
issue ? issue.participants(current_user) : []
when "MergeRequest"
merge_request = project.merge_requests.find_by_iid(id)
merge_request ? merge_request.participants(current_user) : []
when "Commit"
commit = project.repository.commit(id)
commit ? commit.participants(project, current_user) : []
else
[]
end
users =
case type
when "Issue"
issue = project.issues.find_by_iid(id)
issue.participants(current_user) if issue
when "MergeRequest"
merge_request = project.merge_requests.find_by_iid(id)
merge_request.participants(current_user) if merge_request
when "Commit"
commit = project.repository.commit(id)
commit.participants(project, current_user) if commit
end
return [] unless users
sorted(users)
end