Sha256: 4288b5afa546a114029a6d3d4fb62375969193b5df234ea153b55e595c9eb9d9

Contents?: true

Size: 1.49 KB

Versions: 16

Compression:

Stored size: 1.49 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 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 document_presenter_class(_document)
      if action_name == 'index'
        super
      else
        blacklight_config.view_config(action_name: :show).document_presenter_class
      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 the 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

16 entries across 16 versions & 1 rubygems

Version Path
blacklight-spotlight-4.3.2 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.3.1 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.3.0 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.2.0 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.1.2 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.1.1 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.1.0 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.0.3 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.0.2 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.0.1 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-4.0.0 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-3.6.0.beta10 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-3.6.0.beta9 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-3.6.0.beta8 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-3.6.0.beta7 app/helpers/spotlight/main_app_helpers.rb
blacklight-spotlight-3.6.0.beta6 app/helpers/spotlight/main_app_helpers.rb