Files

Class/Module Index [+]

Quicksearch

ActiveScaffold::Actions::Search

Public Class Methods

included(base) click to toggle source
# File lib/active_scaffold/actions/search.rb, line 4
def self.included(base)
  base.before_filter :search_authorized_filter, :only => :show_search
  base.before_filter :store_search_params_into_session, :only => [:index]
  base.before_filter :do_search, :only => [:index]
  base.helper_method :search_params
end

Public Instance Methods

show_search() click to toggle source
# File lib/active_scaffold/actions/search.rb, line 11
def show_search
  respond_to_action(:search)
end

Protected Instance Methods

do_search() click to toggle source
# File lib/active_scaffold/actions/search.rb, line 22
def do_search
  query = search_params.to_s.strip rescue ''
  unless query.empty?
    columns = active_scaffold_config.search.columns
    text_search = active_scaffold_config.search.text_search
    query = query.split(active_scaffold_config.search.split_terms) if active_scaffold_config.search.split_terms
    search_conditions = self.class.create_conditions_for_columns(query, columns, text_search)
    @filtered = !search_conditions.blank?
    self.active_scaffold_conditions.concat search_conditions if @filtered

    outer_joins = columns.collect{ |column| column.search_joins unless column.includes.present? && list_columns.include?(column)}
    self.active_scaffold_outer_joins.concat outer_joins.flatten.uniq.compact

    active_scaffold_config.list.user.page = nil
  end
end
search_respond_to_html() click to toggle source
# File lib/active_scaffold/actions/search.rb, line 16
def search_respond_to_html
  render(:action => "search")
end
search_respond_to_js() click to toggle source
# File lib/active_scaffold/actions/search.rb, line 19
def search_respond_to_js
  render(:partial => "search")
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.