Merge branch 'notify-on-mention-everywhere' into 'master'

Notify on mention everywhere

Fixes gitlab/gitlabhq#1558

See merge request !1228
This commit is contained in:
Dmitriy Zaporozhets 2014-10-30 13:23:16 +00:00
commit 8388bbe829
4 changed files with 17 additions and 5 deletions

View File

@ -4,6 +4,7 @@ v 7.5.0
- Fix LDAP authentication for Git HTTP access
- Fix LDAP config lookup for provider 'ldap'
- Add Atlassian Bamboo CI service (Drew Blessing)
- Mentioned @user will receive email even if he is not participating in issue or commit
v 7.4.2
- Fix internal snippet exposing for unauthenticated users

View File

@ -52,11 +52,7 @@ module Mentionable
if identifier == "all"
users += project.team.members.flatten
else
if has_project
id = project.team.members.find_by(username: identifier).try(:id)
else
id = User.find_by(username: identifier).try(:id)
end
id = User.find_by(username: identifier).try(:id)
users << User.find(id) unless id.blank?
end
end

View File

@ -124,6 +124,7 @@ class NotificationService
opts = { noteable_type: note.noteable_type, project_id: note.project_id }
target = note.noteable
if target.respond_to?(:participants)
recipients = target.participants
else

View File

@ -0,0 +1,14 @@
require 'spec_helper'
describe Issue, "Mentionable" do
describe :mentioned_users do
let!(:user) { create(:user, username: 'stranger') }
let!(:user2) { create(:user, username: 'john') }
let!(:issue) { create(:issue, description: '@stranger mentioned') }
subject { issue.mentioned_users }
it { should include(user) }
it { should_not include(user2) }
end
end