]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-3529 Fix handling of key property
authorDavid Gageot <david@gageot.net>
Mon, 15 Oct 2012 15:58:23 +0000 (17:58 +0200)
committerDavid Gageot <david@gageot.net>
Mon, 15 Oct 2012 15:58:23 +0000 (17:58 +0200)
sonar-server/src/main/webapp/WEB-INF/app/controllers/settings_controller.rb
sonar-server/src/main/webapp/WEB-INF/app/views/settings/_set_instance.html.erb
sonar-server/src/main/webapp/WEB-INF/app/views/settings/_type_PROPERTY_SET_DEFINITION.html.erb

index ca3384ae025cde9c521d3226f79dc383518cd0c5..3fe5563c5c1e163f8468382255a65759396731b0 100644 (file)
@@ -56,7 +56,7 @@ class SettingsController < ApplicationController
 
   def update_property_sets(resource_id)
     (params[:property_sets] || []).each do |key, set_keys|
-      update_property_set(key, set_keys, params[key], resource_id, params[:auto_generate][key])
+      update_property_set(key, set_keys, params[key], resource_id, params[:auto_generate] && params[:auto_generate][key])
     end
   end
 
index b11447eae4f8d574d08dbde174b958844573906e..ca5333575715819fe650caee1e85713ed0b729eb 100644 (file)
@@ -2,20 +2,22 @@
 <% key_field = key_field(property) -%>
 
 <tr class="top multi_value <%= 'template' unless set_key -%> odd" style="<%= 'display:none' unless set_key -%>">
-  <% if key_field -%>
-    <td><%= render "settings/type_#{key_field.type}", :property => key_field, :field => key_field, :value => set_key, :name => "property_sets[#{property.key}][]", :id => "input_#{h key_field.key}", :size => key_field.indicativeSize -%></td>
-  <% else -%>
+  <% unless key_field -%>
     <%= hidden_field_tag "property_sets[#{property.key}][]", 'auto-generated' -%>
   <% end -%>
 
-  <% property.fields.reject { |field| field.key == 'key' }.each do |field| -%>
+  <% property.fields.each do |field| -%>
     <% if set_key -%>
       <% key = "#{property.key}.#{set_key}.#{field.key}" -%>
       <% value = Property.value(key, resource_id) -%>
       <% errors << (render "settings/error", :key => key) -%>
     <% end -%>
 
-    <td><%= render "settings/type_#{field.type}", :property => field, :field => field, :value => value, :name => "#{property.key}[#{field.key}][]", :id => "input_#{h field.key}", :size => field.indicativeSize -%></td>
+    <% if field == key_field -%>
+      <td><%= render "settings/type_#{field.type}", :property => field, :field => field, :value => value, :name => "#{property.key}[#{field.key}][]", :id => "input_#{h field.key}", :size => field.indicativeSize -%></td>
+    <% else -%>
+      <td><%= render "settings/type_#{field.type}", :property => field, :field => field, :value => value, :name => "property_sets[#{property.key}][]", :id => "input_#{h field.key}", :size => field.indicativeSize -%></td>
+    <% end -%>
   <% end -%>
 
   <td style="width: 60px;">
index 62b01211f999cc79d63b93d02894a7d70a1c02d3..beec593636c0a08601253dd8e30d5118a68c98c2 100644 (file)
@@ -3,12 +3,10 @@
 <table class="data">
   <thead>
   <tr>
-    <% if key_field(property) -%>
-      <th><%= message('key') -%></th>
-    <% else %>
+    <% unless key_field(property) -%>
       <%= hidden_field_tag "auto_generate[#{property.key}]", true -%>
     <% end -%>
-    <% property.fields.reject { |field| field.key == 'key' }.each do |field| -%>
+    <% property.fields.each do |field| -%>
       <th>
         <%= field_name(property, field) -%>
         <% desc = field_description(property, field) -%>