sufia 4.0.0.rc1 → 4.0.0.rc2
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 +2 -0
- data/.travis.yml +2 -2
- data/Gemfile +9 -17
- data/README.md +18 -9
- data/Rakefile +10 -5
- data/SUFIA_VERSION +1 -1
- data/app/assets/javascripts/jquery.blacklightTagCloud.js +1 -1
- data/app/assets/javascripts/sufia.js +5 -22
- data/app/assets/javascripts/sufia/batch.js +8 -0
- data/app/assets/javascripts/sufia/batch_edit.js +19 -3
- data/app/assets/javascripts/sufia/dashboard_actions.js +23 -10
- data/app/assets/javascripts/sufia/multiForm.js +2 -2
- data/app/assets/javascripts/sufia/permissions.js +10 -9
- data/app/assets/javascripts/sufia/tabs.js +20 -0
- data/app/assets/stylesheets/catalog.css.scss +5 -0
- data/app/assets/stylesheets/collections.css.scss +40 -0
- data/app/assets/stylesheets/file-listing.css.scss +37 -13
- data/app/assets/stylesheets/generic_files.css.erb +5 -0
- data/app/assets/stylesheets/header.css.scss +1 -4
- data/app/assets/stylesheets/settings.css.scss +6 -0
- data/app/assets/stylesheets/styles.css.scss +4 -3
- data/app/assets/stylesheets/sufia-audio-overrides.css +2 -2
- data/app/assets/stylesheets/sufia.css.scss +27 -5
- data/app/assets/stylesheets/tagcloud.css +5 -1
- data/app/controllers/batch_controller.rb +3 -3
- data/app/controllers/concerns/sufia/batch_edits_controller_behavior.rb +14 -1
- data/app/controllers/concerns/sufia/catalog.rb +0 -1
- data/app/controllers/concerns/sufia/controller.rb +5 -0
- data/app/controllers/concerns/sufia/dashboard_controller_behavior.rb +2 -9
- data/app/controllers/concerns/sufia/files_controller/browse_everything.rb +3 -3
- data/app/controllers/concerns/sufia/files_controller_behavior.rb +5 -1
- data/app/controllers/concerns/sufia/homepage_controller.rb +1 -1
- data/app/controllers/concerns/sufia/users_controller_behavior.rb +3 -2
- data/app/helpers/batch_edits_helper.rb +6 -0
- data/app/helpers/generic_file_helper.rb +15 -0
- data/app/helpers/sufia/blacklight_override.rb +19 -3
- data/app/helpers/sufia/dashboard_helper_behavior.rb +25 -3
- data/app/helpers/sufia/records_helper_behavior.rb +13 -5
- data/app/helpers/sufia/sufia_helper_behavior.rb +15 -12
- data/app/models/concerns/sufia/solr_document_behavior.rb +5 -36
- data/app/views/_masthead.html.erb +1 -1
- data/app/views/_user_util_links.html.erb +6 -4
- data/app/views/advanced/_advanced_search_fields.html.erb +4 -4
- data/app/views/advanced/_advanced_search_form.html.erb +14 -17
- data/app/views/advanced/index.html.erb +3 -3
- data/app/views/batch/_metadata.html.erb +22 -24
- data/app/views/batch/_more_metadata.html.erb +1 -1
- data/app/views/batch/edit.html.erb +2 -2
- data/app/views/batch_edits/_check_all.html.erb +7 -9
- data/app/views/batch_edits/_delete_selected.html.erb +1 -0
- data/app/views/batch_edits/edit.html.erb +25 -26
- data/app/views/batch_edits/update_edit.js.erb +1 -1
- data/app/views/catalog/_facet_limit.html.erb +4 -12
- data/app/views/catalog/_search_form.html.erb +8 -13
- data/app/views/collections/_action_menu.html.erb +2 -2
- data/app/views/collections/_collection.html.erb +10 -31
- data/app/views/collections/_document_list.html.erb +1 -1
- data/app/views/collections/_edit_actions.html.erb +2 -2
- data/app/views/collections/_edit_descriptions.html.erb +3 -5
- data/app/views/collections/_form.html.erb +8 -10
- data/app/views/collections/_media_display.html.erb +1 -1
- data/app/views/collections/_show_actions.html.erb +5 -5
- data/app/views/collections/_show_descriptions.html.erb +13 -8
- data/app/views/collections/_show_document_list.html.erb +17 -0
- data/app/views/collections/_show_document_list_menu.html.erb +24 -0
- data/app/views/collections/_show_document_list_row.html.erb +63 -0
- data/app/views/collections/edit.html.erb +2 -2
- data/app/views/collections/show.html.erb +28 -19
- data/app/views/contact_form/new.html.erb +21 -29
- data/app/views/dashboard/_index_partials/_contents.html.erb +14 -0
- data/app/views/dashboard/_index_partials/_heading_actions.html.erb +18 -0
- data/app/views/dashboard/_index_partials/_heading_greetings.html.erb +8 -0
- data/app/views/dashboard/_index_partials/_stats.html.erb +6 -2
- data/app/views/dashboard/index.html.erb +5 -37
- data/app/views/generic_files/_breadcrumbs.html.erb +2 -0
- data/app/views/generic_files/_browse_everything.html.erb +2 -2
- data/app/views/generic_files/_descriptions.html.erb +4 -6
- data/app/views/generic_files/_field_form.html.erb +2 -2
- data/app/views/generic_files/_generic_file.html.erb +8 -29
- data/app/views/generic_files/_groups_description.html.erb +5 -4
- data/app/views/generic_files/_permission.html.erb +2 -2
- data/app/views/generic_files/_permission_form.html.erb +62 -77
- data/app/views/generic_files/_rights_modal.html.erb +0 -2
- data/app/views/generic_files/_share_with.html.erb +14 -0
- data/app/views/generic_files/_show_actions.html.erb +1 -1
- data/app/views/generic_files/_show_collections.html.erb +17 -0
- data/app/views/generic_files/_show_descriptions.html.erb +2 -2
- data/app/views/generic_files/_versioning.html.erb +2 -2
- data/app/views/generic_files/_visibility.html.erb +17 -0
- data/app/views/generic_files/show.html.erb +39 -2
- data/app/views/generic_files/stats.html.erb +1 -1
- data/app/views/generic_files/upload/_form_fields.html.erb +2 -2
- data/app/views/generic_files/upload/_local_file_import_chooser.html.erb +1 -1
- data/app/views/generic_files/upload/_script_templates.html.erb +2 -2
- data/app/views/generic_files/upload/_tos_checkbox.html.erb +3 -3
- data/app/views/homepage/_home_content.html.erb +0 -9
- data/app/views/homepage/_home_header.html.erb +1 -1
- data/app/views/homepage/_recent_document.html.erb +2 -2
- data/app/views/layouts/_head_tag_content.html.erb +7 -1
- data/app/views/layouts/sufia-dashboard.html.erb +4 -2
- data/app/views/layouts/sufia-one-column.html.erb +1 -1
- data/app/views/my/_action_menu.html.erb +1 -1
- data/app/views/my/_collection_action_menu.html.erb +3 -3
- data/app/views/my/_constraints.html.erb +11 -0
- data/app/views/my/_document_list.html.erb +1 -1
- data/app/views/my/_facet_limit.html.erb +4 -12
- data/app/views/my/_facets.html.erb +1 -3
- data/app/views/my/_index_partials/_default_group.html.erb +2 -3
- data/app/views/my/_index_partials/_list_collections.html.erb +17 -11
- data/app/views/my/_index_partials/_list_files.html.erb +20 -24
- data/app/views/my/_search_header.html.erb +5 -0
- data/app/views/my/_sort_and_per_page.html.erb +11 -7
- data/app/views/my/index.html.erb +9 -15
- data/app/views/records/_edit_field.html.erb +14 -10
- data/app/views/records/edit_fields/_default.html.erb +6 -0
- data/app/views/records/edit_fields/_description.html.erb +3 -7
- data/app/views/records/edit_fields/_resource_type.html.erb +4 -6
- data/app/views/records/edit_fields/_rights.html.erb +4 -5
- data/app/views/records/edit_fields/_suffix.html.erb +6 -3
- data/app/views/records/edit_fields/_type.html.erb +7 -12
- data/app/views/{generic_files → records}/show_fields/_based_near.html.erb +1 -1
- data/app/views/{generic_files → records}/show_fields/_contributor.html.erb +2 -2
- data/app/views/records/show_fields/_creator.html.erb +6 -0
- data/app/views/{generic_files → records}/show_fields/_date_created.html.erb +1 -1
- data/app/views/records/show_fields/_default.html.erb +6 -0
- data/app/views/records/show_fields/_description.html.erb +6 -0
- data/app/views/records/show_fields/_identifier.html.erb +4 -0
- data/app/views/{generic_files → records}/show_fields/_language.html.erb +1 -1
- data/app/views/{generic_files → records}/show_fields/_publisher.html.erb +1 -1
- data/app/views/records/show_fields/_related_url.html.erb +6 -0
- data/app/views/{generic_files → records}/show_fields/_resource_type.html.erb +1 -1
- data/app/views/{generic_files → records}/show_fields/_rights.html.erb +1 -1
- data/app/views/{generic_files → records}/show_fields/_subject.html.erb +1 -1
- data/app/views/{generic_files → records}/show_fields/_tag.html.erb +1 -1
- data/app/views/records/show_fields/_title.html.erb +6 -0
- data/app/views/shared/_attributes.html.erb +27 -0
- data/app/views/static/agreement.html.erb +1 -1
- data/app/views/users/_activity_log.html.erb +0 -2
- data/app/views/users/_follower_modal.html.erb +27 -23
- data/app/views/users/_following_modal.html.erb +27 -23
- data/app/views/users/_social_media_info.html.erb +4 -4
- data/app/views/users/_trophy_edit.html.erb +5 -7
- data/app/views/users/_user_info.html.erb +3 -3
- data/app/views/users/_user_util_links_extra.html.erb +4 -0
- data/app/views/users/edit.html.erb +28 -33
- data/app/views/users/index.html.erb +1 -1
- data/app/views/users/show.html.erb +0 -4
- data/config/jetty.yml +1 -1
- data/config/locales/sufia.en.yml +53 -12
- data/lib/generators/sufia/install_generator.rb +89 -0
- data/lib/generators/sufia/templates/catalog_controller.rb +1 -1
- data/lib/generators/sufia/upgrade400_generator.rb +4 -0
- data/lib/sufia.rb +1 -10
- data/lib/sufia/version.rb +1 -1
- data/solr_conf/conf/solrconfig.xml +31 -17
- data/spec/actors/generic_file/actor_spec.rb +17 -0
- data/spec/controllers/batch_controller_spec.rb +2 -2
- data/spec/controllers/batch_edits_controller_spec.rb +24 -19
- data/spec/controllers/catalog_controller_spec.rb +23 -12
- data/spec/controllers/collections_controller_spec.rb +19 -17
- data/spec/controllers/dashboard_controller_spec.rb +5 -19
- data/spec/controllers/generic_files_controller_spec.rb +35 -20
- data/spec/controllers/homepage_controller_spec.rb +25 -2
- data/spec/controllers/users_controller_spec.rb +99 -102
- data/spec/factories/generic_files.rb +2 -2
- data/spec/factories/users.rb +32 -2
- data/spec/features/browse_dashboard_files_spec.rb +14 -2
- data/spec/features/browse_files_spec.rb +5 -1
- data/spec/features/catalog_search_spec.rb +7 -6
- data/spec/features/collection_spec.rb +43 -33
- data/spec/features/display_dashboard_spec.rb +25 -22
- data/spec/features/notifications_spec.rb +9 -4
- data/spec/features/users_spec.rb +34 -25
- data/spec/fixtures/1.5mb-avatar.jpg +0 -0
- data/spec/helpers/batch_edits_helper_spec.rb +38 -0
- data/spec/helpers/dashboard_helper_spec.rb +16 -5
- data/spec/helpers/generic_file_helper_spec.rb +41 -0
- data/spec/helpers/records_helper_spec.rb +12 -0
- data/spec/jobs/active_fedora_pid_based_job_spec.rb +1 -1
- data/spec/jobs/audit_job_spec.rb +2 -3
- data/spec/jobs/batch_update_job_spec.rb +39 -24
- data/spec/jobs/event_jobs_spec.rb +1 -1
- data/spec/lib/sufia/id_service_spec.rb +25 -7
- data/spec/lib/sufia/messages_spec.rb +60 -0
- data/spec/lib/sufia/readable_permissions_spec.rb +56 -0
- data/spec/lib/sufia/writable_permissions_spec.rb +20 -0
- data/spec/models/batch_spec.rb +1 -1
- data/spec/models/collection_spec.rb +24 -2
- data/spec/models/featured_work_spec.rb +2 -2
- data/spec/models/file_content_datastream_spec.rb +5 -5
- data/spec/models/generic_file_spec.rb +149 -133
- data/spec/models/local_authority_spec.rb +1 -1
- data/spec/models/user_spec.rb +33 -6
- data/spec/spec_helper.rb +7 -10
- data/spec/{support → test_app_templates}/lib/generators/test_app_generator.rb +11 -6
- data/spec/views/batch/edit.html.erb_spec.rb +8 -2
- data/spec/views/catalog/index.html.erb_spec.rb +34 -0
- data/spec/views/catalog/{sort_and_per_pange.html.erb_spec.rb → sort_and_per_page.html.erb_spec.rb} +0 -0
- data/spec/views/collections/_form.html.erb_spec.rb +32 -0
- data/spec/views/collections/_show_descriptions.html.erb_spec.rb +25 -0
- data/spec/views/dashboard/index_spec.rb +33 -4
- data/spec/views/generic_file/_breadcrumbs.html.erb_spec.rb +32 -0
- data/spec/views/generic_file/show.html.erb_spec.rb +273 -8
- data/spec/views/users/_user_util_links.html.erb_spec.rb +25 -0
- data/sufia-models/app/actors/sufia/generic_file/actor.rb +14 -5
- data/sufia-models/{lib/sufia/models → app}/jobs/active_fedora_pid_based_job.rb +0 -0
- data/sufia-models/{lib/sufia/models → app}/jobs/audit_job.rb +4 -10
- data/sufia-models/{lib/sufia/models → app}/jobs/batch_update_job.rb +22 -18
- data/sufia-models/{lib/sufia/models → app}/jobs/characterize_job.rb +0 -0
- data/sufia-models/{lib/sufia/models → app}/jobs/create_derivatives_job.rb +0 -0
- data/sufia-models/{lib/sufia/models → app}/jobs/import_url_job.rb +0 -0
- data/sufia-models/{lib/sufia/models → app}/jobs/resolrize_job.rb +0 -0
- data/sufia-models/app/models/collection.rb +1 -39
- data/sufia-models/{lib → app/models/concerns}/sufia/ability.rb +0 -0
- data/sufia-models/app/models/concerns/sufia/collection.rb +55 -0
- data/sufia-models/app/models/concerns/sufia/generic_file.rb +5 -11
- data/sufia-models/app/models/concerns/sufia/generic_file/audit.rb +1 -2
- data/sufia-models/app/models/concerns/sufia/generic_file/characterization.rb +4 -2
- data/sufia-models/app/models/concerns/sufia/generic_file/full_text_indexing.rb +27 -0
- data/sufia-models/app/models/concerns/sufia/generic_file/mime_types.rb +1 -0
- data/sufia-models/app/models/concerns/sufia/generic_file/permissions.rb +2 -49
- data/sufia-models/{lib/sufia/models → app/models/concerns/sufia}/model_methods.rb +0 -0
- data/sufia-models/app/models/concerns/sufia/user.rb +8 -1
- data/sufia-models/app/models/sufia/avatar_uploader.rb +2 -3
- data/sufia-models/app/services/sufia/noid.rb +9 -0
- data/sufia-models/config/locales/sufia.en.yml +1 -0
- data/sufia-models/lib/generators/sufia/models/fulltext_generator.rb +27 -0
- data/sufia-models/lib/generators/sufia/models/install_generator.rb +7 -0
- data/sufia-models/lib/generators/sufia/models/templates/config/analytics.yml +5 -5
- data/sufia-models/lib/generators/sufia/models/templates/config/solrconfig.xml +177 -0
- data/sufia-models/lib/generators/sufia/models/templates/config/sufia.rb +3 -1
- data/sufia-models/lib/generators/sufia/models/upgrade400_generator.rb +7 -0
- data/sufia-models/lib/sufia/messages.rb +67 -0
- data/sufia-models/lib/sufia/models.rb +2 -0
- data/sufia-models/lib/sufia/models/active_fedora/redis.rb +0 -6
- data/sufia-models/lib/sufia/models/engine.rb +1 -3
- data/sufia-models/lib/sufia/models/resque.rb +1 -1
- data/sufia-models/lib/sufia/models/version.rb +1 -1
- data/sufia-models/lib/sufia/permissions.rb +9 -0
- data/sufia-models/lib/sufia/permissions/readable.rb +20 -0
- data/sufia-models/lib/sufia/permissions/writable.rb +56 -0
- data/sufia-models/lib/tasks/sufia-models_tasks.rake +58 -2
- data/sufia-models/sufia-models.gemspec +11 -11
- data/sufia.gemspec +19 -9
- data/tasks/jetty.rake +6 -5
- data/tasks/sufia-dev.rake +4 -77
- metadata +235 -72
- data/app/assets/images/folder.png +0 -0
- data/app/views/collections/show_fields/_creator.html.erb +0 -11
- data/app/views/collections/show_fields/_description.html.erb +0 -8
- data/app/views/collections/show_fields/_title.html.erb +0 -8
- data/app/views/generic_files/edit_fields/_default.html.erb +0 -6
- data/app/views/generic_files/edit_fields/_description.html.erb +0 -5
- data/app/views/generic_files/edit_fields/_resource_type.html.erb +0 -6
- data/app/views/generic_files/edit_fields/_rights.html.erb +0 -6
- data/app/views/generic_files/edit_fields/_suffix.html.erb +0 -9
- data/app/views/generic_files/show_fields/_creator.html.erb +0 -7
- data/app/views/generic_files/show_fields/_default.html.erb +0 -6
- data/app/views/generic_files/show_fields/_description.html.erb +0 -7
- data/app/views/generic_files/show_fields/_identifier.html.erb +0 -4
- data/app/views/generic_files/show_fields/_related_url.html.erb +0 -6
- data/app/views/generic_files/show_fields/_title.html.erb +0 -7
- data/lib/generators/sufia/sufia_generator.rb +0 -89
- data/spec/active_fedora/unsaved_digital_object_spec.rb +0 -35
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 88a671be1433e1c547df206f1ebb565b0f9f7f35
|
|
4
|
+
data.tar.gz: 4c2809c2f8252ba717431ecc9d32816722916d8e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c94f29af9b894337d7c6b6222c8371e3671b13aeb1d8d1fde54acb3858ca231b123102c3e452b23bc4c88339bcc7e0fe0c12f44bf6c76f8c3fa3e83578bee8c0
|
|
7
|
+
data.tar.gz: 5622829fa0cd2330279dad596a89cf01988e5865f86b4f05a2ccf375aaf7985d463215bdb1f3bc38fedb470dce6e9ec5c1652a96d430a4a9b9798bfbc508ad3b
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
|
@@ -3,26 +3,18 @@ source 'https://rubygems.org'
|
|
|
3
3
|
# Please see sufia.gemspec for dependency information.
|
|
4
4
|
gemspec
|
|
5
5
|
|
|
6
|
-
|
|
7
6
|
# Required for doing pagination inside an engine. See https://github.com/amatsuda/kaminari/pull/322
|
|
8
7
|
gem 'kaminari', github: 'harai/kaminari', branch: 'route_prefix_prototype'
|
|
9
8
|
gem 'sufia-models', path: './sufia-models'
|
|
10
|
-
gem 'sass-rails', '~> 4.0.
|
|
9
|
+
gem 'sass-rails', '~> 4.0.3'
|
|
11
10
|
|
|
12
11
|
group :development, :test do
|
|
13
|
-
gem
|
|
14
|
-
gem
|
|
15
|
-
gem 'launchy' unless ENV['TRAVIS']
|
|
16
|
-
gem 'byebug' unless ENV['TRAVIS']
|
|
17
|
-
gem 'capybara'
|
|
18
|
-
gem 'poltergeist'
|
|
19
|
-
gem "jettywrapper"
|
|
20
|
-
gem "factory_girl_rails"
|
|
21
|
-
gem "devise"
|
|
22
|
-
gem 'jquery-rails'
|
|
23
|
-
gem 'turbolinks'
|
|
24
|
-
gem "bootstrap-sass"
|
|
25
|
-
gem "simplecov", :require => false
|
|
26
|
-
gem "spring"
|
|
27
|
-
gem 'database_cleaner'
|
|
12
|
+
gem "simplecov", require: false
|
|
13
|
+
gem "byebug", require: false
|
|
28
14
|
end # (leave this comment here to catch a stray line inserted by blacklight!)
|
|
15
|
+
|
|
16
|
+
file = File.expand_path("Gemfile", ENV['ENGINE_CART_DESTINATION'] || ENV['RAILS_ROOT'] || File.expand_path("../spec/internal", __FILE__))
|
|
17
|
+
if File.exists?(file)
|
|
18
|
+
puts "Loading #{file} ..." if $DEBUG # `ruby -d` or `bundle -v`
|
|
19
|
+
instance_eval File.read(file)
|
|
20
|
+
end
|
data/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Please Note!
|
|
4
4
|
Sufia is currently in transition to a new 4.0 release scheduled for late summer 2014. If wish to use Sufia now,
|
|
5
|
-
please ensure you using version 3.7.2, available from RubyGems.org.
|
|
5
|
+
please ensure you using version 3.7.2, available from RubyGems.org. For documentation specific to this version,
|
|
6
6
|
please consult the [Sufia 3.7.2 documentation](http://rubydoc.info/gems/sufia/3.7.2/frames).
|
|
7
7
|
|
|
8
8
|
If you have questions or need help, please email `hydra-tech@googlegroups.com`
|
|
@@ -21,7 +21,7 @@ Sufia has the following features:
|
|
|
21
21
|
* Version control
|
|
22
22
|
* Characterization of uploaded files
|
|
23
23
|
* Forms for batch editing metadata
|
|
24
|
-
* Faceted search and browse
|
|
24
|
+
* Faceted search and browse
|
|
25
25
|
* Social media interaction
|
|
26
26
|
* User profiles
|
|
27
27
|
* User dashboard for file management
|
|
@@ -31,7 +31,15 @@ Sufia has the following features:
|
|
|
31
31
|
* Activity streams
|
|
32
32
|
* Background jobs
|
|
33
33
|
* Single-use links
|
|
34
|
-
* Analytics
|
|
34
|
+
* Google Analytics for usage statistics
|
|
35
|
+
* Integration w/ cloud storage providers
|
|
36
|
+
* Google Scholar-specific metadata embedding
|
|
37
|
+
* Schema.org microdata, Open Graph meta tags, and Twitter cards for rich snippets
|
|
38
|
+
* User-managed collections for grouping files
|
|
39
|
+
* Full-text indexing & searching
|
|
40
|
+
* Responsive, fluid, Bootstrap 3-based UI
|
|
41
|
+
* Dynamically configurable featured works and researchers on homepage
|
|
42
|
+
* Proxy deposit and transfers of ownership (coming soon!)
|
|
35
43
|
|
|
36
44
|
## Sufia needs the following software to work:
|
|
37
45
|
1. Solr
|
|
@@ -57,7 +65,7 @@ Note the line with kaminari listed as a dependency. This is a temporary fix to
|
|
|
57
65
|
|
|
58
66
|
### Run the sufia generator
|
|
59
67
|
```
|
|
60
|
-
rails
|
|
68
|
+
rails generate sufia:install -f
|
|
61
69
|
```
|
|
62
70
|
|
|
63
71
|
### Run the migrations
|
|
@@ -66,10 +74,10 @@ rails g sufia -f
|
|
|
66
74
|
rake db:migrate
|
|
67
75
|
```
|
|
68
76
|
|
|
69
|
-
### Get a copy of
|
|
77
|
+
### Get a copy of jetty (Solr and Fedora)
|
|
70
78
|
```
|
|
71
79
|
rake jetty:clean
|
|
72
|
-
rake jetty:config
|
|
80
|
+
rake sufia:jetty:config
|
|
73
81
|
rake jetty:start
|
|
74
82
|
```
|
|
75
83
|
|
|
@@ -84,9 +92,10 @@ Add this line:
|
|
|
84
92
|
```*= require_tree .```
|
|
85
93
|
|
|
86
94
|
_Removing the require_tree from application.css will ensure you're not loading the blacklight.css. This is because blacklight's css styling does not mix well with sufia's default styling._
|
|
95
|
+
|
|
87
96
|
#### Modify app/assets/javascripts/application.js
|
|
88
97
|
|
|
89
|
-
Add this line:
|
|
98
|
+
Add this line at the bottom of the file:
|
|
90
99
|
```
|
|
91
100
|
//= require sufia
|
|
92
101
|
```
|
|
@@ -200,8 +209,8 @@ Sufia provides a tag cloud on the home page. To change which field is displayed
|
|
|
200
209
|
```ruby
|
|
201
210
|
configure_blacklight do |config|
|
|
202
211
|
...
|
|
203
|
-
|
|
204
|
-
# Specify which field to use in the tag cloud on the homepage.
|
|
212
|
+
|
|
213
|
+
# Specify which field to use in the tag cloud on the homepage.
|
|
205
214
|
# To disable the tag cloud, comment out this line.
|
|
206
215
|
config.tag_cloud_field_name = Solrizer.solr_name("desc_metadata__tag", :facetable)
|
|
207
216
|
end
|
data/Rakefile
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env rake
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
begin
|
|
4
|
+
require 'bundler/setup'
|
|
5
|
+
rescue LoadError
|
|
6
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
Bundler::GemHelper.install_tasks
|
|
5
10
|
|
|
6
|
-
|
|
7
|
-
|
|
11
|
+
Dir.glob('tasks/*.rake').each { |r| import r }
|
|
12
|
+
import 'sufia-models/lib/tasks/sufia-models_tasks.rake'
|
|
8
13
|
|
|
9
|
-
task :
|
|
14
|
+
task default: :ci
|
data/SUFIA_VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
4.0.0.
|
|
1
|
+
4.0.0.rc2
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
var $tagCloud = $(this)
|
|
18
18
|
$.ajax({url:"/catalog/facet/"+facet_name+".json"}).done(function(data) {
|
|
19
19
|
data.response.facets.items.map(function(item) {
|
|
20
|
-
$tagCloud.append('<li rel="'+item.hits+'" title="'+item.value+'"><a href="
|
|
20
|
+
$tagCloud.append('<li rel="'+item.hits+'" title="'+item.value+'"><a href="/catalog?f['+facet_name+'][]='+item.value+'">'+item.value+' </a><span class="badge facet-count">'+item.hits+'</span></li>');
|
|
21
21
|
});
|
|
22
22
|
$tagCloud.tagcloud(options);
|
|
23
23
|
$tagCloud.children().tsort({attr:'title', order:'asc'});
|
|
@@ -41,8 +41,10 @@
|
|
|
41
41
|
//= require sufia/search
|
|
42
42
|
//= require sufia/editor
|
|
43
43
|
//= require sufia/ga_events
|
|
44
|
+
//= require sufia/tabs
|
|
44
45
|
//= require hydra/batch_select
|
|
45
46
|
//= require sufia/dashboard_actions
|
|
47
|
+
//= require sufia/batch
|
|
46
48
|
//= require hydra_collections
|
|
47
49
|
//= require browse_everything
|
|
48
50
|
//= require jquery.blacklightTagCloud
|
|
@@ -95,25 +97,6 @@ Blacklight.onLoad(function() {
|
|
|
95
97
|
});
|
|
96
98
|
};
|
|
97
99
|
|
|
98
|
-
// show/hide more information on the dashboard when clicking
|
|
99
|
-
// plus/minus
|
|
100
|
-
$('.glyphicon-plus').on('click', function() {
|
|
101
|
-
var button = $(this);
|
|
102
|
-
//this.id format: "expand_NNNNNNNNNN"
|
|
103
|
-
var array = this.id.split("expand_");
|
|
104
|
-
if (array.length > 1) {
|
|
105
|
-
var docId = array[1];
|
|
106
|
-
$("#detail_" + docId + " .expanded-details").slideToggle();
|
|
107
|
-
button.toggleClass('glyphicon-plus glyphicon-minus');
|
|
108
|
-
}
|
|
109
|
-
return false;
|
|
110
|
-
});
|
|
111
|
-
|
|
112
|
-
$('#add_descriptions').click(function() {
|
|
113
|
-
$('#more_descriptions').show();
|
|
114
|
-
$('#add_descriptions').hide();
|
|
115
|
-
return false;
|
|
116
|
-
});
|
|
117
100
|
|
|
118
101
|
$("a[rel=popover]").click(function() { return false;});
|
|
119
102
|
|
|
@@ -123,7 +106,7 @@ Blacklight.onLoad(function() {
|
|
|
123
106
|
$(".tagcloud").blacklightTagCloud({
|
|
124
107
|
size: {start: 0.9, end: 2.5, unit: 'em'},
|
|
125
108
|
cssHooks: {granularity: 15},
|
|
126
|
-
|
|
109
|
+
color: {start: '#0F0', end: '#F00'}
|
|
127
110
|
});
|
|
128
111
|
|
|
129
112
|
|
|
@@ -132,11 +115,11 @@ Blacklight.onLoad(function() {
|
|
|
132
115
|
*/
|
|
133
116
|
$("li.expandable").click(function(){
|
|
134
117
|
$(this).next("ul").slideToggle();
|
|
135
|
-
$(this).find('i').toggleClass("glyphicon glyphicon-chevron-down");
|
|
118
|
+
$(this).find('i').toggleClass("glyphicon-chevron-right glyphicon-chevron-down");
|
|
136
119
|
});
|
|
137
120
|
|
|
138
121
|
$("li.expandable_new").click(function(){
|
|
139
|
-
$(this).find('i').toggleClass("glyphicon glyphicon-chevron-down");
|
|
122
|
+
$(this).find('i').toggleClass("glyphicon-chevron-right glyphicon-chevron-down");
|
|
140
123
|
});
|
|
141
124
|
|
|
142
125
|
$(".sorts-dash").click(function(){
|
|
@@ -108,7 +108,7 @@ function batch_edit_init () {
|
|
|
108
108
|
$("#status_" + key).html("Changes Saved");
|
|
109
109
|
$(save_button).removeAttr("disabled");
|
|
110
110
|
$(outer_div).removeClass("loading");
|
|
111
|
-
$('#' + form_id).children([".
|
|
111
|
+
$('#' + form_id).children([".form-group"]).removeClass('hidden')
|
|
112
112
|
}
|
|
113
113
|
|
|
114
114
|
function before_ajax(form_id) {
|
|
@@ -117,7 +117,7 @@ function batch_edit_init () {
|
|
|
117
117
|
var outer_div = "#collapse_" + key;
|
|
118
118
|
$(save_button).attr("disabled", "disabled");
|
|
119
119
|
$(outer_div).addClass("loading");
|
|
120
|
-
$('#' + form_id).children([".
|
|
120
|
+
$('#' + form_id).children([".form-group"]).addClass('hidden')
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
|
|
@@ -151,14 +151,30 @@ function batch_edit_init () {
|
|
|
151
151
|
setTimeout(ajaxManager.runNow(), 100);
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
+
function enable_show_hide_links() {
|
|
155
|
+
// Show/hide field details when clicking on a link with ID "expand_link_XXX".
|
|
156
|
+
// We expect to find an element named detail_XXX in addition to the expand_link_XXX.
|
|
157
|
+
// The "detail_XXX" element has the chevron icon.
|
|
158
|
+
$('.glyphicon-chevron-right-helper').on('click', function() {
|
|
159
|
+
var array = this.id.split("expand_link_");
|
|
160
|
+
if (array.length > 1) {
|
|
161
|
+
var docId = array[1];
|
|
162
|
+
$("#detail_" + docId + " .expanded-details").slideToggle();
|
|
163
|
+
var button = $("#expand_" + docId);
|
|
164
|
+
button.toggleClass('glyphicon-chevron-right glyphicon-chevron-down');
|
|
165
|
+
}
|
|
166
|
+
return false;
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
|
|
154
170
|
$("#permissions_save").click(runSave);
|
|
155
171
|
$(".field-save").click(runSave);
|
|
172
|
+
enable_show_hide_links();
|
|
156
173
|
|
|
157
174
|
}
|
|
158
175
|
|
|
159
176
|
|
|
160
177
|
|
|
161
|
-
|
|
162
178
|
// turbolinks triggers page:load events on page transition
|
|
163
179
|
// If app isn't using turbolinks, this event will never be triggered, no prob.
|
|
164
180
|
$(document).on('page:load', function() {
|
|
@@ -1,13 +1,26 @@
|
|
|
1
1
|
Blacklight.onLoad(function() {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
2
|
+
// toggle button on or off based on boxes being clicked
|
|
3
|
+
$(".batch_document_selector, .batch_document_selector_all").bind('click', function(e) {
|
|
4
|
+
var n = $(".batch_document_selector:checked").length;
|
|
5
|
+
if (n>0 || ($('input#check_all').length && $('input#check_all')[0].checked)) {
|
|
6
|
+
$('.sort-toggle').hide();
|
|
7
|
+
} else {
|
|
8
|
+
$('.sort-toggle').show();
|
|
9
|
+
}
|
|
10
|
+
});
|
|
10
11
|
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
// show/hide more information on the dashboard when clicking
|
|
13
|
+
// plus/minus
|
|
14
|
+
$('.glyphicon-chevron-right').on('click', function() {
|
|
15
|
+
var button = $(this);
|
|
16
|
+
//this.id format: "expand_NNNNNNNNNN"
|
|
17
|
+
var array = this.id.split("expand_");
|
|
18
|
+
if (array.length > 1) {
|
|
19
|
+
var docId = array[1];
|
|
20
|
+
$("#detail_" + docId + " .expanded-details").slideToggle();
|
|
21
|
+
button.toggleClass('glyphicon-chevron-right glyphicon-chevron-down');
|
|
22
|
+
}
|
|
23
|
+
return false;
|
|
24
|
+
});
|
|
13
25
|
|
|
26
|
+
});
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
var settings = $.extend( { }, options);
|
|
7
7
|
|
|
8
8
|
function addField() {
|
|
9
|
-
count = $(this).closest('.
|
|
9
|
+
count = $(this).closest('.form-group').find('input').size();
|
|
10
10
|
var cloneId = this.id.replace("submit", "clone");
|
|
11
11
|
var newId = this.id.replace("submit", "elements");
|
|
12
12
|
var cloneElem = $('#'+cloneId).clone();
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
textFields = cloneElem.find('input[type=text]')
|
|
30
30
|
$.each(textFields, function(n, tf) {
|
|
31
31
|
newName = $(tf).attr('name').replace('[0]', '['+count+']');
|
|
32
|
-
$(tf).attr('name', newName).
|
|
32
|
+
$(tf).attr('name', newName).val('').attr("required", false)
|
|
33
33
|
})
|
|
34
34
|
|
|
35
35
|
if (settings.afterAdd) {
|
|
@@ -44,9 +44,9 @@ Blacklight.onLoad(function() {
|
|
|
44
44
|
return false;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
if ($('#new_user_name_skel').val() == $('#file_owner').
|
|
48
|
-
$('#permissions_error_text').html("Cannot change
|
|
49
|
-
$('#permissions_error').
|
|
47
|
+
if ( ($('#new_user_name_skel').val()+$('.add-on').text()) == $('#file_owner').data('depositor') ) {
|
|
48
|
+
$('#permissions_error_text').html("Cannot change depositor permissions.");
|
|
49
|
+
$('#permissions_error').removeClass('hidden');
|
|
50
50
|
$('#new_user_name_skel').val('');
|
|
51
51
|
$('#new_user_name_skel').focus();
|
|
52
52
|
return false;
|
|
@@ -54,12 +54,12 @@ Blacklight.onLoad(function() {
|
|
|
54
54
|
|
|
55
55
|
if (!is_permission_duplicate($('#new_user_name_skel').val())) {
|
|
56
56
|
$('#permissions_error_text').html("This user already has a permission.");
|
|
57
|
-
$('#permissions_error').
|
|
57
|
+
$('#permissions_error').removeClass('hidden');
|
|
58
58
|
$('#new_user_name_skel').focus();
|
|
59
59
|
return false;
|
|
60
60
|
}
|
|
61
61
|
$('#permissions_error').html();
|
|
62
|
-
$('#permissions_error').
|
|
62
|
+
$('#permissions_error').addClass('hidden');
|
|
63
63
|
|
|
64
64
|
var un = $('#new_user_name_skel').val();
|
|
65
65
|
var perm_form = $('#new_user_permission_skel').val();
|
|
@@ -84,12 +84,12 @@ Blacklight.onLoad(function() {
|
|
|
84
84
|
|
|
85
85
|
if (!is_permission_duplicate($('#new_group_name_skel').val())) {
|
|
86
86
|
$('#permissions_error_text').html("This group already has a permission.");
|
|
87
|
-
$('#permissions_error').
|
|
87
|
+
$('#permissions_error').removeClass('hidden');
|
|
88
88
|
$('#new_group_name_skel').focus();
|
|
89
89
|
return false;
|
|
90
90
|
}
|
|
91
91
|
$('#permissions_error').html();
|
|
92
|
-
$('#permissions_error').
|
|
92
|
+
$('#permissions_error').addClass('hidden');
|
|
93
93
|
// clear out the elements to add more
|
|
94
94
|
$('#new_group_name_skel').val('');
|
|
95
95
|
$('#new_group_permission_skel').val('none');
|
|
@@ -118,7 +118,7 @@ Blacklight.onLoad(function() {
|
|
|
118
118
|
var td2 = $(document.createElement('td'));
|
|
119
119
|
var remove = $('<button class="btn close">X</button>');
|
|
120
120
|
|
|
121
|
-
$('#save_perm_note').
|
|
121
|
+
$('#save_perm_note').removeClass('hidden');
|
|
122
122
|
|
|
123
123
|
$('#new_perms').append(td1);
|
|
124
124
|
$('#new_perms').append(td2);
|
|
@@ -143,8 +143,9 @@ Blacklight.onLoad(function() {
|
|
|
143
143
|
|
|
144
144
|
$('.remove_perm').on('click', function() {
|
|
145
145
|
var top = $(this).parent().parent();
|
|
146
|
-
top.
|
|
146
|
+
top.addClass('hidden'); // do not show the block
|
|
147
147
|
top.find('.select_perm')[0].options[0].selected= true; // select the first otion which is none
|
|
148
|
+
$('#save_perm_note').removeClass('hidden');
|
|
148
149
|
return false;
|
|
149
150
|
|
|
150
151
|
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
Blacklight.onLoad(function () {
|
|
2
|
+
$('#homeTabs a, #myTab a').click(function (e) {
|
|
3
|
+
e.preventDefault();
|
|
4
|
+
$(this).tab('show');
|
|
5
|
+
});
|
|
6
|
+
$('#homeTabs a:first, #myTab a:first').tab('show'); // Select first tab
|
|
7
|
+
|
|
8
|
+
// Show the tabs in GenericFile#edit given an anchor
|
|
9
|
+
switch (window.location.hash.substring(1)) {
|
|
10
|
+
case 'versioning_display':
|
|
11
|
+
$('#edit_versioning_link a').tab('show');
|
|
12
|
+
break;
|
|
13
|
+
case 'descriptions_display':
|
|
14
|
+
$('#edit_descriptions_link a').tab('show');
|
|
15
|
+
break;
|
|
16
|
+
case 'permissions_display':
|
|
17
|
+
$('#edit_permissions_link a').tab('show');
|
|
18
|
+
break;
|
|
19
|
+
}
|
|
20
|
+
});
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
.collection_description {
|
|
2
|
+
color: #333;
|
|
3
|
+
font-family: 'Lato', Verdana, Arail, Helvetica, sans-serif;
|
|
4
|
+
font-size: 1.15em;
|
|
5
|
+
font-weight: 300;
|
|
6
|
+
line-height: 1.25em;
|
|
7
|
+
letter-spacing: .10em;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.metadata-collections dt {
|
|
11
|
+
float: left;
|
|
12
|
+
margin-right: 1em;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.collection-icon, .collection-icon-search, .collection-icon-small {
|
|
16
|
+
font-size: 12vw;
|
|
17
|
+
color: #fab801;
|
|
18
|
+
padding: 15px 0 0 10px;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.collection-icon-search {
|
|
22
|
+
font-size: 10vw;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.collection-icon-small {
|
|
26
|
+
font-size: 2vw;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
.actions-controls-collections {
|
|
31
|
+
display: block;
|
|
32
|
+
margin: 1em 0 0 1em;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.actions-controls-collections a:link,
|
|
36
|
+
.actions-controls-collections a:visited,
|
|
37
|
+
.actions-controls-collections a:hover {
|
|
38
|
+
color: #FFF;
|
|
39
|
+
text-align: center;
|
|
40
|
+
}
|