diff --git a/init.rb b/init.rb index 699be07..b66911a 100644 --- a/init.rb +++ b/init.rb @@ -2,11 +2,12 @@ require 'redmine' # Patches to the Redmine core require 'dispatcher' -require 'rate_sort_helper_patch' -require 'rate_time_entry_patch' -require 'rate_users_helper_patch' Dispatcher.to_prepare do + require_dependency 'users_helper' + require 'rate_sort_helper_patch' + require 'rate_time_entry_patch' + require 'rate_users_helper_patch' SortHelper.send(:include, RateSortHelperPatch) TimeEntry.send(:include, RateTimeEntryPatch) UsersHelper.send(:include, RateUsersHelperPatch) diff --git a/lib/rate_users_helper_patch.rb b/lib/rate_users_helper_patch.rb index b6da8c8..125c029 100644 --- a/lib/rate_users_helper_patch.rb +++ b/lib/rate_users_helper_patch.rb @@ -1,9 +1,7 @@ -require 'users_helper' - module RateUsersHelperPatch def self.included(base) # :nodoc: base.send(:include, InstanceMethods) - + base.extend InstanceMethods base.class_eval do alias_method_chain :user_settings_tabs, :rate_tab end @@ -12,7 +10,10 @@ module RateUsersHelperPatch module InstanceMethods # Adds a rates tab to the user administration page def user_settings_tabs_with_rate_tab - tabs = user_settings_tabs_without_rate_tab + # Core defined data + tabs = [{:name => 'general', :partial => 'users/general', :label => :label_general}, + {:name => 'memberships', :partial => 'users/memberships', :label => :label_project_plural} + ] tabs << { :name => 'rates', :partial => 'users/rates', :label => :rate_label_rate_history} return tabs end