summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2015-03-27 12:19:34 +0100
committerDouwe Maan <douwe@gitlab.com>2015-04-02 10:57:01 +0200
commite62b5a2b072eb1bc8587b095e906bd194475eacc (patch)
tree41c8af3aa73cce323bc9bdb53091c5c44ad39951 /app/models
parent756e7aa8c347ccf211db03a7fa16ab33c021f820 (diff)
downloadgitlab-ce-e62b5a2b072eb1bc8587b095e906bd194475eacc.tar.gz
Only allow user to see participants from groups they have access to.
Diffstat (limited to 'app/models')
-rw-r--r--app/models/concerns/issuable.rb8
-rw-r--r--app/models/concerns/mentionable.rb4
2 files changed, 6 insertions, 6 deletions
diff --git a/app/models/concerns/issuable.rb b/app/models/concerns/issuable.rb
index 88ac83744df..478134dff68 100644
--- a/app/models/concerns/issuable.rb
+++ b/app/models/concerns/issuable.rb
@@ -118,16 +118,16 @@ module Issuable
end
# Return all users participating on the discussion
- def participants
+ def participants(current_user = self.author)
users = []
users << author
users << assignee if is_assigned?
mentions = []
- mentions << self.mentioned_users
+ mentions << self.mentioned_users(current_user)
notes.each do |note|
users << note.author
- mentions << note.mentioned_users
+ mentions << note.mentioned_users(current_user)
end
users.concat(mentions.reduce([], :|)).uniq
@@ -140,7 +140,7 @@ module Issuable
return subscription.subscribed
end
- participants.include?(user)
+ participants(user).include?(user)
end
def toggle_subscription(user)
diff --git a/app/models/concerns/mentionable.rb b/app/models/concerns/mentionable.rb
index 1ab0a28fddd..41bcfa6be21 100644
--- a/app/models/concerns/mentionable.rb
+++ b/app/models/concerns/mentionable.rb
@@ -42,10 +42,10 @@ module Mentionable
Note.cross_reference_exists?(target, local_reference)
end
- def mentioned_users
+ def mentioned_users(current_user = nil)
return [] if mentionable_text.blank?
- ext = Gitlab::ReferenceExtractor.new(self.project)
+ ext = Gitlab::ReferenceExtractor.new(self.project, current_user)
ext.analyze(text)
ext.users.uniq
end