Sha256: 334e10876f668b67f66027247d67bbf153bac273b9bd6f9e48d3bcb536fecba0
Contents?: true
Size: 720 Bytes
Versions: 4
Compression:
Stored size: 720 Bytes
Contents
module ReportsKit module Reports module FilterTypes class Datetime < Base DEFAULT_CRITERIA = { operator: 'between' } def apply_conditions(records) case criteria[:operator] when 'between' start_string, end_string = value.split(' - ') start_at = Date.parse(start_string) end_at = Date.parse(end_string) records.where("#{column} IS NOT NULL").where("#{column} BETWEEN ? AND ?", start_at, end_at) else raise ArgumentError.new("Unsupported operator: '#{criteria[:operator]}'") end end def valid? value.present? end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems