module ActiveScaffold::Actions::CommonSearch::InstanceMethods

Public Instance Methods

Protected Instance Methods

permitted_search_params() click to toggle source
# File lib/active_scaffold/actions/common_search.rb, line 30
def permitted_search_params
  params_hash params[:search]
end
search_authorized?() click to toggle source

The default security delegates to ActiveRecordPermissions. You may override the method to customize.

# File lib/active_scaffold/actions/common_search.rb, line 69
def search_authorized?
  authorized_for?(:crud_type => :read)
end
search_authorized_filter() click to toggle source
# File lib/active_scaffold/actions/common_search.rb, line 73
def search_authorized_filter
  action = active_scaffold_config.send(search_partial)
  link = action.link || action.class.link
  raise ActiveScaffold::ActionNotAllowed unless send(link.security_method)
end
search_params() click to toggle source
# File lib/active_scaffold/actions/common_search.rb, line 63
def search_params
  @search_params || active_scaffold_session_storage['search'] unless params[:id]
end
search_partial() click to toggle source
# File lib/active_scaffold/actions/common_search.rb, line 21
def search_partial
  @_search_partial ||=
    if params[:kind].present? && active_scaffold_config.actions.include?(params[:kind])
      params.delete(:kind)
    else
      active_scaffold_config.list.auto_search_partial
    end
end
store_search_params_into_session() click to toggle source
# File lib/active_scaffold/actions/common_search.rb, line 50
def store_search_params_into_session
  if active_scaffold_config.store_user_settings
    if params[:search].present?
      active_scaffold_session_storage['search'] = permitted_search_params
    elsif params.key? :search
      active_scaffold_session_storage.delete 'search'
    end
  else
    @search_params = permitted_search_params
  end
  params.delete :search
end