diff --git a/app/models/toggl_service.rb b/app/models/toggl_service.rb index 9234374c..9f7e9829 100644 --- a/app/models/toggl_service.rb +++ b/app/models/toggl_service.rb @@ -33,17 +33,17 @@ def load_time_entries( raise ArgumentError, 'Workspace ID must be a valid integer' end - raw_entries = get('/api/v8/time_entries', { start_date: start_date.iso8601, end_date: end_date.iso8601 }) + raw_entries = get('/api/v9/me/time_entries', { start_date: start_date.iso8601, end_date: end_date.iso8601 }) # The workspace filter is only supported on certain versions of the # Toggl API. Thus, it is easier to filter out such records ourselves. - raw_entries = raw_entries.keep_if { |r| workspace_id == r['wid'] } if workspace_id + raw_entries = raw_entries.keep_if { |r| workspace_id == r['wid'] } if workspace_id > 0 raw_entries.map { |e| TogglTimeEntry.new(e.symbolize_keys) } end # Loads workspaces from Toggl. def load_workspaces - get('/api/v8/workspaces') + get('/api/v9/workspaces') .map { |w| TogglWorkspace.new(w.symbolize_keys) } end diff --git a/init.rb b/init.rb index ee30c316..2d922315 100644 --- a/init.rb +++ b/init.rb @@ -2,23 +2,25 @@ Rails.configuration.to_prepare do require_relative 'lib/toggl_2_redmine' +end - Redmine::Plugin.register :toggl2redmine do - # Package info. - name 'Toggl 2 Redmine' - author 'Jigarius' - description 'Imports time entries from Toggl into Redmine.' - version Toggl2Redmine::VERSION - url 'https://github.com/jigarius/toggl2redmine' - author_url 'https://jigarius.com/' +Redmine::Plugin.register :toggl2redmine do + # Package info. + name 'Toggl 2 Redmine' + author 'Jigarius' + description 'Imports time entries from Toggl into Redmine.' + version Toggl2Redmine::VERSION + url 'https://github.com/jigarius/toggl2redmine' + author_url 'https://jigarius.com/' - # Menu items. - menu :application_menu, - :toggl2redmine, - { controller: 't2r_import', action: 'index' }, - caption: 'Toggl' - end + # Menu items. + menu :application_menu, + :toggl2redmine, + { controller: 't2r_import', action: 'index' }, + caption: 'Toggl' +end +Rails.configuration.to_prepare do # Patches. require_relative 'lib/patches/time_entry' end diff --git a/lib/patches/time_entry.rb b/lib/patches/time_entry.rb deleted file mode 100644 index f8ee2082..00000000 --- a/lib/patches/time_entry.rb +++ /dev/null @@ -1,14 +0,0 @@ -# frozen_string_literal: true - -module Toggl2Redmine - # Patch Redmine's TimeEntry model. - module TimeEntryPatch - def self.included(base) - base.class_eval do - has_many :toggl_mappings, dependent: :destroy - end - end - end -end - -TimeEntry.include Toggl2Redmine::TimeEntryPatch diff --git a/lib/toggl_2_redmine/patches/time_entry_patch.rb b/lib/toggl_2_redmine/patches/time_entry_patch.rb new file mode 100644 index 00000000..14c00c0a --- /dev/null +++ b/lib/toggl_2_redmine/patches/time_entry_patch.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module Toggl2Redmine + module Patches + # Patch Redmine's TimeEntry model. + module TimeEntryPatch + def self.included(base) + base.class_eval do + has_many :toggl_mappings, dependent: :destroy + end + end + end + end +end + +TimeEntry.include Toggl2Redmine::Patches::TimeEntryPatch