Sha256: 109dc755029951427ec6da3e392edfdfa626e6200ba55eb9931a13dcb1ef1e0e

Contents?: true

Size: 1.19 KB

Versions: 12

Compression:

Stored size: 1.19 KB

Contents

class EventFilter < WillFilter::Filter

  def model_class
    Event
  end

  def definition
    defs = super  
    defs[:"user.first_name"] = {:is => :text, :is_not => :text, :contains => :text}
    defs[:"user.last_name"] = {:is => :text, :is_not => :text, :contains => :text}
    defs[:"user.sex"] = {:is => :list, :is_not => :list}
    defs
  end

  def value_options_for(criteria_key)
    if criteria_key == :"user.sex"
      return ["male", "female"]
    end

    return []
  end

  def default_filters
    [
      ["Created Today", "created_today"],
      ["Start Tomorrow", "start_tomorrow"],
      ["Created By Users With Name 'Susan'", "created_by_susans"],
      ["Created By Male Users And Start Tomorrow", "male_creators_start_tomorrow"]
    ]
  end

  def default_filter_conditions(key)
    return [:created_at, :is_on, Date.today] if (key == "created_today")
    return [:start_time, :is_on, Date.today + 1.day] if (key == "start_tomorrow")
    return [:"user.first_name", :is, "Susan"] if (key == "created_by_susans")
    if (key == "male_creators_start_tomorrow")
      return [[:"user.sex", :is, "male"], [:start_time, :is_on, Date.today + 1.day]]
    end
  end

  def inner_joins
    [:user]
  end

end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
will_filter-5.1.4 test/dummy/app/models/event_filter.rb
will_filter-5.1.3 test/dummy/app/models/event_filter.rb
will_filter-5.1.2 test/dummy/app/models/event_filter.rb
will_filter-5.1.1 test/dummy/app/models/event_filter.rb
will_filter-5.1.0 test/dummy/app/models/event_filter.rb
will_filter-3.1.11 test/dummy/app/models/event_filter.rb
will_filter-3.1.10 test/dummy/app/models/event_filter.rb
will_filter-3.1.9 test/dummy/app/models/event_filter.rb
will_filter-3.1.8 test/dummy/app/models/event_filter.rb
will_filter-3.1.7 test/dummy/app/models/event_filter.rb
will_filter-3.1.6 test/dummy/app/models/event_filter.rb
will_filter-3.1.5 test/dummy/app/models/event_filter.rb