mirror of
https://github.com/discourse/discourse.git
synced 2026-09-05 04:40:41 -05:00
FEATURE: allow moderators to see offical warnings
This commit is contained in:
+5
-1
@@ -254,9 +254,13 @@ class Topic < ActiveRecord::Base
|
||||
.exists?
|
||||
end
|
||||
|
||||
def is_official_warning?
|
||||
subtype == TopicSubtype.moderator_warning
|
||||
end
|
||||
|
||||
# all users (in groups or directly targetted) that are going to get the pm
|
||||
def all_allowed_users
|
||||
moderators_sql = " UNION #{User.moderators.to_sql}" if private_message? && has_flags?
|
||||
moderators_sql = " UNION #{User.moderators.to_sql}" if private_message? && (has_flags? || is_official_warning?)
|
||||
User.from("(#{allowed_users.to_sql} UNION #{allowed_group_users.to_sql}#{moderators_sql}) as users")
|
||||
end
|
||||
|
||||
|
||||
@@ -1367,6 +1367,12 @@ describe Topic do
|
||||
expect(topic.all_allowed_users).to include moderator
|
||||
end
|
||||
|
||||
it 'includes moderators if offical warning' do
|
||||
topic.stubs(:subtype).returns(TopicSubtype.moderator_warning)
|
||||
topic.stubs(:private_message?).returns(true)
|
||||
expect(topic.all_allowed_users).to include moderator
|
||||
end
|
||||
|
||||
it 'does not include moderators if pm without flags' do
|
||||
topic.stubs(:private_message?).returns(true)
|
||||
expect(topic.all_allowed_users).not_to include moderator
|
||||
|
||||
Reference in New Issue
Block a user