module Searching

Constants

VALID_PARAMS

Public Class Methods

default_filter() click to toggle source
# File lib/mumuki/classroom/models/searching.rb, line 30
def self.default_filter
  StudentFilter
end
filter_class_for(criteria, collection) click to toggle source
# File lib/mumuki/classroom/models/searching.rb, line 43
def self.filter_class_for(criteria, collection)
  if criteria.present?
    "#{self}::#{collection.model_name}::#{criteria.camelize}".safe_constantize
  end
end
filter_for(collection, query_params) click to toggle source
# File lib/mumuki/classroom/models/searching.rb, line 34
def self.filter_for(collection, query_params)
  filter_class = filter_class_for(query_params[:query_criteria], collection) || default_filter
  filter_class.new(valid_params(query_params))
end
valid_params(params) click to toggle source
# File lib/mumuki/classroom/models/searching.rb, line 39
def self.valid_params(params)
  params.select { |it| VALID_PARAMS.include? it }
end