diff --git a/app/controllers/concerns/koi/controller/has_admin_users.rb b/app/controllers/concerns/koi/controller/has_admin_users.rb index de1dd4b8..0a296c56 100644 --- a/app/controllers/concerns/koi/controller/has_admin_users.rb +++ b/app/controllers/concerns/koi/controller/has_admin_users.rb @@ -8,15 +8,24 @@ module HasAdminUsers included do helper_method :admin_signed_in? helper_method :current_admin_user + + # @deprecated use current admin user instead helper_method :current_admin end def admin_signed_in? current_admin_user.present? + rescue ActiveRecord::RecordNotFound + false end def current_admin_user - @current_admin_user ||= Admin::User.find(session[:admin_user_id]) if session[:admin_user_id].present? + return @current_admin_user if instance_variable_defined?(:@current_admin_user) + return @current_admin_user = nil unless session.has_key?(:admin_user_id) + + @current_admin_user = Admin::User.find(session[:admin_user_id]) + ensure + session.delete(:admin_user_id) unless @current_admin_user end # @deprecated Use current_admin_user instead