Sha256: 20cceeed2e7cac89915e198eb921f738560764019181ed81f41265ddf996468d

Contents?: true

Size: 1.54 KB

Versions: 1

Compression:

Stored size: 1.54 KB

Contents

# frozen_string_literal: true

require_dependency "bulkrax/application_controller"
require_dependency "oai"

module Bulkrax
  class EntriesController < ApplicationController
    include Hyrax::ThemedLayoutController
    before_action :authenticate_user!
    before_action :check_permissions
    with_themed_layout 'dashboard'

    def show
      if params[:importer_id].present?
        show_importer
      elsif params[:exporter_id].present?
        show_exporter
      end
    end

    # GET /importers/1/entries/1
    def show_importer
      @importer = Importer.find(params[:importer_id])
      @entry = Entry.find(params[:id])

      add_breadcrumb t(:'hyrax.controls.home'), main_app.root_path
      add_breadcrumb t(:'hyrax.dashboard.breadcrumbs.admin'), hyrax.dashboard_path
      add_breadcrumb 'Importers', bulkrax.importers_path
      add_breadcrumb @importer.name, bulkrax.importer_path(@importer.id)
      add_breadcrumb @entry.id
    end

    # GET /exporters/1/entries/1
    def show_exporter
      @exporter = Exporter.find(params[:exporter_id])
      @entry = Entry.find(params[:id])

      add_breadcrumb t(:'hyrax.controls.home'), main_app.root_path
      add_breadcrumb t(:'hyrax.dashboard.breadcrumbs.admin'), hyrax.dashboard_path
      add_breadcrumb 'Exporters', bulkrax.exporters_path
      add_breadcrumb @exporter.name, bulkrax.exporter_path(@exporter.id)
      add_breadcrumb @entry.id
    end

    def check_permissions
      raise CanCan::AccessDenied unless current_ability.can_import_works? || current_ability.can_export_works?
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bulkrax-5.0.0 app/controllers/bulkrax/entries_controller.rb