Sha256: 1940442099e7914a399760c46842fda192a758be629859a8dfe916fb757f1bbc

Contents?: true

Size: 1.93 KB

Versions: 1

Compression:

Stored size: 1.93 KB

Contents

# -*- coding: utf-8 -*-
class CollectionsController < ApplicationController
  include Hydra::CollectionsControllerBehavior
  include Blacklight::Catalog::SearchContext
  include BlacklightAdvancedSearch::ParseBasicQ
  include BlacklightAdvancedSearch::Controller
  include Sufia::Breadcrumbs
  prepend_before_filter :normalize_identifier, except: [:index, :create, :new]
  before_filter :filter_docs_with_read_access!, except: :show
  before_filter :has_access?, except: :show
  before_filter :initialize_fields_for_edit, only: [:edit, :new]
  before_filter :build_breadcrumbs, only: [:edit, :show]
  CollectionsController.solr_search_params_logic += [:add_access_controls_to_solr_params]

  layout "sufia-one-column"

  def show
    super
    @presenter = presenter
  end

  protected

  def presenter
    Sufia::CollectionPresenter.new(@collection)
  end

  def collection_params
    params.require(:collection).permit(:title, :description, :members, part_of: [],
      contributor: [], creator: [], publisher: [], date_created: [], subject: [],
      language: [], rights: [], resource_type: [], identifier: [], based_near: [],
      tag: [], related_url: [])
  end

  def query_collection_members
    flash[:notice]=nil if flash[:notice] == "Select something first"
    query = params[:cq]

    #merge in the user parameters and the attach the collection query
    solr_params =  (params.symbolize_keys).merge(q: query)

    # run the solr query to find the collections
    (@response, @member_docs) = get_search_results(solr_params)
  end

  def after_destroy(id)
    respond_to do |format|
      format.html { redirect_to sufia.dashboard_collections_path, notice: 'Collection was successfully deleted.' }
      format.json { render json: {id: id}, status: :destroyed, location: @collection }
    end
  end

  def initialize_fields_for_edit
    @form = Sufia::Forms::CollectionEditForm.new(@collection)
  end

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

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
sufia-6.0.0.rc1 app/controllers/collections_controller.rb