Method: Attrio::Types::Boolean.typecast

Defined in:
lib/attrio/types/boolean.rb

.typecast(value, options = {}) ⇒ Object



6
7
8
9
10
11
12
13
14
15
# File 'lib/attrio/types/boolean.rb', line 6

def self.typecast(value, options = {})
  true_values = options[:true] || options[:true_values] || ['yes', '1', 1, 'true']
  false_values = options[:false] || options[:false_values]

  if false_values.present?
    return Helpers.to_a(false_values).flatten.include?(value) ? false : true
  else
    return Helpers.to_a(true_values).flatten.include?(value) ? true : false
  end
end