25 lines
611 B
Ruby
25 lines
611 B
Ruby
module ActiveModel::Dates
|
|
|
|
def parse_date(field, attrs)
|
|
day, month, year = attrs["#{field}(1i)"],
|
|
attrs["#{field}(2i)"],
|
|
attrs["#{field}(3i)"]
|
|
|
|
return nil unless day.present? && month.present? && year.present?
|
|
Date.new(day.to_i, month.to_i, year.to_i)
|
|
end
|
|
|
|
def remove_date(field, attrs)
|
|
attrs.except("#{field}(1i)", "#{field}(2i)", "#{field}(3i)")
|
|
end
|
|
|
|
def date_to_string(date)
|
|
date.strftime("%d-%m-%Y")
|
|
end
|
|
|
|
def string_to_date(value)
|
|
day, month, year = value.split("-")
|
|
Date.new(year.to_i, month.to_i, day.to_i)
|
|
end
|
|
|
|
end |