From 755839dad7f6c9447285c478299e0247afded34b Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Wed, 15 Jun 2016 18:18:24 +0000 Subject: [PATCH] Clearing time entry custom fields while bulk editing results in values set to __none__ (#23054). MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Patch by Felix Schäfer. git-svn-id: http://svn.redmine.org/redmine/trunk@15532 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/controllers/timelog_controller.rb | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/controllers/timelog_controller.rb b/app/controllers/timelog_controller.rb index 597160191..59efb9d78 100644 --- a/app/controllers/timelog_controller.rb +++ b/app/controllers/timelog_controller.rb @@ -275,7 +275,16 @@ private def parse_params_for_bulk_time_entry_attributes(params) attributes = (params[:time_entry] || {}).reject {|k,v| v.blank?} attributes.keys.each {|k| attributes[k] = '' if attributes[k] == 'none'} - attributes[:custom_field_values].reject! {|k,v| v.blank?} if attributes[:custom_field_values] + if custom = attributes[:custom_field_values] + custom.reject! {|k,v| v.blank?} + custom.keys.each do |k| + if custom[k].is_a?(Array) + custom[k] << '' if custom[k].delete('__none__') + else + custom[k] = '' if custom[k] == '__none__' + end + end + end attributes end end -- 2.39.5