Class: Decidim::SearchesController

Inherits:
ApplicationController
  • Object
show all
Includes:
ControllerHelpers, FilterResource, FormFactory, HasSpecificBreadcrumb, Paginable
Defined in:
app/controllers/decidim/searches_controller.rb

Constant Summary

Constants included from Paginable

Paginable::OPTIONS

Instance Method Summary collapse

Methods included from ControllerHelpers

#expose, included, #present, #presenter

Instance Method Details

#indexObject



14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'app/controllers/decidim/searches_controller.rb', line 14

def index
  Search.call(term, current_organization, filters, page_params) do
    on(:ok) do |results|
      results_count = results.sum { |results_by_type| results_by_type.last[:count] }
      blocks = Decidim::Searchable.searchable_resources_by_type.map do |type|
        results.select do |t, _results|
          type.include?(t)
        end
      end
      expose(sections: results, blocks:, results_count:)
    end
  end
end