Module: CommonwealthVlrEngine::CommonwealthSearchBuilderBehavior

Instance Method Summary collapse

Instance Method Details

#collections_filter(solr_parameters = {}) ⇒ Object

used by CollectionsController#index



51
52
53
54
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 51

def collections_filter(solr_parameters = {})
  solr_parameters[:fq] ||= []
  solr_parameters[:fq] << "+active_fedora_model_suffix_ssi:\"Collection\""
end

#exclude_institutions(solr_parameters = {}) ⇒ Object

keep Institution objects out of the search results



22
23
24
25
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 22

def exclude_institutions(solr_parameters = {})
  solr_parameters[:fq] ||= []
  solr_parameters[:fq] << '-active_fedora_model_suffix_ssi:"Institution"'
end

#exclude_unpublished_items(solr_parameters = {}) ⇒ Object

keep draft/review and in-process items from appearing in search results



11
12
13
14
15
16
17
18
19
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 11

def exclude_unpublished_items(solr_parameters = {})
  solr_parameters[:fq] ||= []
  solr_parameters[:fq] << '-workflow_state_ssi:"draft"'
  solr_parameters[:fq] << '-workflow_state_ssi:"needs_review"'
  solr_parameters[:fq] << '-processing_state_ssi:"derivatives"'
  # can't implement below until all records have this field
  # solr_parameters[:fq] << '+workflow_state_ssi:"published"'
  # solr_parameters[:fq] << '+processing_state_ssi:"complete"'
end

#exclude_unwanted_models(solr_parameters = {}) ⇒ Object

keep file assets from appearing in search results



5
6
7
8
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 5

def exclude_unwanted_models(solr_parameters = {})
  solr_parameters[:fq] ||= []
  solr_parameters[:fq] << '-has_model_ssim:"info:fedora/afmodel:Bplmodels_File"'
end

#exclude_volumes(solr_parameters = {}) ⇒ Object

keep Volume objects out of the search results



57
58
59
60
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 57

def exclude_volumes(solr_parameters = {})
  solr_parameters[:fq] ||= []
  solr_parameters[:fq] << '-active_fedora_model_suffix_ssi:"Volume"'
end

#flagged_filter(solr_parameters = {}) ⇒ Object

don’t return flagged items (for series images on collections#show)



28
29
30
31
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 28

def flagged_filter(solr_parameters = {})
  solr_parameters[:fq] ||= []
  solr_parameters[:fq] << "-#{blacklight_config.flagged_field}:[* TO *]"
end

#institution_limit(solr_parameters = {}) ⇒ Object

limit results to a single institution



34
35
36
37
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 34

def institution_limit(solr_parameters = {})
  solr_parameters[:fq] ||= []
  solr_parameters[:fq] << '+institution_pid_ssi:"' + CommonwealthVlrEngine.config[:institution][:pid] + '"'
end

#institutions_filter(solr_parameters = {}) ⇒ Object

used by InstitutionsController#index



40
41
42
43
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 40

def institutions_filter(solr_parameters = {})
  solr_parameters[:fq] ||= []
  solr_parameters[:fq] << "+active_fedora_model_suffix_ssi:\"Institution\""
end

#ocr_search_params(solr_parameters = {}) ⇒ Object

set params for ocr field searching



63
64
65
66
67
68
69
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 63

def ocr_search_params(solr_parameters = {})
  solr_parameters[:facet] = false
  solr_parameters[:hl] = true
  solr_parameters[:'hl.fl'] = blacklight_config.ocr_search_field
  solr_parameters[:'hl.fragsize'] = 135
  solr_parameters[:'hl.snippets'] = 10
end

#set_solr_id_for_mlt(solr_parameters = {}) ⇒ Object

for ‘more like this’ search – set solr id param to params



46
47
48
# File 'lib/commonwealth-vlr-engine/search_builder/commonwealth_search_builder_behavior.rb', line 46

def set_solr_id_for_mlt(solr_parameters = {})
  solr_parameters[:id] = blacklight_params[:mlt_id]
end