Class: CurationConcerns::CollectionSearchBuilder

Inherits:
SearchBuilder
  • Object
show all
Includes:
FilterByType
Defined in:
app/search_builders/curation_concerns/collection_search_builder.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from FilterByType

#filter_models

Instance Attribute Details

#discovery_perms=(value) ⇒ Object (writeonly)

Sets the attribute discovery_perms



25
26
27
# File 'app/search_builders/curation_concerns/collection_search_builder.rb', line 25

def discovery_perms=(value)
  @discovery_perms = value
end

Instance Method Details

#discovery_permissionsObject



27
28
29
# File 'app/search_builders/curation_concerns/collection_search_builder.rb', line 27

def discovery_permissions
  @discovery_perms || super
end

#only_collections?Boolean

This overrides FilterByType and ensures we only match on collections.



14
15
16
# File 'app/search_builders/curation_concerns/collection_search_builder.rb', line 14

def only_collections?
  true
end

#some_rows(solr_parameters) ⇒ Object



9
10
11
# File 'app/search_builders/curation_concerns/collection_search_builder.rb', line 9

def some_rows(solr_parameters)
  solr_parameters[:rows] = '100'
end

#sort_by_title(solr_parameters) ⇒ Object

Sort results by title if no query was supplied. This overrides the default ‘relevance’ sort.



20
21
22
23
# File 'app/search_builders/curation_concerns/collection_search_builder.rb', line 20

def sort_by_title(solr_parameters)
  return if solr_parameters[:q]
  solr_parameters[:sort] ||= "#{sort_field} asc"
end

#sort_fieldObject



31
32
33
# File 'app/search_builders/curation_concerns/collection_search_builder.rb', line 31

def sort_field
  Solrizer.solr_name('title', :sortable)
end