Sha256: a1430d16e3d9ae5566b2a2cfa7a1ad73459228fe1a7e9bf3f4104099cd400d12

Contents?: true

Size: 480 Bytes

Versions: 5

Compression:

Stored size: 480 Bytes

Contents

class Datagrid::Filters::BooleanEnumFilter < Datagrid::Filters::EnumFilter

  YES = "YES"
  NO = "NO"
  VALUES = {YES => true, NO => false}

  def initialize(report, attribute, options = {}, &block)
    options[:allow_blank] = true unless options.has_key?(:allow_blank)
    options[:select] = VALUES.keys
    super(report, attribute, options, &block)
  end

  def apply(scope, value)
    super(scope, to_boolean(value))
  end

  def to_boolean(value)
    VALUES[value]
  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
datagrid-0.2.0 lib/datagrid/filters/boolean_enum_filter.rb
datagrid-0.1.2 lib/datagrid/filters/boolean_enum_filter.rb
datagrid-0.1.1 lib/datagrid/filters/boolean_enum_filter.rb
datagrid-0.1.0 lib/datagrid/filters/boolean_enum_filter.rb
datagrid-0.0.3 lib/datagrid/filters/boolean_enum_filter.rb