diff --git a/config/initializers/module_handler.rb b/config/initializers/module_handler.rb index 6960d30c645..95e688feb5a 100644 --- a/config/initializers/module_handler.rb +++ b/config/initializers/module_handler.rb @@ -26,9 +26,10 @@ # See COPYRIGHT and LICENSE files for more details. #++ -Rails.application.config.after_initialize do +Rails.application.config.to_prepare do if OpenProject::Configuration.disabled_modules.any? to_disable = OpenProject::Configuration.disabled_modules OpenProject::Plugins::ModuleHandler.disable_modules(to_disable) + OpenProject::Plugins::ModuleHandler.enforce! end end diff --git a/lib/open_project/plugins/module_handler.rb b/lib/open_project/plugins/module_handler.rb index 342cb2cd51c..7b90fcea47f 100644 --- a/lib/open_project/plugins/module_handler.rb +++ b/lib/open_project/plugins/module_handler.rb @@ -35,15 +35,11 @@ module OpenProject::Plugins @@disabled_modules += Array(module_names).map(&:to_sym) end - def disable(disabled_modules) - disabled_modules.map do |module_name| + def enforce! + @@disabled_modules.map do |module_name| OpenProject::AccessControl.remove_modules_permissions(module_name) end end end - - OpenProject::Application.config.to_prepare do - OpenProject::Plugins::ModuleHandler.disable(@@disabled_modules) - end end end