Compare commits

...

2 Commits

Author SHA1 Message Date
f0c0a42c96 2026.2.4 2026-02-09 20:04:47 -05:00
a4b51457bb moved controller_issues_new_before_save nito issues_hook_listener 2026-02-09 20:04:16 -05:00
3 changed files with 17 additions and 31 deletions

View File

@@ -14,7 +14,7 @@ Redmine::Plugin.register :redmine_qbo do
name 'Redmine QBO plugin' name 'Redmine QBO plugin'
author 'Rick Barrette' author 'Rick Barrette'
description 'A pluging for Redmine to connect with QuickBooks Online to create Time Activity Entries for billable hours logged when an Issue is closed' description 'A pluging for Redmine to connect with QuickBooks Online to create Time Activity Entries for billable hours logged when an Issue is closed'
version '2026.2.3' version '2026.2.4'
url 'https://github.com/rickbarrette/redmine_qbo' url 'https://github.com/rickbarrette/redmine_qbo'
author_url 'https://barrettefabrication.com' author_url 'https://barrettefabrication.com'
settings default: {empty: true}, partial: 'qbo/settings' settings default: {empty: true}, partial: 'qbo/settings'

View File

@@ -20,9 +20,16 @@ module RedmineQbo
def controller_issues_new_before_save(context={}) def controller_issues_new_before_save(context={})
if context[:issue].project.nil? if context[:issue].project.nil?
context[:issue].project = projects_for_select(context[:issue]).first context[:issue].project = projects_for_select(context[:issue]).first
Rails.logger.error I18n.t(:notice_error_project_nil) + context[:issue].project.to_s
context[:controller].flash[:error] = I18n.t(:notice_error_project_nil) + context[:issue].project.to_s context[:controller].flash[:error] = I18n.t(:notice_error_project_nil) + context[:issue].project.to_s
end end
if context[:issue].tracker.nil?
context[:issue].tracker = trackers_for_select(context[:issue]).first
Rails.logger.error I18n.t(:notice_error_tracker_nil) + context[:issue].tracker.to_s
context[:controller].flash[:error] = I18n.t(:notice_error_tracker_nil) + context[:issue].tracker.to_s
end
return context return context
end end

View File

@@ -14,27 +14,6 @@ module RedmineQbo
module IssuesControllerPatch module IssuesControllerPatch
module Helper module Helper
# Check the new issue form for a valid project.
# This is added to help prevent 422 unprocessable entity errors when creating an issue
# See https://github.com/redmine/redmine/blob/84483d63828d0cb2efbf5bd786a2f0d22e34c93d/app/controllers/issues_controller.rb#L179
def controller_issues_new_before_save(context={})
if context[:issue].project.nil?
context[:issue].project = projects_for_select(context[:issue]).first
Rails.logger.error I18n.t(:notice_error_project_nil) + context[:issue].project.to_s
context[:controller].flash[:error] = I18n.t(:notice_error_project_nil) + context[:issue].project.to_s
end
if context[:issue].tracker.nil?
context[:issue].tracker = trackers_for_select(context[:issue]).first
context[:issue].tracker = Tracker.first if context[:issue].tracker.nil?
Rails.logger.error I18n.t(:notice_error_tracker_nil) + context[:issue].tracker.to_s
context[:controller].flash[:error] = I18n.t(:notice_error_tracker_nil) + context[:issue].tracker.to_s
end
return context
end
def watcher_link(issue, user) def watcher_link(issue, user)
link = '' link = ''
link = link_to(I18n.t(:label_bill_time), bill_path( issue.id ), method: :get, class: 'icon icon-email-add') if user.admin? link = link_to(I18n.t(:label_bill_time), bill_path( issue.id ), method: :get, class: 'icon icon-email-add') if user.admin?