12: Group sequential papers in search results

#12: Group sequential papers in search results - use consistent layout
This commit is contained in:
Joerg Reichert 2016-12-23 00:17:18 +01:00
parent 7f1aead3a8
commit 52f93fcb42
4 changed files with 27 additions and 12 deletions

View file

@ -24,6 +24,24 @@ class SearchController < ApplicationController
def execute_search
@response = Paper.search(@search_definition.to_definition)
@papers = @response.page(params[:page]).results
@sub = Hash.new
@papers.each do |paper|
@sub_search_definition = Elasticsearch::DSL::Search.search do
query do
query_string do
query "*" + (paper.reference.start_with?("VI-") ? paper.reference.split("-")[2] : paper.reference.split("-")[1]) + "*"
fields ["reference"]
end
end
sort do
by :published_at, order: 'asc'
by :reference, order: 'asc'
end
end
@sub_papers = Paper.search(@sub_search_definition)
@sub[paper.reference] = @sub_papers
end
@paper_type_facets = extract_facets('paper_types')
@originator_facets = extract_facets('originators')
end