diff --git a/app/logical/current_user.rb b/app/logical/current_user.rb index 6bad60bf4..c68630175 100644 --- a/app/logical/current_user.rb +++ b/app/logical/current_user.rb @@ -46,12 +46,18 @@ class CurrentUser Thread.current[:safe_mode] end + def self.admin_mode? + Thread.current[:admin_mode] + end + def self.without_safe_mode prev = Thread.current[:safe_mode] Thread.current[:safe_mode] = false + Thread.current[:admin_mode] = true yield ensure Thread.current[:safe_mode] = prev + Thread.current[:admin_mode] = false end def self.set_safe_mode(req) diff --git a/app/logical/post_query_builder.rb b/app/logical/post_query_builder.rb index 61d52724d..9fdeb3bd2 100644 --- a/app/logical/post_query_builder.rb +++ b/app/logical/post_query_builder.rb @@ -155,7 +155,7 @@ class PostQueryBuilder relation = relation.where("posts.is_flagged = FALSE") elsif q[:status_neg] == "deleted" relation = relation.where("posts.is_deleted = FALSE") - elsif CurrentUser.user.hide_deleted_posts? + elsif CurrentUser.user.hide_deleted_posts? && !CurrentUser.admin_mode? relation = relation.where("posts.is_deleted = FALSE") end