Class: WillFilter::Containers::SingleDate
Instance Attribute Summary
#condition, #filter, #index, #operator, #values
Class Method Summary
collapse
Instance Method Summary
collapse
#date, #initialize, #is_floating_point?, #is_numeric?, #options, #reset_values, #sanitized_value, #serialize_to_params, #time, #value
Class Method Details
.operators ⇒ Object
36
37
38
|
# File 'lib/will_filter/containers/single_date.rb', line 36
def self.operators
[:is_on, :is_not_on]
end
|
Instance Method Details
#end_date_time ⇒ Object
55
56
57
58
59
|
# File 'lib/will_filter/containers/single_date.rb', line 55
def end_date_time
(start_date_time + 1.day)
rescue ArgumentError
nil
end
|
#sql_condition ⇒ Object
61
62
63
64
|
# File 'lib/will_filter/containers/single_date.rb', line 61
def sql_condition
return [" #{condition.full_key} >= ? and #{condition.full_key} < ? ", time, time + 1.day] if operator == :is_on
return [" #{condition.full_key} < ? and #{condition.full_key} >= ? ", time, time + 1.day] if operator == :is_not_on
end
|
#start_date_time ⇒ Object
49
50
51
52
53
|
# File 'lib/will_filter/containers/single_date.rb', line 49
def start_date_time
@start_date_time ||= Time.parse(value)
rescue ArgumentError
nil
end
|
#template_name ⇒ Object
40
41
42
|
# File 'lib/will_filter/containers/single_date.rb', line 40
def template_name
'date'
end
|
#validate ⇒ Object
44
45
46
47
|
# File 'lib/will_filter/containers/single_date.rb', line 44
def validate
return "Value must be provided" if value.blank?
return "Value must be a valid date (2008-01-01)" if start_date_time == nil
end
|