Class: Datagrid::Filters::DateTimeFilter

Inherits:
BaseFilter
  • Object
show all
Includes:
RangedFilter
Defined in:
lib/datagrid/filters/date_time_filter.rb

Constant Summary

Constants included from RangedFilter

RangedFilter::SERIALIZED_RANGE

Instance Attribute Summary

Attributes inherited from BaseFilter

#block, #grid_class, #name, #options

Instance Method Summary collapse

Methods included from RangedFilter

#default_filter_where, #parse_values, #range?

Methods inherited from BaseFilter

#allow_blank?, #allow_nil?, #apply, #default, #default_scope?, #dummy?, #enabled?, #enum_checkboxes?, #form_builder_helper_name, form_builder_helper_name, #header, #initialize, #input_options, #label_options, #multiple?, #parse_values, #range?, #separator, #supports_range?, #type, #unapplicable_value?

Constructor Details

This class inherits a constructor from Datagrid::Filters::BaseFilter

Instance Method Details

#default_input_optionsObject



10
11
12
# File 'lib/datagrid/filters/date_time_filter.rb', line 10

def default_input_options
  { **super, type: "datetime-local" }
end

#format(value) ⇒ Object



18
19
20
21
22
23
24
# File 'lib/datagrid/filters/date_time_filter.rb', line 18

def format(value)
  if formats.any? && value
    value.strftime(formats.first)
  else
    super
  end
end

#parse(value) ⇒ Object



14
15
16
# File 'lib/datagrid/filters/date_time_filter.rb', line 14

def parse(value)
  Datagrid::Utils.parse_datetime(value)
end