sufia 7.0.0.rc2 → 7.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/app/assets/javascripts/sufia/browse_everything.js +1 -1
- data/app/assets/javascripts/sufia/save_work/deposit_agreement.es6 +8 -5
- data/app/assets/javascripts/sufia/tabs.js +19 -11
- data/app/assets/stylesheets/sufia/_form-progress.scss +11 -12
- data/app/assets/stylesheets/sufia/_settings.scss +2 -0
- data/app/services/sufia/user_stat_importer.rb +1 -1
- data/app/views/curation_concerns/base/_form_progress.html.erb +26 -25
- data/app/views/curation_concerns/base/_form_relationships.html.erb +1 -1
- data/app/views/curation_concerns/base/_form_share.html.erb +8 -7
- data/app/views/curation_concerns/base/_form_visibility_component.html.erb +64 -54
- data/app/views/users/_vitals.html.erb +1 -1
- data/config/locales/sufia.en.yml +1 -0
- data/lib/sufia/version.rb +1 -1
- data/spec/javascripts/deposit_agreement_spec.js +3 -0
- data/spec/javascripts/tabs_spec.js.coffee +38 -0
- data/spec/services/sufia/user_stat_importer_spec.rb +5 -0
- data/sufia.gemspec +1 -1
- metadata +11 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: acfeaab8524307303e47d77881ceb17215fb9207
|
4
|
+
data.tar.gz: 2b2e2f5c6f8812d4f63d5e240cdbb9f62f9f49ad
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1df4473fc8e9a9673fd1e82c6239427770420a69bc4d73f000c969220f13c96c81d9ad4d478086a99f973e981ba0000ca634ddcc0f26245e4f1d9905181cc3a8
|
7
|
+
data.tar.gz: 547d3fed24466909efb179dfd8d54b790b6105cb48c192fdd1500b586e8f5e1e920dc5054c6d2c9b6ee17731508bd50ae352921f0982e931d9aa1fed156baebd
|
data/README.md
CHANGED
@@ -84,7 +84,7 @@ See [Sufia's documentation site](http://sufia.io/) for more non-technical docume
|
|
84
84
|
|
85
85
|
# Help
|
86
86
|
|
87
|
-
If you have questions or need help, please email [the Hydra community tech list](mailto:hydra-tech@googlegroups.com) or stop by [the Hydra community
|
87
|
+
If you have questions or need help, please email [the Hydra community tech list](mailto:hydra-tech@googlegroups.com) or stop by the #dev channel in [the Hydra community Slack team](https://wiki.duraspace.org/pages/viewpage.action?pageId=43910187#Getintouch!-Slack).
|
88
88
|
|
89
89
|
# Getting started
|
90
90
|
|
@@ -155,7 +155,7 @@ rails new my_app
|
|
155
155
|
Add the following lines to your application's Gemfile.
|
156
156
|
|
157
157
|
```
|
158
|
-
gem 'sufia', '7.0.0
|
158
|
+
gem 'sufia', '7.0.0'
|
159
159
|
```
|
160
160
|
|
161
161
|
Then install Sufia as a dependency of your app via `bundle install`
|
@@ -1,7 +1,7 @@
|
|
1
1
|
//= require browse_everything
|
2
2
|
|
3
3
|
// Show the files in the queue
|
4
|
-
|
4
|
+
Blacklight.onLoad( function() {
|
5
5
|
$('#browse-btn').browseEverything()
|
6
6
|
.done(function(data) {
|
7
7
|
var evt = { isDefaultPrevented: function() { return false; } };
|
@@ -2,16 +2,19 @@ export class DepositAgreement {
|
|
2
2
|
// Monitors the form and runs the callback if any files are added
|
3
3
|
constructor(form, callback) {
|
4
4
|
this.agreementCheckbox = form.find('input#agreement')
|
5
|
+
|
5
6
|
// If true, require the accept checkbox to be checked.
|
7
|
+
// Tracks whether the user needs to accept again to the depositor
|
8
|
+
// agreement. Once the user has manually agreed once she does not
|
9
|
+
// need to agree again regardless on how many files are being added.
|
6
10
|
this.isActiveAgreement = this.agreementCheckbox.size() > 0
|
7
11
|
if (this.isActiveAgreement) {
|
8
12
|
this.setupActiveAgreement(callback)
|
13
|
+
this.mustAgreeAgain = this.isAccepted
|
14
|
+
}
|
15
|
+
else {
|
16
|
+
this.mustAgreeAgain = false
|
9
17
|
}
|
10
|
-
|
11
|
-
// Tracks whether the user needs to accept again to the depositor
|
12
|
-
// agreement. Once the user has manually agreed once she does not
|
13
|
-
// need to agree again regardless on how many files are being added.
|
14
|
-
this.mustAgreeAgain = this.isAccepted
|
15
18
|
}
|
16
19
|
|
17
20
|
setupActiveAgreement(callback) {
|
@@ -1,22 +1,30 @@
|
|
1
|
+
// This code is to implement the tabs on the home page
|
2
|
+
|
3
|
+
// navigate to the selected tab or the first tab
|
4
|
+
function tabNavigation(e) {
|
5
|
+
var activeTab = $('[href="' + location.hash + '"]');
|
6
|
+
if (activeTab.length) {
|
7
|
+
activeTab.tab('show');
|
8
|
+
} else {
|
9
|
+
var firstTab = $('.nav-tabs a:first');
|
10
|
+
// select the first tab if it has an id and is expected to be selected
|
11
|
+
if ((firstTab[0] !== undefined) && (firstTab[0].id != "")){
|
12
|
+
$(firstTab).tab('show');
|
13
|
+
}
|
14
|
+
}
|
15
|
+
}
|
16
|
+
|
1
17
|
Blacklight.onLoad(function () {
|
2
18
|
// When we visit a link to a tab, open that tab.
|
3
19
|
var url = document.location.toString();
|
4
20
|
if (url.match('#')) {
|
5
21
|
$('.nav-tabs a[href="#' + url.split('#')[1] + '"]').tab('show');
|
6
22
|
}
|
7
|
-
|
23
|
+
|
8
24
|
// Change the url when a tab is clicked.
|
9
25
|
$('a[data-toggle="tab"]').on('click', function(e) {
|
10
26
|
history.pushState(null, null, $(this).attr('href'));
|
11
27
|
});
|
12
|
-
|
13
|
-
|
14
|
-
window.addEventListener("popstate", function(e) {
|
15
|
-
var activeTab = $('[href="' + location.hash + '"]');
|
16
|
-
if (activeTab.length) {
|
17
|
-
activeTab.tab('show');
|
18
|
-
} else {
|
19
|
-
$('.nav-tabs a:first').tab('show');
|
20
|
-
}
|
21
|
-
});
|
28
|
+
// navigate to a tab when the history changes (back button)
|
29
|
+
window.addEventListener("popstate", tabNavigation);
|
22
30
|
});
|
@@ -18,12 +18,18 @@
|
|
18
18
|
}
|
19
19
|
}
|
20
20
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
21
|
+
.legend-save-work {
|
22
|
+
border: none;
|
23
|
+
font-size: $save-viz-widget-legend-font;
|
24
|
+
margin-bottom: $save-viz-widget-legend-margin;
|
25
|
+
}
|
26
|
+
|
27
|
+
.requirements, .visibility {
|
28
|
+
list-style-type: none;
|
29
|
+
padding-left: 8px;
|
30
|
+
}
|
26
31
|
|
32
|
+
aside.form-progress {
|
27
33
|
.incomplete::before {
|
28
34
|
content: "\e101";
|
29
35
|
color: $brand-danger;
|
@@ -37,11 +43,4 @@ aside.form-progress {
|
|
37
43
|
font-family: 'Glyphicons Halflings';
|
38
44
|
padding-right: 5px;
|
39
45
|
}
|
40
|
-
|
41
|
-
h3 {
|
42
|
-
margin: 0;
|
43
|
-
padding: 5px;
|
44
|
-
font-size: 12pt;
|
45
|
-
}
|
46
|
-
|
47
46
|
}
|
@@ -6,7 +6,7 @@ module Sufia
|
|
6
6
|
|
7
7
|
def initialize(options = {})
|
8
8
|
if options[:verbose]
|
9
|
-
stdout_logger = Logger.new(
|
9
|
+
stdout_logger = Logger.new(STDOUT)
|
10
10
|
stdout_logger.level = Logger::INFO
|
11
11
|
Rails.logger.extend(ActiveSupport::Logger.broadcast(stdout_logger))
|
12
12
|
end
|
@@ -1,15 +1,16 @@
|
|
1
1
|
<aside id="form-progress" class="form-progress panel panel-default">
|
2
2
|
<div class="panel-heading">
|
3
|
-
|
4
|
-
<h2><%= t("sufia.works.progress.header") %></h2>
|
3
|
+
<h3 class="panel-title"><%= t("sufia.works.progress.header") %></h3>
|
5
4
|
</div>
|
6
5
|
<div class="list-group">
|
7
6
|
<div class="list-group-item">
|
8
|
-
<
|
9
|
-
|
10
|
-
<
|
11
|
-
|
12
|
-
|
7
|
+
<fieldset>
|
8
|
+
<legend class="legend-save-work">Requirements</legend>
|
9
|
+
<ul class="requirements">
|
10
|
+
<li class="incomplete" id="required-metadata">Enter required metadata</li>
|
11
|
+
<li class="incomplete" id="required-files">Add files</li>
|
12
|
+
</ul>
|
13
|
+
</fieldset>
|
13
14
|
</div>
|
14
15
|
|
15
16
|
<div class="set-access-controls list-group-item">
|
@@ -20,26 +21,26 @@
|
|
20
21
|
<%= f.input :on_behalf_of, collection: current_user.can_make_deposits_for.map(&:user_key), prompt: "Yourself" %>
|
21
22
|
</div>
|
22
23
|
<% end %>
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
sufia.static_path('agreement'),
|
30
|
-
target: '_blank' %>
|
31
|
-
</label>
|
32
|
-
<% else %>
|
33
|
-
<%= t('sufia.passive_consent_to_agreement') %><br>
|
24
|
+
</div>
|
25
|
+
<div class="panel-footer text-center">
|
26
|
+
<% if Sufia.config.active_deposit_agreement_acceptance %>
|
27
|
+
<label>
|
28
|
+
<%= check_box_tag 'agreement', 1, f.object.agreement_accepted, required: true %>
|
29
|
+
<%= t('sufia.active_consent_to_agreement') %><br>
|
34
30
|
<%= link_to t('sufia.deposit_agreement'),
|
35
31
|
sufia.static_path('agreement'),
|
36
32
|
target: '_blank' %>
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
33
|
+
</label>
|
34
|
+
<% else %>
|
35
|
+
<%= t('sufia.passive_consent_to_agreement') %><br>
|
36
|
+
<%= link_to t('sufia.deposit_agreement'),
|
37
|
+
sufia.static_path('agreement'),
|
38
|
+
target: '_blank' %>
|
39
|
+
<% end %>
|
40
|
+
<br>
|
41
|
+
<%= link_to t(:'helpers.action.cancel'),
|
42
|
+
sufia.dashboard_index_path,
|
43
|
+
class: 'btn btn-default' %>
|
44
|
+
<%= f.submit 'Save', class: 'btn btn-primary', onclick: "confirmation_needed = false;", id: "with_files_submit", name: "save_with_files" %>
|
44
45
|
</div>
|
45
46
|
</aside>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<
|
1
|
+
<h2>Sharing With</h2>
|
2
2
|
<% depositor = f.object.depositor %>
|
3
3
|
|
4
4
|
<div class="alert alert-info hidden" id="save_perm_note">Permissions are
|
@@ -38,10 +38,12 @@
|
|
38
38
|
</table>
|
39
39
|
|
40
40
|
|
41
|
-
<
|
42
|
-
|
41
|
+
<h2>Share work with other users</h2>
|
42
|
+
<p class="sr-only">Use the add button to give access to one <%=t('sufia.account_label') %> at a time (it will be added to the list below).
|
43
|
+
Select the user, by name or <%= t('sufia.account_label') %>. Then select the access level you wish to grant and click on Add this
|
44
|
+
<%= t('sufia.account_label') %> to complete adding the permission.
|
45
|
+
</p>
|
43
46
|
<div class="form-group row">
|
44
|
-
<p class="sr-only">Use the add button to give access to one <%=t('sufia.account_label') %> at a time (it will be added to the list below). Select the user, by name or <%= t('sufia.account_label') %>. Then select the access level you wish to grant and click on Add this <%= t('sufia.account_label') %> to complete adding the permission.</p>
|
45
47
|
<div class="col-sm-5">
|
46
48
|
<label for="new_user_name_skel" class="sr-only"><%= t('sufia.account_label') %> (without the <%= t('sufia.directory.suffix') %> part)</label>
|
47
49
|
<%= text_field_tag 'new_user_name_skel', nil %>
|
@@ -59,10 +61,9 @@
|
|
59
61
|
</div>
|
60
62
|
</div>
|
61
63
|
|
62
|
-
<
|
63
|
-
|
64
|
+
<h2>Share work with groups of users</h2>
|
65
|
+
<p class="sr-only">Use the add button to give access to one group at a time (it will be added to the list below).</p>
|
64
66
|
<div class="form-group row">
|
65
|
-
<p class="sr-only">Use the add button to give access to one group at a time (it will be added to the list below).</p>
|
66
67
|
<div class="col-sm-5">
|
67
68
|
<label for="new_group_name_skel" class="sr-only">Group</label>
|
68
69
|
<%= select_tag 'new_group_name_skel', options_for_select(["Select a group"] + current_user.groups), class: 'form-control' %>
|
@@ -1,60 +1,70 @@
|
|
1
|
-
<h3>Visibility</h3>
|
2
1
|
<% if f.object.embargo_release_date %>
|
3
2
|
<%= render 'form_permission_under_embargo', f: f %>
|
4
3
|
<% elsif f.object.lease_expiration_date %>
|
5
4
|
<%= render 'form_permission_under_lease', f: f %>
|
6
5
|
<% else %>
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
6
|
+
<fieldset>
|
7
|
+
<legend class="legend-save-work">Visibility</legend>
|
8
|
+
<ul class="visibility">
|
9
|
+
<li class="radio">
|
10
|
+
<label>
|
11
|
+
<%= f.radio_button :visibility, Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PUBLIC, data: { 'target': '#collapsePublic' } %>
|
12
|
+
<%= t('curation_concerns.visibility.open.label_html') %>
|
13
|
+
<div class="collapse" id="collapsePublic">
|
14
|
+
<p>
|
15
|
+
<strong>Please note</strong>, making something visible to the world (i.e.
|
16
|
+
marking this as <%= t('curation_concerns.visibility.open.label_html') %>) may be
|
17
|
+
viewed as publishing which could impact your ability to:
|
18
|
+
</p>
|
19
|
+
<ul>
|
20
|
+
<li>Patent your work</li>
|
21
|
+
<li>Publish your work in a journal</li>
|
22
|
+
</ul>
|
23
|
+
<p>
|
24
|
+
Check out <a href="http://www.sherpa.ac.uk/romeo/">SHERPA/RoMEO</a> for more
|
25
|
+
information about publisher copyright policies.
|
26
|
+
</p>
|
27
|
+
</div>
|
28
|
+
</label>
|
29
|
+
</li>
|
30
|
+
<li class="radio">
|
31
|
+
<label>
|
32
|
+
<%= f.radio_button :visibility, Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_AUTHENTICATED %>
|
33
|
+
<%= t('curation_concerns.visibility.authenticated.label_html', institution: t('curation_concerns.institution.name')) %>
|
34
|
+
</label>
|
35
|
+
</li>
|
36
|
+
<li class="radio">
|
37
|
+
<label>
|
38
|
+
<%= f.radio_button :visibility, Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_EMBARGO, data: { 'target': '#collapseEmbargo' } %>
|
39
|
+
<%= t('curation_concerns.visibility.embargo.label_html') %>
|
40
|
+
<div class="collapse" id="collapseEmbargo">
|
41
|
+
<div class="form-inline">
|
42
|
+
<%= f.input :visibility_during_embargo, wrapper: :inline, collection: visibility_options(:restrict), include_blank: false %>
|
43
|
+
<%= f.date_field :embargo_release_date, wrapper: :inline, value: f.object.embargo_release_date || Date.tomorrow, class: 'datepicker form-control' %>
|
44
|
+
<%= f.input :visibility_after_embargo, wrapper: :inline, collection: visibility_options(:loosen), include_blank: false %>
|
45
|
+
</div>
|
46
|
+
</div>
|
47
|
+
</label>
|
48
|
+
</li>
|
49
|
+
<li class="radio">
|
50
|
+
<label>
|
51
|
+
<%= f.radio_button :visibility, Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_LEASE, data: { 'target': '#collapseLease' } %>
|
52
|
+
<%= t('curation_concerns.visibility.lease.label_html') %>
|
53
|
+
<div class="collapse" id="collapseLease">
|
54
|
+
<div class="form-inline">
|
55
|
+
<%= f.input :visibility_during_lease, wrapper: :inline, collection: visibility_options(:loosen), include_blank: false %>
|
56
|
+
<%= f.date_field :lease_expiration_date, wrapper: :inline, value: f.object.lease_expiration_date || Date.tomorrow, class: 'datepicker form-control' %>
|
57
|
+
<%= f.input :visibility_after_lease, wrapper: :inline, collection: visibility_options(:restrict), include_blank: false %>
|
58
|
+
</div>
|
59
|
+
</div>
|
60
|
+
</label>
|
61
|
+
</li>
|
62
|
+
<li class="radio">
|
63
|
+
<label>
|
64
|
+
<%= f.radio_button :visibility, Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PRIVATE %>
|
65
|
+
<%= t('curation_concerns.visibility.private.label_html') %>
|
66
|
+
</label>
|
67
|
+
</li>
|
68
|
+
</ul>
|
69
|
+
</fieldset>
|
59
70
|
<% end %>
|
60
|
-
|
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
<div class="list-group-item">
|
11
11
|
<span class="badge"><%= number_of_works(user) %></span>
|
12
|
-
<span class="glyphicon glyphicon-upload"></span> <%= link_to_field('depositor', user.to_s,
|
12
|
+
<span class="glyphicon glyphicon-upload"></span> <%= link_to_field('depositor', user.to_s, t("sufia.dashboard.stats.works"), human_readable_type: "Work") %>
|
13
13
|
|
14
14
|
<ul class="views-downloads-dashboard list-unstyled">
|
15
15
|
<li><span class="badge badge-optional"><%= user.total_file_views %></span> <%= t("sufia.dashboard.stats.file_views").pluralize(user.total_file_views) %></li>
|
data/config/locales/sufia.en.yml
CHANGED
data/lib/sufia/version.rb
CHANGED
@@ -39,6 +39,7 @@ describe("DepositAgreement", function() {
|
|
39
39
|
describe("and the checkbox is not checked", function() {
|
40
40
|
it("is false", function() {
|
41
41
|
expect(target.isAccepted).toEqual(false);
|
42
|
+
expect(target.mustAgreeAgain).toEqual(false);
|
42
43
|
});
|
43
44
|
});
|
44
45
|
|
@@ -48,6 +49,7 @@ describe("DepositAgreement", function() {
|
|
48
49
|
});
|
49
50
|
it("is true", function() {
|
50
51
|
expect(target.isAccepted).toEqual(true);
|
52
|
+
expect(target.mustAgreeAgain).toEqual(false);
|
51
53
|
});
|
52
54
|
});
|
53
55
|
});
|
@@ -61,6 +63,7 @@ describe("DepositAgreement", function() {
|
|
61
63
|
|
62
64
|
it("is true", function() {
|
63
65
|
expect(target.isAccepted).toEqual(true);
|
66
|
+
expect(target.mustAgreeAgain).toEqual(false);
|
64
67
|
});
|
65
68
|
});
|
66
69
|
});
|
@@ -0,0 +1,38 @@
|
|
1
|
+
describe "tabs", ->
|
2
|
+
beforeEach ->
|
3
|
+
# run all Blacklight.onload functions
|
4
|
+
Blacklight.activate()
|
5
|
+
|
6
|
+
describe "dashboard tabs", ->
|
7
|
+
beforeEach ->
|
8
|
+
# setup the tabs like the homepage featured and recent tabs
|
9
|
+
setFixtures '<ul id="homeTabs" class="nav nav-tabs">
|
10
|
+
<li><a href="#featured_container" data-toggle="tab" role="tab" id="featureTab">Featured Works</a></li>
|
11
|
+
<li><a href="#recently_uploaded" data-toggle="tab" role="tab" id="recentTab">Recently Uploaded</a></li>
|
12
|
+
</ul>'
|
13
|
+
|
14
|
+
|
15
|
+
describe "tabNavigation", ->
|
16
|
+
|
17
|
+
it "It sets the first tab to active", ->
|
18
|
+
expect($('#homeTabs li').attr('class')).toBeUndefined()
|
19
|
+
tabNavigation();
|
20
|
+
expect($('#homeTabs li').attr('class')).toBe('active')
|
21
|
+
|
22
|
+
describe "dashboard tabs", ->
|
23
|
+
beforeEach ->
|
24
|
+
# setup the tabs like the my listing on the dashboards
|
25
|
+
setFixtures '<ul class="nav nav-tabs" id="my_nav" role="navigation">
|
26
|
+
<span class="sr-only">You are currently listing your works . You have 1 works </span>
|
27
|
+
<li>
|
28
|
+
<a href="/dashboard/works">My Works</a>
|
29
|
+
</li>
|
30
|
+
<li class="">
|
31
|
+
<a href="/dashboard/collections">My Collections</a>
|
32
|
+
</li>
|
33
|
+
</ul>'
|
34
|
+
|
35
|
+
describe "tabNavigation", ->
|
36
|
+
|
37
|
+
it "It does not error", ->
|
38
|
+
tabNavigation();
|
data/sufia.gemspec
CHANGED
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
|
|
31
31
|
spec.add_dependency 'select2-rails', '~> 3.5.9'
|
32
32
|
spec.add_dependency 'json-schema'
|
33
33
|
spec.add_dependency 'oauth'
|
34
|
-
spec.add_dependency 'nest', '~>
|
34
|
+
spec.add_dependency 'nest', '~> 2.0'
|
35
35
|
spec.add_dependency 'mailboxer', '~> 0.12'
|
36
36
|
spec.add_dependency 'acts_as_follower', '>= 0.1.1', '< 0.3'
|
37
37
|
spec.add_dependency 'carrierwave', '~> 0.9'
|
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: 7.0.0
|
4
|
+
version: 7.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justin Coyne
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2016-
|
15
|
+
date: 2016-08-01 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: curation_concerns
|
@@ -202,14 +202,14 @@ dependencies:
|
|
202
202
|
requirements:
|
203
203
|
- - "~>"
|
204
204
|
- !ruby/object:Gem::Version
|
205
|
-
version: '
|
205
|
+
version: '2.0'
|
206
206
|
type: :runtime
|
207
207
|
prerelease: false
|
208
208
|
version_requirements: !ruby/object:Gem::Requirement
|
209
209
|
requirements:
|
210
210
|
- - "~>"
|
211
211
|
- !ruby/object:Gem::Version
|
212
|
-
version: '
|
212
|
+
version: '2.0'
|
213
213
|
- !ruby/object:Gem::Dependency
|
214
214
|
name: mailboxer
|
215
215
|
requirement: !ruby/object:Gem::Requirement
|
@@ -1355,6 +1355,7 @@ files:
|
|
1355
1355
|
- spec/javascripts/single_use_link_spec.js.coffee
|
1356
1356
|
- spec/javascripts/support/jasmine.yml
|
1357
1357
|
- spec/javascripts/support/jasmine_helper.rb
|
1358
|
+
- spec/javascripts/tabs_spec.js.coffee
|
1358
1359
|
- spec/jobs/attach_files_to_work_job_spec.rb
|
1359
1360
|
- spec/jobs/batch_create_job_spec.rb
|
1360
1361
|
- spec/jobs/content_delete_event_job_spec.rb
|
@@ -1437,6 +1438,7 @@ files:
|
|
1437
1438
|
- spec/services/sufia/statistics/works/by_resource_type_spec.rb
|
1438
1439
|
- spec/services/sufia/statistics/works/count_spec.rb
|
1439
1440
|
- spec/services/sufia/statistics/works/over_time_spec.rb
|
1441
|
+
- spec/services/sufia/user_stat_importer_spec.rb
|
1440
1442
|
- spec/spec_helper.rb
|
1441
1443
|
- spec/support/features.rb
|
1442
1444
|
- spec/support/features/session_helpers.rb
|
@@ -1532,12 +1534,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1532
1534
|
version: '0'
|
1533
1535
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1534
1536
|
requirements:
|
1535
|
-
- - "
|
1537
|
+
- - ">="
|
1536
1538
|
- !ruby/object:Gem::Version
|
1537
|
-
version:
|
1539
|
+
version: '0'
|
1538
1540
|
requirements: []
|
1539
1541
|
rubyforge_project:
|
1540
|
-
rubygems_version: 2.
|
1542
|
+
rubygems_version: 2.5.1
|
1541
1543
|
signing_key:
|
1542
1544
|
specification_version: 4
|
1543
1545
|
summary: Sufia was originally extracted from ScholarSphere developed by Penn State
|
@@ -1658,6 +1660,7 @@ test_files:
|
|
1658
1660
|
- spec/javascripts/single_use_link_spec.js.coffee
|
1659
1661
|
- spec/javascripts/support/jasmine.yml
|
1660
1662
|
- spec/javascripts/support/jasmine_helper.rb
|
1663
|
+
- spec/javascripts/tabs_spec.js.coffee
|
1661
1664
|
- spec/jobs/attach_files_to_work_job_spec.rb
|
1662
1665
|
- spec/jobs/batch_create_job_spec.rb
|
1663
1666
|
- spec/jobs/content_delete_event_job_spec.rb
|
@@ -1740,6 +1743,7 @@ test_files:
|
|
1740
1743
|
- spec/services/sufia/statistics/works/by_resource_type_spec.rb
|
1741
1744
|
- spec/services/sufia/statistics/works/count_spec.rb
|
1742
1745
|
- spec/services/sufia/statistics/works/over_time_spec.rb
|
1746
|
+
- spec/services/sufia/user_stat_importer_spec.rb
|
1743
1747
|
- spec/spec_helper.rb
|
1744
1748
|
- spec/support/features.rb
|
1745
1749
|
- spec/support/features/session_helpers.rb
|