Class: FormKeeper::Validator

Inherits:
Object
  • Object
show all
Defined in:
lib/formkeeper.rb

Constant Summary collapse

@@filter_store =
{}
@@constraint_store =
{}
@@combination_constraint_store =
{}

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeValidator

Returns a new instance of Validator.



726
727
# File 'lib/formkeeper.rb', line 726

def initialize
end

Class Method Details

.register_combination_constraint(name, constraint) ⇒ Object



697
698
699
# File 'lib/formkeeper.rb', line 697

def self.register_combination_constraint(name, constraint)
  @@combination_constraint_store[name] = constraint
end

.register_constraint(name, constraint) ⇒ Object



693
694
695
# File 'lib/formkeeper.rb', line 693

def self.register_constraint(name, constraint)
  @@constraint_store[name] = constraint
end

.register_filter(name, filter) ⇒ Object



689
690
691
# File 'lib/formkeeper.rb', line 689

def self.register_filter(name, filter)
  @@filter_store[name] = filter
end

Instance Method Details

#validate(params, rule, messages = nil) ⇒ Object



729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
# File 'lib/formkeeper.rb', line 729

def validate(params, rule, messages=nil)
  report = Report.new(messages)
  rule.fields.each do |name, criteria|
    criteria.filters.concat(rule.default_filters)
    report << validate_field(name, criteria, params, rule.encoding_filter)
  end
  rule.checkboxes.each do |name, criteria|
    criteria.filters.concat(rule.default_filters)
    report << validate_checkbox(name, criteria, params, rule.encoding_filter)
  end
  rule.combinations.each do |name, criteria|
    criteria.filters.concat(rule.default_filters)
    report << validate_combination(name, criteria, params, rule.encoding_filter)
  end
  return report
end