sufia 6.4.0 → 6.5.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/.gitignore +1 -0
- data/History.md +7 -0
- data/README.md +2 -2
- data/SUFIA_VERSION +1 -1
- data/app/controllers/concerns/sufia/collections_controller_behavior.rb +17 -0
- data/app/controllers/concerns/sufia/my_controller_behavior.rb +0 -2
- data/app/helpers/facets_helper.rb +13 -0
- data/app/helpers/sufia/sufia_helper_behavior.rb +3 -1
- data/lib/generators/sufia/templates/catalog_controller.rb +1 -0
- data/lib/sufia/version.rb +1 -1
- data/spec/features/collection_facet_spec.rb +119 -0
- data/spec/features/ingest_upload_files_spec.rb +2 -2
- metadata +8 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3e188dc963a308bd78feb2a92a99548eb2b641d6
|
4
|
+
data.tar.gz: a5e2f06bbe6f5d816541b523f8346448958b00c2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ee2f8d43dd936f3fe4586da46a0de8215f4abcac9f93728c5f7ea88fcde725d0aa12810bbe20b008dcc2212a7d038af3b0ac61be8d9c28997fabb30f17dac517
|
7
|
+
data.tar.gz: 6ed19074ad147367a53b8d5a15d39ecab27aea1b2d2146dd71db9dceeaa1895cfccbc1e4e1281e35f04807fc591f31abf513ad32d8f2d7229e97450048f6a389
|
data/.gitignore
CHANGED
data/History.md
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
# History of Sufia releases
|
2
2
|
|
3
|
+
## 6.5.0
|
4
|
+
* Remove unnecessary require [Justin Coyne]
|
5
|
+
* Option to show collection facet in Dashboard and search results [E. Lynette Rayle]
|
6
|
+
* Remove space after icon if no text is present, fix projecthydra/sufia#1354 [Anna Headley]
|
7
|
+
* Ignore byebug history file [Adam Wead]
|
8
|
+
* Ignore visibility of files[] input, it's hidden from Capybara [Adam Wead]
|
9
|
+
|
3
10
|
## 6.4.0
|
4
11
|
|
5
12
|
* Remove deprecation warnings [Adam Wead]
|
data/README.md
CHANGED
@@ -90,7 +90,7 @@ If you have questions or need help, please email [the Hydra community tech list]
|
|
90
90
|
# Creating a Sufia-based app
|
91
91
|
|
92
92
|
This document contains instructions specific to setting up an app with __Sufia
|
93
|
-
v6.
|
93
|
+
v6.5.0__. If you are looking for instructions on installing a different
|
94
94
|
version, be sure to select the appropriate branch or tag from the drop-down
|
95
95
|
menu above.
|
96
96
|
|
@@ -142,7 +142,7 @@ rails new my_app
|
|
142
142
|
Add the following lines to your application's Gemfile.
|
143
143
|
|
144
144
|
```
|
145
|
-
gem 'sufia', '6.
|
145
|
+
gem 'sufia', '6.5.0'
|
146
146
|
gem 'kaminari', github: 'jcoyne/kaminari', branch: 'sufia' # required to handle pagination properly in dashboard. See https://github.com/amatsuda/kaminari/pull/322
|
147
147
|
```
|
148
148
|
|
data/SUFIA_VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
6.
|
1
|
+
6.5.0
|
@@ -30,6 +30,16 @@ module Sufia
|
|
30
30
|
presenter
|
31
31
|
end
|
32
32
|
|
33
|
+
def create
|
34
|
+
super
|
35
|
+
update_members_indices
|
36
|
+
end
|
37
|
+
|
38
|
+
def update
|
39
|
+
super
|
40
|
+
update_members_indices
|
41
|
+
end
|
42
|
+
|
33
43
|
protected
|
34
44
|
|
35
45
|
def presenter
|
@@ -77,5 +87,12 @@ module Sufia
|
|
77
87
|
def _prefixes
|
78
88
|
@_prefixes ||= super + ['catalog']
|
79
89
|
end
|
90
|
+
|
91
|
+
def update_members_indices
|
92
|
+
return if Sufia.config.collection_facet.nil?
|
93
|
+
Array(params[:batch_document_ids]).each do |gf|
|
94
|
+
Sufia.queue.push(ResolrizeGenericFileJob.new(gf))
|
95
|
+
end
|
96
|
+
end
|
80
97
|
end
|
81
98
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module FacetsHelper
|
2
|
+
include Blacklight::FacetsHelperBehavior
|
3
|
+
|
4
|
+
def display_collection_facet
|
5
|
+
if Sufia.config.collection_facet == :public
|
6
|
+
true
|
7
|
+
elsif Sufia.config.collection_facet == :user && current_user
|
8
|
+
true
|
9
|
+
else
|
10
|
+
false
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -114,8 +114,10 @@ module Sufia
|
|
114
114
|
end
|
115
115
|
|
116
116
|
def iconify_auto_link(text, showLink = true)
|
117
|
+
# this block is only executed when a link is inserted;
|
118
|
+
# if we pass text containing no links, it just returns text.
|
117
119
|
auto_link(text) do |value|
|
118
|
-
"<i class='glyphicon glyphicon-new-window'></i
|
120
|
+
"<i class='glyphicon glyphicon-new-window'></i>#{(' ' + value) if showLink}<br />"
|
119
121
|
end
|
120
122
|
end
|
121
123
|
|
@@ -57,6 +57,7 @@ class CatalogController < ApplicationController
|
|
57
57
|
config.add_facet_field solr_name("based_near", :facetable), label: "Location", limit: 5
|
58
58
|
config.add_facet_field solr_name("publisher", :facetable), label: "Publisher", limit: 5
|
59
59
|
config.add_facet_field solr_name("file_format", :facetable), label: "File Format", limit: 5
|
60
|
+
config.add_facet_field solr_name("collection", :facetable), label: "Collection", helper_method: :collection_name, limit: 5, show: :display_collection_facet
|
60
61
|
|
61
62
|
# Have BL send all facet field names to Solr, which has been the default
|
62
63
|
# previously. Simply remove these lines if you'd rather use Solr request
|
data/lib/sufia/version.rb
CHANGED
@@ -0,0 +1,119 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe "Collection Facet", type: :feature do
|
4
|
+
def visit_dashboard_my_files
|
5
|
+
visit '/dashboard/files'
|
6
|
+
expect(page.title).to eq 'Files listing'
|
7
|
+
expect(page).to have_link('My Files')
|
8
|
+
expect(page).to have_link('My Collections')
|
9
|
+
expect(page).to have_link('Fake PDF Title')
|
10
|
+
expect(page).to have_css('h3', text: 'Filter your files')
|
11
|
+
end
|
12
|
+
|
13
|
+
def search_for_files
|
14
|
+
visit '/'
|
15
|
+
fill_in('search-field-header', with: 'pdf')
|
16
|
+
click_button('search-submit-header')
|
17
|
+
expect(page.title).to eq 'Keyword: pdf - Blacklight Search Results'
|
18
|
+
expect(page).to have_link('Fake PDF Title')
|
19
|
+
expect(page).to have_css('h4', text: 'Limit your search')
|
20
|
+
end
|
21
|
+
|
22
|
+
def facet?(page)
|
23
|
+
f = page.all('a', text: /\ACollection\z/)
|
24
|
+
return true if f.size == 1
|
25
|
+
false
|
26
|
+
end
|
27
|
+
|
28
|
+
let(:auser) { FactoryGirl.create(:curator) }
|
29
|
+
|
30
|
+
let!(:fixtures) do
|
31
|
+
create_file_fixtures(auser.user_key, [:public_pdf]) do |f|
|
32
|
+
f.tag = ['pdf']
|
33
|
+
f.apply_depositor_metadata(auser.user_key)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
let(:collection1) do
|
38
|
+
Collection.create(title: 'Test Collection 1', description: 'Description for collection 1',
|
39
|
+
members: []) { |c| c.apply_depositor_metadata(auser.user_key) }
|
40
|
+
end
|
41
|
+
|
42
|
+
context "with collection having a member" do
|
43
|
+
before do
|
44
|
+
Sufia.config.collection_facet = :public
|
45
|
+
collection1.add_members([fixtures[0].id])
|
46
|
+
collection1.save
|
47
|
+
fixtures[0].update_index
|
48
|
+
end
|
49
|
+
|
50
|
+
context "and collection_facet config == :user" do
|
51
|
+
before do
|
52
|
+
Sufia.config.collection_facet = :user
|
53
|
+
end
|
54
|
+
|
55
|
+
it "shows collection facet in Dashboard -> My Files" do
|
56
|
+
login_as auser
|
57
|
+
visit_dashboard_my_files
|
58
|
+
expect(facet?(page)).to eq true
|
59
|
+
end
|
60
|
+
|
61
|
+
it "does show collection facet in pubic search with user logged in" do
|
62
|
+
login_as auser
|
63
|
+
search_for_files
|
64
|
+
expect(facet?(page)).to eq true
|
65
|
+
end
|
66
|
+
|
67
|
+
it "does NOT show collection facet in pubic search with user NOT logged in" do
|
68
|
+
search_for_files
|
69
|
+
expect(facet?(page)).to eq false
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
context "and collection_facet config == :public" do
|
74
|
+
before do
|
75
|
+
Sufia.config.collection_facet = :public
|
76
|
+
end
|
77
|
+
|
78
|
+
it "shows collection facet in Dashboard -> My Files" do
|
79
|
+
login_as auser
|
80
|
+
visit_dashboard_my_files
|
81
|
+
expect(facet?(page)).to eq true
|
82
|
+
end
|
83
|
+
|
84
|
+
it "shows collection facet in pubic search with user logged in" do
|
85
|
+
login_as auser
|
86
|
+
search_for_files
|
87
|
+
expect(facet?(page)).to eq true
|
88
|
+
end
|
89
|
+
|
90
|
+
it "shows collection facet in pubic search with user NOT logged in" do
|
91
|
+
search_for_files
|
92
|
+
expect(facet?(page)).to eq true
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
context "and collection_facet config == nil" do
|
97
|
+
before do
|
98
|
+
Sufia.config.collection_facet = nil
|
99
|
+
end
|
100
|
+
|
101
|
+
it "does NOT show collection facet in Dashboard -> My Files" do
|
102
|
+
login_as auser
|
103
|
+
visit_dashboard_my_files
|
104
|
+
expect(facet?(page)).to eq false
|
105
|
+
end
|
106
|
+
|
107
|
+
it "does NOT show collection facet in pubic search with user logged in" do
|
108
|
+
login_as auser
|
109
|
+
search_for_files
|
110
|
+
expect(facet?(page)).to eq false
|
111
|
+
end
|
112
|
+
|
113
|
+
it "does NOT show collection facet in pubic search with user NOT logged in" do
|
114
|
+
search_for_files
|
115
|
+
expect(facet?(page)).to eq false
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
end
|
@@ -15,8 +15,8 @@ describe "Uploading files via web form", type: :feature do
|
|
15
15
|
|
16
16
|
context "the terms of service", :js do
|
17
17
|
it "is required to be checked" do
|
18
|
-
attach_file("files[]", File.dirname(__FILE__) + "/../../spec/fixtures/image.jp2")
|
19
|
-
attach_file("files[]", File.dirname(__FILE__) + "/../../spec/fixtures/jp2_fits.xml")
|
18
|
+
attach_file("files[]", File.dirname(__FILE__) + "/../../spec/fixtures/image.jp2", visible: false)
|
19
|
+
attach_file("files[]", File.dirname(__FILE__) + "/../../spec/fixtures/jp2_fits.xml", visible: false)
|
20
20
|
expect(page).to have_css("button#main_upload_start[disabled]")
|
21
21
|
find('#main_upload_start_span').hover
|
22
22
|
expect(page).to have_content "Please accept Deposit Agreement before you can upload."
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sufia
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.
|
4
|
+
version: 6.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justin Coyne
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-
|
12
|
+
date: 2015-12-10 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sufia-models
|
@@ -17,14 +17,14 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - '='
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 6.
|
20
|
+
version: 6.5.0
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - '='
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: 6.
|
27
|
+
version: 6.5.0
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: blacklight_advanced_search
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -657,6 +657,7 @@ files:
|
|
657
657
|
- app/helpers/contact_form_helper.rb
|
658
658
|
- app/helpers/content_block_helper.rb
|
659
659
|
- app/helpers/dashboard_helper.rb
|
660
|
+
- app/helpers/facets_helper.rb
|
660
661
|
- app/helpers/generic_file_helper.rb
|
661
662
|
- app/helpers/sufia/blacklight_override.rb
|
662
663
|
- app/helpers/sufia/dashboard_helper_behavior.rb
|
@@ -1006,6 +1007,7 @@ files:
|
|
1006
1007
|
- spec/features/browse_files_spec.rb
|
1007
1008
|
- spec/features/catalog_search_spec.rb
|
1008
1009
|
- spec/features/cloud_upload_spec.rb
|
1010
|
+
- spec/features/collection_facet_spec.rb
|
1009
1011
|
- spec/features/collection_spec.rb
|
1010
1012
|
- spec/features/contact_form_spec.rb
|
1011
1013
|
- spec/features/display_dashboard_spec.rb
|
@@ -1243,7 +1245,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1243
1245
|
version: '0'
|
1244
1246
|
requirements: []
|
1245
1247
|
rubyforge_project:
|
1246
|
-
rubygems_version: 2.4.
|
1248
|
+
rubygems_version: 2.4.5
|
1247
1249
|
signing_key:
|
1248
1250
|
specification_version: 4
|
1249
1251
|
summary: Sufia was extracted from ScholarSphere developed by Penn State University
|
@@ -1291,6 +1293,7 @@ test_files:
|
|
1291
1293
|
- spec/features/browse_files_spec.rb
|
1292
1294
|
- spec/features/catalog_search_spec.rb
|
1293
1295
|
- spec/features/cloud_upload_spec.rb
|
1296
|
+
- spec/features/collection_facet_spec.rb
|
1294
1297
|
- spec/features/collection_spec.rb
|
1295
1298
|
- spec/features/contact_form_spec.rb
|
1296
1299
|
- spec/features/display_dashboard_spec.rb
|