From cc112e64c18e10aa195c959ebfdcdbc376b33e75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Pi=C4=8Dman?= Date: Mon, 16 May 2022 12:18:09 +0200 Subject: [PATCH] Zeitwerk's autoload --- lib/redmine_dmsf.rb | 111 +++++++++++++++++++++++--------------------- 1 file changed, 58 insertions(+), 53 deletions(-) diff --git a/lib/redmine_dmsf.rb b/lib/redmine_dmsf.rb index 5425eef5..58f8abc8 100644 --- a/lib/redmine_dmsf.rb +++ b/lib/redmine_dmsf.rb @@ -25,63 +25,68 @@ DMSF_MAX_NOTIFICATION_RECEIVERS_INFO = 10 # DMSF libraries -# Validators -require File.dirname(__FILE__) + '/../app/validators/dmsf_file_name_validator' -require File.dirname(__FILE__) + '/../app/validators/dmsf_max_file_size_validator' -require File.dirname(__FILE__) + '/../app/validators/dmsf_workflow_name_validator' -require File.dirname(__FILE__) + '/../app/validators/dmsf_url_validator' -require File.dirname(__FILE__) + '/../app/validators/dmsf_folder_parent_validator' +# All files in lib sub-folder are already loaded by Zeitwerk +if RedmineApp::Application.config.autoloader != :zeitwerk -# Plugin's patches -require File.dirname(__FILE__) + '/redmine_dmsf/patches/projects_helper_patch' -require File.dirname(__FILE__) + '/redmine_dmsf/patches/project_patch' -require File.dirname(__FILE__) + '/redmine_dmsf/patches/user_preference_patch' -require File.dirname(__FILE__) + '/redmine_dmsf/patches/user_patch' -require File.dirname(__FILE__) + '/redmine_dmsf/patches/issue_patch' -require File.dirname(__FILE__) + '/redmine_dmsf/patches/role_patch' -require File.dirname(__FILE__) + '/redmine_dmsf/patches/queries_controller_patch' + # Validators + require File.dirname(__FILE__) + '/../app/validators/dmsf_file_name_validator' + require File.dirname(__FILE__) + '/../app/validators/dmsf_max_file_size_validator' + require File.dirname(__FILE__) + '/../app/validators/dmsf_workflow_name_validator' + require File.dirname(__FILE__) + '/../app/validators/dmsf_url_validator' + require File.dirname(__FILE__) + '/../app/validators/dmsf_folder_parent_validator' -# redmine_resources depends on redmine_contact and redmine_contacts is alphabetically sorted before redmine_dmsf -# in the plugin list. -if Redmine::Plugin.installed?(:redmine_contacts) && !Redmine::Plugin.installed?(:easy_extensions) - require File.dirname(__FILE__) + '/redmine_dmsf/patches/notifiable_ru_patch' -else - require File.dirname(__FILE__) + '/redmine_dmsf/patches/notifiable_patch' -end + # Plugin's patches + require File.dirname(__FILE__) + '/redmine_dmsf/patches/projects_helper_patch' + require File.dirname(__FILE__) + '/redmine_dmsf/patches/project_patch' + require File.dirname(__FILE__) + '/redmine_dmsf/patches/user_preference_patch' + require File.dirname(__FILE__) + '/redmine_dmsf/patches/user_patch' + require File.dirname(__FILE__) + '/redmine_dmsf/patches/issue_patch' + require File.dirname(__FILE__) + '/redmine_dmsf/patches/role_patch' + require File.dirname(__FILE__) + '/redmine_dmsf/patches/queries_controller_patch' -if defined?(EasyExtensions) - require File.dirname(__FILE__) + '/redmine_dmsf/patches/easy_crm_case_patch' - require File.dirname(__FILE__) + '/redmine_dmsf/patches/attachable_patch' - require File.dirname(__FILE__) + '/redmine_dmsf/patches/easy_crm_cases_controller_patch.rb' -end + # redmine_resources depends on redmine_contact and redmine_contacts is alphabetically sorted before redmine_dmsf + # in the plugin list. + if Redmine::Plugin.installed?(:redmine_contacts) && !Redmine::Plugin.installed?(:easy_extensions) + require File.dirname(__FILE__) + '/redmine_dmsf/patches/notifiable_ru_patch' + else + require File.dirname(__FILE__) + '/redmine_dmsf/patches/notifiable_patch' + end -# Load up classes that make up our WebDAV solution ontop of Dav4rack -require File.dirname(__FILE__) + '/dav4rack' -require File.dirname(__FILE__) + '/redmine_dmsf/webdav/custom_middleware' -require File.dirname(__FILE__) + '/redmine_dmsf/webdav/base_resource' -require File.dirname(__FILE__) + '/redmine_dmsf/webdav/dmsf_resource' -require File.dirname(__FILE__) + '/redmine_dmsf/webdav/index_resource' -require File.dirname(__FILE__) + '/redmine_dmsf/webdav/project_resource' -require File.dirname(__FILE__) + '/redmine_dmsf/webdav/resource_proxy' + if defined?(EasyExtensions) + require File.dirname(__FILE__) + '/redmine_dmsf/patches/easy_crm_case_patch' + require File.dirname(__FILE__) + '/redmine_dmsf/patches/attachable_patch' + require File.dirname(__FILE__) + '/redmine_dmsf/patches/easy_crm_cases_controller_patch.rb' + end -# Errors -require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_access_error' -require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_email_max_file_size_error' -require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_file_not_found_error' -require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_lock_error' -require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_zip_max_files_error' + # Load up classes that make up our WebDAV solution ontop of Dav4rack + require File.dirname(__FILE__) + '/dav4rack' + require File.dirname(__FILE__) + '/redmine_dmsf/webdav/custom_middleware' + require File.dirname(__FILE__) + '/redmine_dmsf/webdav/base_resource' + require File.dirname(__FILE__) + '/redmine_dmsf/webdav/dmsf_resource' + require File.dirname(__FILE__) + '/redmine_dmsf/webdav/index_resource' + require File.dirname(__FILE__) + '/redmine_dmsf/webdav/project_resource' + require File.dirname(__FILE__) + '/redmine_dmsf/webdav/resource_proxy' -# Hooks -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/controllers/search_controller_hooks' -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/controllers/issues_controller_hooks' -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/view_projects_form_hook' -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/base_view_hooks' -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/issue_view_hooks' -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/custom_field_view_hooks' -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/search_view_hooks' -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/helpers/issues_helper_hooks' -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/helpers/search_helper_hooks' -require File.dirname(__FILE__) + '/redmine_dmsf/hooks/helpers/project_helper_hooks' + # Errors + require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_access_error' + require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_email_max_file_size_error' + require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_file_not_found_error' + require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_lock_error' + require File.dirname(__FILE__) + '/redmine_dmsf/errors/dmsf_zip_max_files_error' -# Macros -require File.dirname(__FILE__) + '/redmine_dmsf/macros' \ No newline at end of file + # Hooks + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/controllers/search_controller_hooks' + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/controllers/issues_controller_hooks' + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/view_projects_form_hook' + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/base_view_hooks' + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/issue_view_hooks' + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/custom_field_view_hooks' + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/views/search_view_hooks' + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/helpers/issues_helper_hooks' + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/helpers/search_helper_hooks' + require File.dirname(__FILE__) + '/redmine_dmsf/hooks/helpers/project_helper_hooks' + + # Macros + require File.dirname(__FILE__) + '/redmine_dmsf/macros' + +end \ No newline at end of file