Class: Blacklight::BookmarksSearchBuilder

Inherits:
SearchBuilder show all
Defined in:
app/services/blacklight/bookmarks_search_builder.rb

Overview

Extends the search Builders to add bookmarks

Instance Attribute Summary

Attributes inherited from SearchBuilder

#blacklight_params, #processor_chain, #search_state

Instance Method Summary collapse

Methods included from Solr::SearchBuilderBehavior

#add_additional_filters, #add_adv_search_clauses, #add_facet_fq_to_solr, #add_facet_paging_to_solr, #add_facetting_to_solr, #add_group_config_to_solr, #add_paging_to_solr, #add_query_to_solr, #add_search_field_default_parameters, #add_search_field_with_json_query_parameters, #add_solr_facet_json_params, #add_solr_fields_to_query, #add_sorting_to_solr, #adv_search_clause, #default_solr_parameters, #facet_limit_for, #facet_limit_with_pagination, #solr_param_quote, #with_ex_local_param

Methods inherited from SearchBuilder

#append, #except, #facet, #facet=, #initialize, #merge, #page, #page=, #processed_parameters, #reverse_merge, #rows, #rows=, #sort, #start, #start=, #to_hash, #where, #with

Constructor Details

This class inherits a constructor from Blacklight::SearchBuilder

Instance Method Details

#bookmarked(solr_parameters) ⇒ void

This method returns an undefined value.

Filters the query to only include the bookmarked items

Parameters:

  • solr_parameters (Hash)


12
13
14
15
16
17
18
19
# File 'app/services/blacklight/bookmarks_search_builder.rb', line 12

def bookmarked(solr_parameters)
  solr_parameters[:fq] ||= []
  bookmarks = @scope.context.fetch(:bookmarks)
  return unless bookmarks

  document_ids = bookmarks.collect { |b| b.document_id.to_s }
  solr_parameters[:fq] += ["{!terms f=id}#{document_ids.join(',')}"]
end