Module: ValidatesTimeliness::Extensions::DateTimeSelect
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/validates_timeliness/extensions/date_time_select.rb
Defined Under Namespace
Classes: TimelinessDateTime
Instance Method Summary
collapse
Instance Method Details
#datetime_selector_with_timeliness(*args) ⇒ Object
36
37
38
39
|
# File 'lib/validates_timeliness/extensions/date_time_select.rb', line 36
def datetime_selector_with_timeliness(*args)
@timeliness_date_or_time_tag = true
datetime_selector_without_timeliness(*args)
end
|
#value_with_timeliness(object) ⇒ Object
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
# File 'lib/validates_timeliness/extensions/date_time_select.rb', line 41
def value_with_timeliness(object)
unless @timeliness_date_or_time_tag && @template_object.params[@object_name]
return value_without_timeliness(object)
end
@template_object.params[@object_name]
pairs = @template_object.params[@object_name].select {|k,v| k =~ /^#{@method_name}\(/ }
return value_without_timeliness(object) if pairs.empty?
values = [nil] * 6
pairs.map do |(param, value)|
position = param.scan(/\((\d+)\w+\)/).first.first
values[position.to_i-1] = value.to_i
end
TimelinessDateTime.new(*values)
end
|