Class: ApplicationController

Inherits:
ActionController::Base
  • Object
show all
Includes:
ConfigurableEngine::ConfigurablesController
Defined in:
app/controllers/application_controller.rb

Instance Method Summary collapse

Instance Method Details

#check_maintenance_modeObject



38
39
40
41
# File 'app/controllers/application_controller.rb', line 38

def check_maintenance_mode
  # caching maintenance state
  Rails.cache.fetch("maintenance_mode", expires_in: 1.minute){ Configurable[:maintenance_mode] }
end

#redirect_if_maintenance_modeObject



23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'app/controllers/application_controller.rb', line 23

def redirect_if_maintenance_mode
  if check_maintenance_mode &&
      controller_name != 'devise/sessions' &&
      controller_name != 'static_page' &&
      !current_user.nil?
    unless current_user.has_role?(:admin)  ||
        current_user.has_role?(:support) ||
        Configurable[:allowed_uuid_in_maintenance_mode].split.include?(current_user.uuid)
      cookies.delete(:secureusertokens)
      reset_session
      redirect_to root_path
    end
  end
end