Module: TurboFilter::TurboFilterController
- Defined in:
- lib/turbo_filter/turbo_filter_controller.rb
Instance Method Summary collapse
- #build_turbo_filter_query_from_params ⇒ Object
-
#retrieve_turbo_filter_query(filters_for_class) ⇒ Object
Retrieve query from session or build a new query.
- #retrieve_turbo_filter_query_from_session ⇒ Object
Instance Method Details
#build_turbo_filter_query_from_params ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/turbo_filter/turbo_filter_controller.rb', line 24 def build_turbo_filter_query_from_params if params[:f] filters = if session[:query] session[:query][:filters] = session[:query][:filters].select { |k,v| params[:f].reject(&:blank?).include?(k) } else {} end @turbo_filter_query.filters = filters @turbo_filter_query.add_filters(params[:f], params[:operators] || params[:op], params[:values] || params[:v]) end end |
#retrieve_turbo_filter_query(filters_for_class) ⇒ Object
Retrieve query from session or build a new query
5 6 7 8 9 10 11 12 13 14 15 16 |
# File 'lib/turbo_filter/turbo_filter_controller.rb', line 5 def retrieve_turbo_filter_query(filters_for_class) if params[:set_filter] || session[:query].nil? # Give it a name, required to be valid @turbo_filter_query = TurboFilter::TurboFilterQuery.new(filters_for_class) build_turbo_filter_query_from_params session[:query] = {:filters => @turbo_filter_query.filters} else # retrieve from session @turbo_filter_query ||= TurboFilter::TurboFilterQuery.new(filters_for_class, session[:query][:filters]) build_turbo_filter_query_from_params end end |
#retrieve_turbo_filter_query_from_session ⇒ Object
18 19 20 21 22 |
# File 'lib/turbo_filter/turbo_filter_controller.rb', line 18 def retrieve_turbo_filter_query_from_session if session[:query] @turbo_filter_query = TurboFilter::TurboFilterQuery.new(filters_for_class, session[:query][:filters]) end end |