aboutsummaryrefslogtreecommitdiffstats
path: root/app/controllers/compliance_controls_controller.rb
diff options
context:
space:
mode:
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