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.



731
732
# File 'lib/formkeeper.rb', line 731

def initialize
end

Class Method Details

.register_combination_constraint(name, constraint) ⇒ Object



702
703
704
# File 'lib/formkeeper.rb', line 702

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

.register_constraint(name, constraint) ⇒ Object



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

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

.register_filter(name, filter) ⇒ Object



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

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

Instance Method Details

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



734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
# File 'lib/formkeeper.rb', line 734

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