Sha256: 4316e7fed3226dcf77de4b403e5a8a20c6582338e65e6195c7f341a01500fe96
Contents?: true
Size: 1.58 KB
Versions: 3
Compression:
Stored size: 1.58 KB
Contents
# frozen_string_literal: true module Spotlight ## # Helpers that are injected into the main application (because they used in layouts) module MainAppHelpers include Spotlight::NavbarHelper include Spotlight::MastheadHelper def cache_key_for_spotlight_exhibits "#{Spotlight::Exhibit.count}/#{Spotlight::Exhibit.maximum(:updated_at).try(:utc)}" end def on_browse_page? params[:controller] == 'spotlight/browse' end def on_about_page? params[:controller] == 'spotlight/about_pages' end def show_contact_form? current_exhibit && (Spotlight::Engine.config.default_contact_email || current_exhibit.contact_emails.confirmed.any?) end def link_back_to_catalog(opts = { label: nil }) opts[:route_set] ||= spotlight if (current_search_session&.query_params || {}).fetch(:controller, '').starts_with? 'spotlight' super end def presenter(document) case action_name when 'index' super else show_presenter(document) end end def exhibit_stylesheet_link_tag(tag) if current_exhibit_theme && current_exhibit&.theme != 'default' stylesheet_link_tag "#{tag}_#{current_exhibit_theme}" else Rails.logger.warn "Exhibit theme '#{current_exhibit_theme}' not in white-list of available themes: #{current_exhibit&.themes}" stylesheet_link_tag(tag) end end def current_exhibit_theme current_exhibit.theme if current_exhibit && current_exhibit.theme.present? && current_exhibit.themes.include?(current_exhibit.theme) end end end
Version data entries
3 entries across 3 versions & 1 rubygems