FIX: Don't fail topic auto-close if privledges are lost

This commit is contained in:
riking 2015-03-27 15:31:04 -07:00
parent 44740a379f
commit 03b971c3e3
2 changed files with 5 additions and 0 deletions

View File

@ -4,6 +4,10 @@ module Jobs
def execute(args)
if topic = Topic.find_by(id: args[:topic_id])
closer = User.find_by(id: args[:user_id])
guardian = Guardian.new(closer)
unless guardian.can_close?(topic)
closer = Discourse.system_user
end
topic.auto_close(closer)
end
end

View File

@ -114,6 +114,7 @@ class Guardian
alias :can_move_posts? :can_moderate?
alias :can_see_flags? :can_moderate?
alias :can_send_activation_email? :can_moderate?
alias :can_close? :can_moderate?
def can_grant_badges?(_user)
SiteSetting.enable_badges && is_staff?