Commit a00d1eab authored by Jean-Philippe Lang's avatar Jean-Philippe Lang

Fixed: watchers selection lost when issue creation fails (#5406). #watched_by?…

Fixed: watchers selection lost when issue creation fails (#5406). #watched_by? was fixed in order to work with #watcher_user_ids= used in controllers on unsaved objects.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3705 e93f8b46-1217-0410-a6f0-8f06a7374b81
parent e5180884
......@@ -47,6 +47,12 @@ class WatcherTest < ActiveSupport::TestCase
assert Issue.watched_by(@user).include?(@issue)
end
def test_watcher_user_ids
issue = Issue.new
issue.watcher_user_ids = ['1', '3']
assert issue.watched_by?(User.find(1))
end
def test_recipients
@issue.watchers.delete_all
@issue.reload
......
......@@ -50,9 +50,9 @@ module Redmine
watching ? add_watcher(user) : remove_watcher(user)
end
# Returns true if object is watched by user
# Returns true if object is watched by +user+
def watched_by?(user)
!!(user && self.watchers.detect {|w| w.user_id == user.id })
!!(user && self.watcher_user_ids.detect {|uid| uid == user.id })
end
# Returns an array of watchers' email addresses
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment