aboutsummaryrefslogtreecommitdiffstats
path: root/app/controllers/compliance_controls_controller.rb
diff options
context:
space:
mode:
authorXinhui2017-09-27 11:59:44 +0200
committerXinhui2017-09-27 15:39:16 +0200
commitc3f80c537e28dfe316ee0dcbee2bde2b5307fd79 (patch)
tree8dc067d2b7cd378d03be8f9d19f46fff542ec8d6 /app/controllers/compliance_controls_controller.rb
parentb64a51db2cff7aed22ef9eabb8210905cbe9d626 (diff)
downloadchouette-core-c3f80c537e28dfe316ee0dcbee2bde2b5307fd79.tar.bz2
Support of dynamic_attributes in form
Refs #4467
Diffstat (limited to 'app/controllers/compliance_controls_controller.rb')
-rw-r--r--app/controllers/compliance_controls_controller.rb10
1 files changed, 8 insertions, 2 deletions
diff --git a/app/controllers/compliance_controls_controller.rb b/app/controllers/compliance_controls_controller.rb
index 20f4b15af..71d702945 100644
--- a/app/controllers/compliance_controls_controller.rb
+++ b/app/controllers/compliance_controls_controller.rb
@@ -5,7 +5,7 @@ class ComplianceControlsController < BreadcrumbController
def new
@compliance_control_set = parent
- @compliance_control = ComplianceControl.new
+ @compliance_control = GenericAttributeMinMax.new
@compliance_control.build_compliance_control_block
end
@@ -15,7 +15,13 @@ class ComplianceControlsController < BreadcrumbController
end
private
+ def dynamic_attributes_params
+ params.require(:compliance_control).permit(:type).values[0].constantize.dynamic_attributes
+ end
+
def compliance_control_params
- params.require(:compliance_control).permit(:name, :code, :criticity, :comment, :control_attributes, :type, compliance_control_block_attributes: [:name, :transport_mode])
+ base = [:name, :code, :criticity, :comment, :control_attributes, :type, compliance_control_block_attributes: [:name, :transport_mode]]
+ permited = base + dynamic_attributes_params
+ params.require(:compliance_control).permit(permited)
end
end