Class: Curate::CollectionsController

Inherits:
ApplicationController
  • Object
show all
Includes:
Blacklight::Catalog, FieldsForAddToCollection, Hydra::AccessControlsEnforcement, Hydra::CollectionsControllerBehavior, Sufia::Noid
Defined in:
app/controllers/curate/collections_controller.rb

Defined Under Namespace

Classes: CollectionsControllerResource

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.cancan_resource_classObject



10
11
12
# File 'app/controllers/curate/collections_controller.rb', line 10

def self.cancan_resource_class
  CollectionsControllerResource
end

Instance Method Details

#add_memberObject



67
68
69
70
71
72
73
74
# File 'app/controllers/curate/collections_controller.rb', line 67

def add_member
  if @collection && @collection.add_member(@collectible)
    flash[:notice] = "\"#{@collectible}\" has been added to \"#{@collection}\""
  else
    flash[:error] = 'Unable to add item to collection.'
  end
  redirect_to params.fetch(:redirect_to) { catalog_index_path }
end

#add_member_formObject



62
63
64
65
# File 'app/controllers/curate/collections_controller.rb', line 62

def add_member_form
  collection_options
  render 'add_member_form'
end

#newObject



57
58
59
60
# File 'app/controllers/curate/collections_controller.rb', line 57

def new
  @add_to_profile = params.delete(:add_to_profile)
  super
end

#remove_memberObject



76
77
78
79
80
81
# File 'app/controllers/curate/collections_controller.rb', line 76

def remove_member
  @collection = ActiveFedora::Base.find(params[:id], cast: true)
  item = ActiveFedora::Base.find(params[:item_id], cast:true)
  @collection.remove_member(item)
  redirect_to params.fetch(:redirect_to) { collection_path(params[:id]) }
end