Class: Spotlight::Exhibit
Overview
Instance Method Summary
collapse
#exhibit_search_builder, #solr_documents
#analytics, #analytics_provider, #page_analytics
Instance Method Details
#available_locales ⇒ Object
144
145
146
|
# File 'app/models/spotlight/exhibit.rb', line 144
def available_locales
@available_locales ||= languages.pluck(:locale)
end
|
#browse_categories? ⇒ Boolean
95
96
97
|
# File 'app/models/spotlight/exhibit.rb', line 95
def browse_categories?
searches.published.any?
end
|
#main_about_page ⇒ Object
91
92
93
|
# File 'app/models/spotlight/exhibit.rb', line 91
def main_about_page
@main_about_page ||= about_pages.for_locale.published.first
end
|
#reindex_later(current_user = nil) ⇒ Object
124
125
126
|
# File 'app/models/spotlight/exhibit.rb', line 124
def reindex_later(current_user = nil)
Spotlight::ReindexExhibitJob.perform_later(self, user: current_user)
end
|
#reindex_progress ⇒ Object
#requested_by ⇒ Object
136
137
138
|
# File 'app/models/spotlight/exhibit.rb', line 136
def requested_by
roles.first&.user
end
|
#searchable? ⇒ Boolean
132
133
134
|
# File 'app/models/spotlight/exhibit.rb', line 132
def searchable?
blacklight_config.search_fields.any? { |_k, v| v.enabled && v.include_in_simple_select != false }
end
|
#solr_data ⇒ Object
118
119
120
121
122
|
# File 'app/models/spotlight/exhibit.rb', line 118
def solr_data
filters.each_with_object({}) do |filter, hash|
hash.merge! filter.to_hash
end
end
|
#themes ⇒ Object
99
100
101
102
103
104
105
|
# File 'app/models/spotlight/exhibit.rb', line 99
def themes
@themes ||= begin
return Spotlight::Engine.config.exhibit_themes unless self.class.themes_selector
self.class.themes_selector.call(self)
end
end
|
#to_s ⇒ Object
107
108
109
|
# File 'app/models/spotlight/exhibit.rb', line 107
def to_s
title
end
|
#uploaded_resource_fields ⇒ Object
128
129
130
|
# File 'app/models/spotlight/exhibit.rb', line 128
def uploaded_resource_fields
Spotlight::Engine.config.upload_fields
end
|