Module: RocketCMS::Controllers::Search

Extended by:
ActiveSupport::Concern
Included in:
SearchController
Defined in:
lib/rocket_cms/controllers/search.rb

Instance Method Summary collapse

Instance Method Details

#indexObject

def index

if params[:query].blank?
  @results = []
else
  @results = Mongoid::Elasticsearch.search({
    body: {
      query: {
        query_string: {
          query: Mongoid::Elasticsearch::Utils.clean(params[:query])
        }
      },
      highlight: {
        fields: {
          name: {},
          content: {}
        }
      }
    }},
    page: params[:page],
    per_page: RocketCMS.configuration.search_per_page,
  )
end

end



29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/rocket_cms/controllers/search.rb', line 29

def index
  if params[:q].blank?
    @results = []
  else
    query = params[:q].to_s.gsub(/\P{Word}+/, ' ').gsub(/ +/, ' ').strip
    @results = Page.search(query,
                           per_page: 10,
                           highlight: true,
                           suggest: true,
                           page: params[:page],
                           per_page: RocketCMS.configuration.search_per_page
    )
  end
end