I think this is more correct, admins/mods should always be able to invite

This commit is contained in:
Sam 2013-06-21 16:35:13 +10:00
parent 8b51b8c778
commit e53aa45f54
2 changed files with 13 additions and 6 deletions

View file

@ -176,11 +176,13 @@ class Guardian
is_me?(user)
end
# For now, can_invite_to is basically can_see?
def can_invite_to?(object)
authenticated? && can_see?(object) &&
not(SiteSetting.must_approve_users?) &&
(@user.has_trust_level?(:regular) || is_staff?)
authenticated? &&
can_see?(object) &&
(
(!SiteSetting.must_approve_users? && @user.has_trust_level?(:regular)) ||
is_staff?
)
end
def can_see_deleted_posts?

View file

@ -190,9 +190,14 @@ describe Guardian do
Guardian.new(user).can_invite_to?(topic).should be_false
end
it 'returns false when the site requires approving users' do
it 'returns true when the site requires approving users and is mod' do
SiteSetting.expects(:must_approve_users?).returns(true)
Guardian.new(moderator).can_invite_to?(topic).should be_false
Guardian.new(moderator).can_invite_to?(topic).should be_true
end
it 'returns true when the site requires approving users and is regular' do
SiteSetting.expects(:must_approve_users?).returns(true)
Guardian.new(coding_horror).can_invite_to?(topic).should be_false
end
end