class RangeComponentAttributes::DateConverter

Public Instance Methods

call(value) click to toggle source
# File lib/range_component_attributes/type_conversion.rb, line 50
def call(value)
  return @blank_value if value.blank?
  return value if value == Float::INFINITY
  return value if value.kind_of? Date
  value = value.to_s
  if value =~ /\A(\d\d\d\d)-(\d\d)-(\d\d)\z/
    ::Date.civil($1.to_i, $2.to_i, $3.to_i)
  else
    ::Date.strptime(value, "%m/%d/%Y")
  end
rescue StandardError => e
  raise TypeConversionError.new(e, "date")
end