Sha256: 8330be38bb719c11de0148b100503b6d0e744ac75bfe4fb6f495748772c46d45

Contents?: true

Size: 1.54 KB

Versions: 24

Compression:

Stored size: 1.54 KB

Contents

module Spotlight
  ##
  # Exhibit dashboard controller
  class DashboardsController < Spotlight::ApplicationController
    before_action :authenticate_user!
    load_and_authorize_resource :exhibit, class: Spotlight::Exhibit

    include Spotlight::Base

    before_action only: [:show] do
      blacklight_config.view.reject! { |_k, _v| true }
      blacklight_config.view.admin_table.partials = ['index_compact']
      blacklight_config.view.admin_table.document_actions = []
    end

    def show
      authorize! :curate, @exhibit

      @pages = @exhibit.pages.recent.limit(5)
      @solr_documents = load_recent_solr_documents 5

      attach_dashboard_breadcrumbs
    end

    def analytics
      authorize! :curate, @exhibit

      attach_analytics_breadcrumbs
    end

    def _prefixes
      @_prefixes ||= super + ['spotlight/catalog', 'catalog']
    end

    protected

    def attach_analytics_breadcrumbs
      add_breadcrumb t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit
      add_breadcrumb t(:'spotlight.curation.sidebar.analytics'), analytics_exhibit_dashboard_path(@exhibit)
    end

    def attach_dashboard_breadcrumbs
      add_breadcrumb t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit
      add_breadcrumb t(:'spotlight.curation.sidebar.dashboard'), exhibit_dashboard_path(@exhibit)
    end

    def load_recent_solr_documents(count)
      solr_params = { sort: "#{blacklight_config.index.timestamp_field} desc" }
      @response, docs = search_results(solr_params)
      docs.take(count)
    end
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
blacklight-spotlight-0.31.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.30.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.29.1 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.29.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.28.3 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.28.2 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.28.1 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.28.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.27.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.26.1 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.26.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.25.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.24.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.23.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.22.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.21.0 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.20.3 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.20.2 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.20.1 app/controllers/spotlight/dashboards_controller.rb
blacklight-spotlight-0.20.0 app/controllers/spotlight/dashboards_controller.rb