Sha256: 2c102a5dbf2380b7f465cce9ceb476cd50d940ef8ccd651f8e2e7fd1a3fd1f1b

Contents?: true

Size: 428 Bytes

Versions: 16

Compression:

Stored size: 428 Bytes

Contents

require "datagrid/filters/ranged_filter"

class Datagrid::Filters::IntegerFilter < Datagrid::Filters::BaseFilter

  include Datagrid::Filters::RangedFilter

  def parse(value)
    return nil if value.blank?
    if defined?(ActiveRecord) && value.is_a?(ActiveRecord::Base) &&
        value.respond_to?(:id) && value.id.is_a?(Integer)
      return value.id
    end
    return value if value.is_a?(Range)
    value.to_i
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
datagrid-1.8.2 lib/datagrid/filters/integer_filter.rb
datagrid-1.8.1 lib/datagrid/filters/integer_filter.rb
datagrid-1.8.0 lib/datagrid/filters/integer_filter.rb
datagrid-1.7.0 lib/datagrid/filters/integer_filter.rb
datagrid-1.6.3 lib/datagrid/filters/integer_filter.rb
datagrid-1.6.2 lib/datagrid/filters/integer_filter.rb
datagrid-1.6.1 lib/datagrid/filters/integer_filter.rb
datagrid-1.6.0 lib/datagrid/filters/integer_filter.rb
datagrid-1.5.9 lib/datagrid/filters/integer_filter.rb
datagrid-1.5.8 lib/datagrid/filters/integer_filter.rb
datagrid-1.5.7 lib/datagrid/filters/integer_filter.rb
datagrid-1.5.6 lib/datagrid/filters/integer_filter.rb
datagrid-1.5.5 lib/datagrid/filters/integer_filter.rb
datagrid-1.5.4 lib/datagrid/filters/integer_filter.rb
datagrid-1.5.3 lib/datagrid/filters/integer_filter.rb
datagrid-1.5.2 lib/datagrid/filters/integer_filter.rb