You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
15 lines
361 B
15 lines
361 B
# frozen_string_literal: true
|
|
|
|
module DatetimeClampingConcern
|
|
extend ActiveSupport::Concern
|
|
|
|
MIN_ISO8601_DATETIME = '0000-01-01T00:00:00Z'.to_datetime.freeze
|
|
MAX_ISO8601_DATETIME = '9999-12-31T23:59:59Z'.to_datetime.freeze
|
|
|
|
class_methods do
|
|
def clamp_date(datetime)
|
|
datetime.clamp(MIN_ISO8601_DATETIME, MAX_ISO8601_DATETIME)
|
|
end
|
|
end
|
|
end
|