Class: BootstrapValidatorRails::Validators::Validator

Inherits:
Object
  • Object
show all
Defined in:
lib/bootstrap_validator_rails/validators/validator.rb

Direct Known Subclasses

Format, Length, Numericality, Presence

Instance Method Summary collapse

Constructor Details

#initialize(record, method, validator) ⇒ Validator

Returns a new instance of Validator.



4
5
6
7
8
9
# File 'lib/bootstrap_validator_rails/validators/validator.rb', line 4

def initialize(record, method, validator)
  @record, @method, @validator = record, method, validator
  @js_options = {}
  @html_attributes = {}
  generate_options!
end

Instance Method Details

#generate_messageObject



43
44
45
# File 'lib/bootstrap_validator_rails/validators/validator.rb', line 43

def generate_message
  validator_options[:message] || i18n_message
end

#generate_object(options = {}) ⇒ Object



16
17
18
# File 'lib/bootstrap_validator_rails/validators/validator.rb', line 16

def generate_object(options = {})
  options
end

#generate_options!Object



47
48
49
# File 'lib/bootstrap_validator_rails/validators/validator.rb', line 47

def generate_options!
  {}
end

#html_attributesObject



35
36
37
# File 'lib/bootstrap_validator_rails/validators/validator.rb', line 35

def html_attributes
  @html_attributes
end

#js_optionsObject



39
40
41
# File 'lib/bootstrap_validator_rails/validators/validator.rb', line 39

def js_options
  {method_key => {'validators' => @js_options}}
end

#unsupported?Boolean

Returns:

  • (Boolean)


20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/bootstrap_validator_rails/validators/validator.rb', line 20

def unsupported?
  options = validator_options

  on_options_map = {
    :create => :new_record?,
    :update => :persisted?
  }

  if on_options_map.has_key?(options[:on])
    return true unless @record.send(on_options_map[options[:on]])
  end

  unsupported_options.any? { |opt| options.has_key? opt }
end

#validator_optionsObject



11
12
13
14
# File 'lib/bootstrap_validator_rails/validators/validator.rb', line 11

def validator_options
  options = @validator.try(:options) 
  options || {}
end