summaryrefslogtreecommitdiffstats
path: root/app/models/wiki_content.rb
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2009-12-13 14:26:54 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2009-12-13 14:26:54 +0000
commitbb477a3a0fe71f0e15b78b6e0fafb017065fba26 (patch)
tree5fe5daa3d87fa80c93b0e77bc95552079a1389c5 /app/models/wiki_content.rb
parent6610bb6b6cbb1ef72787542063359de04fbab6be (diff)
downloadredmine-bb477a3a0fe71f0e15b78b6e0fafb017065fba26.tar.gz
redmine-bb477a3a0fe71f0e15b78b6e0fafb017065fba26.zip
Make sure users don't get notified for thing they can not view (#3589).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3169 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/models/wiki_content.rb')
-rw-r--r--app/models/wiki_content.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/app/models/wiki_content.rb b/app/models/wiki_content.rb
index 372ca8365..f81aa9e78 100644
--- a/app/models/wiki_content.rb
+++ b/app/models/wiki_content.rb
@@ -25,11 +25,22 @@ class WikiContent < ActiveRecord::Base
validates_length_of :comments, :maximum => 255, :allow_nil => true
acts_as_versioned
+
+ def visible?(user=User.current)
+ page.visible?(user)
+ end
def project
page.project
end
+ # Returns the mail adresses of users that should be notified
+ def recipients
+ notified = project.notified_users
+ notified.reject! {|user| !visible?(user)}
+ notified.collect(&:mail)
+ end
+
class Version
belongs_to :page, :class_name => '::WikiPage', :foreign_key => 'page_id'
belongs_to :author, :class_name => '::User', :foreign_key => 'author_id'