From 2d309fb9caf07ca012ad42eb3a826e2ab83044a4 Mon Sep 17 00:00:00 2001 From: David Gageot Date: Mon, 29 Oct 2012 15:29:30 +0100 Subject: [PATCH] SONAR-3883 Reuse auto-generated keys in property sets --- .../WEB-INF/app/controllers/settings_controller.rb | 10 +++++++++- .../WEB-INF/app/views/settings/_set_instance.html.erb | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/sonar-server/src/main/webapp/WEB-INF/app/controllers/settings_controller.rb b/sonar-server/src/main/webapp/WEB-INF/app/controllers/settings_controller.rb index 3fe5563c5c1..6a342960453 100644 --- a/sonar-server/src/main/webapp/WEB-INF/app/controllers/settings_controller.rb +++ b/sonar-server/src/main/webapp/WEB-INF/app/controllers/settings_controller.rb @@ -61,7 +61,15 @@ class SettingsController < ApplicationController end def update_property_set(key, set_keys, fields_hash, resource_id, auto_generate) - set_keys = Array.new(set_keys.size) { |i| i.to_s } if auto_generate + if auto_generate + max = set_keys.max_by(&:to_i).to_i + set_keys.each_with_index do |v, index| + if v.blank? + max += 1; + set_keys[index] = max.to_s + end + end + end set_key_values = {} fields_hash.each do |field_key, field_values| diff --git a/sonar-server/src/main/webapp/WEB-INF/app/views/settings/_set_instance.html.erb b/sonar-server/src/main/webapp/WEB-INF/app/views/settings/_set_instance.html.erb index b19f0caa7de..57d5a57d7c7 100644 --- a/sonar-server/src/main/webapp/WEB-INF/app/views/settings/_set_instance.html.erb +++ b/sonar-server/src/main/webapp/WEB-INF/app/views/settings/_set_instance.html.erb @@ -3,7 +3,7 @@ <% unless key_field -%> - <%= hidden_field_tag "property_sets[#{property.key}][]", 'auto-generated' -%> + <%= hidden_field_tag "property_sets[#{property.key}][]", set_key -%> <% end -%> <% property.fields.each do |field| -%> -- 2.39.5