Sha256: b1f38d3c66ce1b12b72cbe1cf34d49f81b5ca82b94551c44aa7c8635b0302dc7
Contents?: true
Size: 807 Bytes
Versions: 1
Compression:
Stored size: 807 Bytes
Contents
require "datagrid/filters/ranged_filter" class Datagrid::Filters::DateFilter < Datagrid::Filters::BaseFilter include Datagrid::Filters::RangedFilter def apply(grid_object, scope, value) if value.is_a?(Range) value = value.first.beginning_of_day..value.last.end_of_day end super(grid_object, scope, value) end def parse(value) Datagrid::Utils.parse_date(value) end def format(value) if formats.any? && value value.strftime(formats.first) else super end end def default_filter_where(driver, scope, value) if driver.is_timestamp?(scope, name) value = Datagrid::Utils.format_date_as_timestamp(value) end super(driver, scope, value) end protected def formats Array(Datagrid.configuration.date_formats) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
datagrid-1.3.9 | lib/datagrid/filters/date_filter.rb |