move safe_mode from Thread.current to RequestStore
This commit is contained in:
@@ -79,7 +79,7 @@ class CurrentUser
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.safe_mode?
|
def self.safe_mode?
|
||||||
Thread.current[:safe_mode]
|
RequestStore[:safe_mode]
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.admin_mode?
|
def self.admin_mode?
|
||||||
@@ -87,17 +87,17 @@ class CurrentUser
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.without_safe_mode
|
def self.without_safe_mode
|
||||||
prev = Thread.current[:safe_mode]
|
prev = RequestStore[:safe_mode]
|
||||||
Thread.current[:safe_mode] = false
|
RequestStore[:safe_mode] = false
|
||||||
Thread.current[:admin_mode] = true
|
Thread.current[:admin_mode] = true
|
||||||
yield
|
yield
|
||||||
ensure
|
ensure
|
||||||
Thread.current[:safe_mode] = prev
|
RequestStore[:safe_mode] = prev
|
||||||
Thread.current[:admin_mode] = false
|
Thread.current[:admin_mode] = false
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.set_safe_mode(req)
|
def self.set_safe_mode(req)
|
||||||
Thread.current[:safe_mode] = Danbooru.config.enable_safe_mode?(req, CurrentUser.user)
|
RequestStore[:safe_mode] = Danbooru.config.enable_safe_mode?(req, CurrentUser.user)
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.method_missing(method, *params, &block)
|
def self.method_missing(method, *params, &block)
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ class CurrentUserTest < ActiveSupport::TestCase
|
|||||||
end
|
end
|
||||||
|
|
||||||
teardown do
|
teardown do
|
||||||
Thread.current[:safe_mode] = false
|
RequestStore[:safe_mode] = false
|
||||||
end
|
end
|
||||||
|
|
||||||
context ".safe_mode?" do
|
context ".safe_mode?" do
|
||||||
|
|||||||
Reference in New Issue
Block a user