sufia 7.0.0.rc2 → 7.0.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 +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
|