hydra-collections 8.0.0 → 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +3 -0
- data/app/helpers/collections_helper.rb +1 -51
- data/app/helpers/hydra/collections/collections_helper_behavior.rb +56 -0
- data/app/models/collection.rb +1 -0
- data/app/models/concerns/hydra/collection.rb +1 -1
- data/app/models/concerns/hydra/collections/{metadata.rb → basic_metadata.rb} +1 -5
- data/app/models/concerns/hydra/collections/required_metadata.rb +10 -0
- data/lib/generators/hydra/collections/install_generator.rb +15 -0
- data/lib/generators/hydra/collections/templates/collection.rb +7 -0
- data/lib/hydra/collections/version.rb +1 -1
- data/spec/controllers/other_collections_controller_spec.rb +1 -0
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +6 -0
- metadata +7 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 33c94d0cf369a533ff8bb7d039edbafbacb9a163
|
|
4
|
+
data.tar.gz: c4f56e2253e1e648dd131d3cd334f37eeacac791
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e982f879d4dff4125fc229ede046443c167459e81185a8944701eb8cd5cfc80d44506b52ec6869c4dd24e1adf341096dc4056cb16d82ac6b460737192be65aa4
|
|
7
|
+
data.tar.gz: 280d86d67f35cd18f1a693f3799cf17864819d047275ae91bcded8c34aa1d45b688e716e9d22097971d59638f7fa89372b2870062fae88db607dced13365ff90
|
data/README.md
CHANGED
|
@@ -1,54 +1,4 @@
|
|
|
1
1
|
# View Helpers for Hydra Collections functionality
|
|
2
2
|
module CollectionsHelper
|
|
3
|
-
|
|
4
|
-
!params[:cq].blank?
|
|
5
|
-
end
|
|
6
|
-
|
|
7
|
-
# Displays the Collections create collection button. Put this in your search result page template. We recommend putting it in catalog/_sort_and_per_page.html.erb
|
|
8
|
-
def button_for_create_collection(label = 'Create Collection')
|
|
9
|
-
render '/collections/button_create_collection', label: label
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
# Displays the Collections update collection button. Put this in your search result page template. We recommend putting it in catalog/_sort_and_per_page.html.erb
|
|
13
|
-
def button_for_update_collection(label = 'Update Collection', collection_id = 'collection_replace_id')
|
|
14
|
-
render '/collections/button_for_update_collection', label: label, collection_id: collection_id
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
# Displays the Collections delete collection button. Put this in your search result page for each collection found.
|
|
18
|
-
def button_for_delete_collection(collection, label = 'Delete Collection', confirm = 'Are you sure?')
|
|
19
|
-
render '/collections/button_for_delete_collection', collection: collection, label: label, confirm: confirm
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
def button_for_remove_from_collection(collection, document, label = 'Remove From Collection')
|
|
23
|
-
render '/collections/button_remove_from_collection', collection: collection, label: label, document: document
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def button_for_remove_selected_from_collection(collection, label = 'Remove From Collection')
|
|
27
|
-
render '/collections/button_for_remove_selected_from_collection', collection: collection, label: label
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
# add hidden fields to a form for removing a single document from a collection
|
|
31
|
-
def single_item_action_remove_form_fields(form, document)
|
|
32
|
-
single_item_action_form_fields(form, document, 'remove')
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
# add hidden fields to a form for adding a single document to a collection
|
|
36
|
-
def single_item_action_add_form_fields(form, document)
|
|
37
|
-
single_item_action_form_fields(form, document, 'add')
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
# add hidden fields to a form for performing an action on a single document on a collection
|
|
41
|
-
def single_item_action_form_fields(form, document, action)
|
|
42
|
-
render '/collections/single_item_action_fields', form: form, document: document, action: action
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
def hidden_collection_members
|
|
46
|
-
_erbout = ''
|
|
47
|
-
if params[:batch_document_ids].present?
|
|
48
|
-
params[:batch_document_ids].each do |batch_item|
|
|
49
|
-
_erbout.concat hidden_field_tag('batch_document_ids[]', batch_item)
|
|
50
|
-
end
|
|
51
|
-
end
|
|
52
|
-
_erbout.html_safe
|
|
53
|
-
end
|
|
3
|
+
include Hydra::Collections::CollectionsHelperBehavior
|
|
54
4
|
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# View Helpers for Hydra Collections functionality
|
|
2
|
+
module Hydra::Collections
|
|
3
|
+
module CollectionsHelperBehavior
|
|
4
|
+
def has_collection_search_parameters?
|
|
5
|
+
!params[:cq].blank?
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
# Displays the Collections create collection button. Put this in your search result page template. We recommend putting it in catalog/_sort_and_per_page.html.erb
|
|
9
|
+
def button_for_create_collection(label = 'Create Collection')
|
|
10
|
+
render '/collections/button_create_collection', label: label
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
# Displays the Collections update collection button. Put this in your search result page template. We recommend putting it in catalog/_sort_and_per_page.html.erb
|
|
14
|
+
def button_for_update_collection(label = 'Update Collection', collection_id = 'collection_replace_id')
|
|
15
|
+
render '/collections/button_for_update_collection', label: label, collection_id: collection_id
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
# Displays the Collections delete collection button. Put this in your search result page for each collection found.
|
|
19
|
+
def button_for_delete_collection(collection, label = 'Delete Collection', confirm = 'Are you sure?')
|
|
20
|
+
render '/collections/button_for_delete_collection', collection: collection, label: label, confirm: confirm
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def button_for_remove_from_collection(collection, document, label = 'Remove From Collection')
|
|
24
|
+
render '/collections/button_remove_from_collection', collection: collection, label: label, document: document
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def button_for_remove_selected_from_collection(collection, label = 'Remove From Collection')
|
|
28
|
+
render '/collections/button_for_remove_selected_from_collection', collection: collection, label: label
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# add hidden fields to a form for removing a single document from a collection
|
|
32
|
+
def single_item_action_remove_form_fields(form, document)
|
|
33
|
+
single_item_action_form_fields(form, document, 'remove')
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# add hidden fields to a form for adding a single document to a collection
|
|
37
|
+
def single_item_action_add_form_fields(form, document)
|
|
38
|
+
single_item_action_form_fields(form, document, 'add')
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
# add hidden fields to a form for performing an action on a single document on a collection
|
|
42
|
+
def single_item_action_form_fields(form, document, action)
|
|
43
|
+
render '/collections/single_item_action_fields', form: form, document: document, action: action
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def hidden_collection_members
|
|
47
|
+
_erbout = ''
|
|
48
|
+
if params[:batch_document_ids].present?
|
|
49
|
+
params[:batch_document_ids].each do |batch_item|
|
|
50
|
+
_erbout.concat hidden_field_tag('batch_document_ids[]', batch_item)
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
_erbout.html_safe
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
data/app/models/collection.rb
CHANGED
|
@@ -5,7 +5,7 @@ module Hydra
|
|
|
5
5
|
include Hydra::Works::CollectionBehavior
|
|
6
6
|
include Hydra::WithDepositor # for access to apply_depositor_metadata
|
|
7
7
|
include Hydra::AccessControls::Permissions
|
|
8
|
-
include Hydra::Collections::
|
|
8
|
+
include Hydra::Collections::RequiredMetadata
|
|
9
9
|
include Hydra::Works::CollectionBehavior
|
|
10
10
|
|
|
11
11
|
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
module Hydra::Collections
|
|
2
|
-
module
|
|
2
|
+
module BasicMetadata
|
|
3
3
|
extend ActiveSupport::Concern
|
|
4
4
|
included do
|
|
5
|
-
property :depositor, predicate: RDF::Vocab::MARCRelators.dpt, multiple: false do |index|
|
|
6
|
-
index.as :symbol, :stored_searchable
|
|
7
|
-
end
|
|
8
|
-
|
|
9
5
|
property :part_of, predicate: RDF::Vocab::DC.isPartOf
|
|
10
6
|
|
|
11
7
|
property :contributor, predicate: RDF::Vocab::DC.contributor do |index|
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
require 'rails/generators'
|
|
2
|
+
|
|
3
|
+
module Hydra::Collections
|
|
4
|
+
class Install < Rails::Generators::Base
|
|
5
|
+
source_root File.expand_path('../templates', __FILE__)
|
|
6
|
+
|
|
7
|
+
desc 'This generator makes the following changes to your application:
|
|
8
|
+
1. Creates a collection model.
|
|
9
|
+
'
|
|
10
|
+
|
|
11
|
+
def collection
|
|
12
|
+
copy_file "collection.rb", "app/models/collection.rb"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -21,6 +21,12 @@ class TestAppGenerator < Rails::Generators::Base
|
|
|
21
21
|
generate 'hydra:head', '-f'
|
|
22
22
|
end
|
|
23
23
|
|
|
24
|
+
def run_collections_generator
|
|
25
|
+
say_status("warning", "GENERATING Collection", :yellow)
|
|
26
|
+
|
|
27
|
+
generate 'hydra:collections:install'
|
|
28
|
+
end
|
|
29
|
+
|
|
24
30
|
def run_migrations
|
|
25
31
|
rake("db:migrate")
|
|
26
32
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: hydra-collections
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 8.
|
|
4
|
+
version: 8.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Carolyn Cole
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2016-
|
|
11
|
+
date: 2016-03-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: hydra-head
|
|
@@ -161,9 +161,11 @@ files:
|
|
|
161
161
|
- app/controllers/concerns/hydra/collections_controller_behavior.rb
|
|
162
162
|
- app/helpers/batch_select_helper.rb
|
|
163
163
|
- app/helpers/collections_helper.rb
|
|
164
|
+
- app/helpers/hydra/collections/collections_helper_behavior.rb
|
|
164
165
|
- app/models/collection.rb
|
|
165
166
|
- app/models/concerns/hydra/collection.rb
|
|
166
|
-
- app/models/concerns/hydra/collections/
|
|
167
|
+
- app/models/concerns/hydra/collections/basic_metadata.rb
|
|
168
|
+
- app/models/concerns/hydra/collections/required_metadata.rb
|
|
167
169
|
- app/models/concerns/hydra/collections/solr_document_behavior.rb
|
|
168
170
|
- app/models/solr_document.rb
|
|
169
171
|
- app/search_builders/hydra/collections/member_search_builder.rb
|
|
@@ -199,6 +201,8 @@ files:
|
|
|
199
201
|
- gemfiles/rails3.gemfile
|
|
200
202
|
- gemfiles/rails4.gemfile
|
|
201
203
|
- hydra-collections.gemspec
|
|
204
|
+
- lib/generators/hydra/collections/install_generator.rb
|
|
205
|
+
- lib/generators/hydra/collections/templates/collection.rb
|
|
202
206
|
- lib/hydra-collections.rb
|
|
203
207
|
- lib/hydra/collections/accepts_batches.rb
|
|
204
208
|
- lib/hydra/collections/search_service.rb
|