From e5dc94fe82cba5a8f099f8512e95144fa3a6aca1 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang <jp_lang@yahoo.fr> Date: Wed, 2 Dec 2009 19:17:42 +0000 Subject: [PATCH] Make use of #watched_by? in issue form. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3114 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/views/issues/_form.rhtml | 2 +- vendor/plugins/acts_as_watchable/lib/acts_as_watchable.rb | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/app/views/issues/_form.rhtml b/app/views/issues/_form.rhtml index 5337b51be..032d08205 100644 --- a/app/views/issues/_form.rhtml +++ b/app/views/issues/_form.rhtml @@ -23,7 +23,7 @@ <% if @issue.new_record? && User.current.allowed_to?(:add_issue_watchers, @project) -%> <p><label><%= l(:label_issue_watchers) %></label> <% @issue.project.users.sort.each do |user| -%> -<label class="floating"><%= check_box_tag 'issue[watcher_user_ids][]', user.id, @issue.watcher_user_ids.include?(user.id) %> <%=h user %></label> +<label class="floating"><%= check_box_tag 'issue[watcher_user_ids][]', user.id, @issue.watched_by?(user) %> <%=h user %></label> <% end -%> </p> <% end %> diff --git a/vendor/plugins/acts_as_watchable/lib/acts_as_watchable.rb b/vendor/plugins/acts_as_watchable/lib/acts_as_watchable.rb index 3d0de0dca..977ab4fc7 100644 --- a/vendor/plugins/acts_as_watchable/lib/acts_as_watchable.rb +++ b/vendor/plugins/acts_as_watchable/lib/acts_as_watchable.rb @@ -46,10 +46,9 @@ module Redmine watching ? add_watcher(user) : remove_watcher(user) end - # Returns if object is watched by user + # Returns true if object is watched by user def watched_by?(user) - !self.watchers.find(:first, - :conditions => ["#{Watcher.table_name}.user_id = ?", user.id]).nil? + !!(user && self.watchers.detect {|w| w.user_id == user.id }) end # Returns an array of watchers' email addresses -- GitLab