From 369f8ed379ffd8c60b10f93e8ba3ca017a7ecdd0 Mon Sep 17 00:00:00 2001 From: theirix Date: Mon, 4 Dec 2023 08:57:25 +0000 Subject: [PATCH] Support Redmine 5 --- init.rb | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/init.rb b/init.rb index fc6ac2d..de5fa45 100644 --- a/init.rb +++ b/init.rb @@ -8,16 +8,7 @@ # FCSV = CSV #end -if Rails::VERSION::MAJOR < 3 - require 'dispatcher' - object_to_prepare = Dispatcher -else - object_to_prepare = Rails.configuration - # if redmine plugins were railties: - # object_to_prepare = config -end - -object_to_prepare.to_prepare do +if Rails::VERSION::MAJOR >= 6 require_dependency 'project' require_dependency 'principal' require_dependency 'user' @@ -30,6 +21,30 @@ rescue LoadError # TimeEntryActivity is not available end +else + if Rails::VERSION::MAJOR < 3 + require 'dispatcher' + object_to_prepare = Dispatcher + else + object_to_prepare = Rails.configuration + # if redmine plugins were railties: + # object_to_prepare = config + end + + object_to_prepare.to_prepare do + require_dependency 'project' + require_dependency 'principal' + require_dependency 'user' + Project.send(:include, RedmineTimesheetPlugin::Patches::ProjectPatch) + User.send(:include, RedmineTimesheetPlugin::Patches::UserPatch) + + # Needed for the compatibility check + begin + require_dependency 'time_entry_activity' + rescue LoadError + # TimeEntryActivity is not available + end + end end unless Redmine::Plugin.registered_plugins.keys.include?(:redmine_timesheet_plugin)