aboutsummaryrefslogtreecommitdiffstats
path: root/app/models/compliance_control.rb
diff options
context:
space:
mode:
authorcedricnjanga2017-09-27 12:31:02 +0200
committercedricnjanga2017-09-27 16:21:18 +0200
commiteb761e221efc3ce0b09bfea96415907afac33d4a (patch)
tree781b7aa2b0d252979f986ecb1497f51278b7acd5 /app/models/compliance_control.rb
parentea0cf8c5e11ddbd61eed8cd825ac923ad947cdf4 (diff)
downloadchouette-core-eb761e221efc3ce0b09bfea96415907afac33d4a.tar.bz2
Refs #4615 Refacto compliance control models and add origin_code to ComplianceControl model
Diffstat (limited to 'app/models/compliance_control.rb')
-rw-r--r--app/models/compliance_control.rb14
1 files changed, 13 insertions, 1 deletions
diff --git a/app/models/compliance_control.rb b/app/models/compliance_control.rb
index 763a42029..9c3083695 100644
--- a/app/models/compliance_control.rb
+++ b/app/models/compliance_control.rb
@@ -4,11 +4,15 @@ class ComplianceControl < ActiveRecord::Base
has_one :compliance_control_block, dependent: :destroy
accepts_nested_attributes_for :compliance_control_block
+ @@default_criticity = :warning
+ @@default_code = ""
+
enumerize :criticity, in: %i(info warning error), scope: true, default: :info
validates :criticity, presence: true
validates :name, presence: true
validates :code, presence: true
+ validates :origin_code, presence: true
validates :compliance_control_set, presence: true
def self.policy_class
@@ -23,8 +27,16 @@ class ComplianceControl < ActiveRecord::Base
end
super
end
+
+ before_validation(on: :create) do
+ self.name = self.class.name
+ self.code = @@default_code
+ self.origin_code = @@default_code
+ self.criticity = @@default_criticity
+ end
+
end
# Ensure STI subclasses are loaded
# http://guides.rubyonrails.org/autoloading_and_reloading_constants.html#autoloading-and-sti
-require_dependency 'generic_attribute_min_max'
+require_dependency 'generic_attribute_control/min_max'