discourse/lib/staff_constraint.rb

23 lines
502 B
Ruby
Raw Normal View History

# frozen_string_literal: true
require_dependency 'current_user'
class StaffConstraint
def matches?(request)
provider = Discourse.current_user_provider.new(request.env)
2018-03-28 14:48:14 -04:00
provider.current_user &&
provider.current_user.staff? &&
custom_staff_check(request)
rescue Discourse::InvalidAccess, Discourse::ReadOnly
false
end
2018-03-28 14:48:14 -04:00
# Extensibility point: plugins can overwrite this to add additional checks
# if they require.
def custom_staff_check(request)
true
end
end