diff --git a/lib/validates_timeliness.rb b/lib/validates_timeliness.rb index cdea2fc..471db46 100644 --- a/lib/validates_timeliness.rb +++ b/lib/validates_timeliness.rb @@ -21,6 +21,11 @@ module ValidatesTimeliness class << self + def enable_datetime_select_extension! + enable_datetime_select_invalid_value_extension! + enable_multiparameter_attributes_extension! + end + def load_error_messages if defined?(I18n) I18n.load_path += [ LOCALE_PATH ] diff --git a/lib/validates_timeliness/action_view/instance_tag.rb b/lib/validates_timeliness/action_view/instance_tag.rb index 4d7965d..98529f8 100644 --- a/lib/validates_timeliness/action_view/instance_tag.rb +++ b/lib/validates_timeliness/action_view/instance_tag.rb @@ -1,6 +1,6 @@ module ValidatesTimeliness - def self.enable_datetime_select_extension! + def self.enable_datetime_select_invalid_value_extension! ::ActionView::Helpers::InstanceTag.send(:include, ValidatesTimeliness::ActionView::InstanceTag) end diff --git a/lib/validates_timeliness/active_record/multiparameter_attributes.rb b/lib/validates_timeliness/active_record/multiparameter_attributes.rb index c8b3be3..68de263 100644 --- a/lib/validates_timeliness/active_record/multiparameter_attributes.rb +++ b/lib/validates_timeliness/active_record/multiparameter_attributes.rb @@ -1,6 +1,10 @@ module ValidatesTimeliness - module ActiveRecord + def self.enable_multiparameter_attributes_extension! + ::ActiveRecord::Base.send(:include, ValidatesTimeliness::ActiveRecord::MultiparameterAttributes) + end + + module ActiveRecord module MultiparameterAttributes def self.included(base) @@ -38,13 +42,13 @@ module ValidatesTimeliness values = values.map(&:to_s) case type - when :date - extract_date_from_multiparameter_attributes(values) - when :time - extract_time_from_multiparameter_attributes(values) - when :datetime - date_values, time_values = values.slice!(0, 3), values - extract_date_from_multiparameter_attributes(date_values) + " " + extract_time_from_multiparameter_attributes(time_values) + when :date + extract_date_from_multiparameter_attributes(values) + when :time + extract_time_from_multiparameter_attributes(values) + when :datetime + date_values, time_values = values.slice!(0, 3), values + extract_date_from_multiparameter_attributes(date_values) + " " + extract_time_from_multiparameter_attributes(time_values) end end @@ -60,5 +64,3 @@ module ValidatesTimeliness end end - -ActiveRecord::Base.send(:include, ValidatesTimeliness::ActiveRecord::MultiparameterAttributes)