From a6fef310ec739f81bdade7a340d597b5ebd06812 Mon Sep 17 00:00:00 2001 From: "Wong, Tim" Date: Fri, 24 Jun 2022 14:49:35 -0400 Subject: [PATCH] fix add new control --- app/controllers/rules_controller.rb | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/app/controllers/rules_controller.rb b/app/controllers/rules_controller.rb index 36bf88bf..4c7eea6a 100644 --- a/app/controllers/rules_controller.rb +++ b/app/controllers/rules_controller.rb @@ -107,11 +107,18 @@ def create_or_duplicate rule.rule_id = nil rule elsif authorize_admin_project.nil? - Rule.new(rule_create_params.except(:duplicate).merge({ - component: @component, - status: 'Not Yet Determined', - rule_severity: 'unknown' - })) + srg = SecurityRequirementsGuide.find_by(id: @component.security_requirements_guide_id) + srg_rule = srg.parsed_benchmark.rule.find { |r| r.ident.reject(&:legacy).first.ident == 'CCI-000366' } + + rule = BaseRule.from_mapping(Rule, srg_rule) + rule.audits.build(Audited.audit_class.create_initial_rule_audit_from_mapping(@component.id)) + rule.component = @component + rule.srg_rule = srg.srg_rules.find_by(ident: 'CCI-000366') + rule.rule_id = (@component.rules.order(:rule_id).pluck(:rule_id).last.to_i + 1)&.to_s&.rjust(6, '0') + rule.status = 'Not Yet Determined' + rule.rule_severity = 'unknown' + + rule end end