curation_concerns 0.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 +7 -0
- data/.gitignore +14 -0
- data/.rspec +2 -0
- data/.travis.yml +18 -0
- data/Gemfile +31 -0
- data/LICENSE.txt +15 -0
- data/README.md +46 -0
- data/RELEASING.md +2 -0
- data/Rakefile +26 -0
- data/VERSION +1 -0
- data/app/assets/images/default.png +0 -0
- data/app/assets/images/nope.png +0 -0
- data/app/assets/javascripts/.gitkeep +0 -0
- data/app/assets/javascripts/curation_concerns/.gitkeep +0 -0
- data/app/assets/javascripts/curation_concerns/application.js +18 -0
- data/app/assets/javascripts/curation_concerns/browse_everything_implement.js +7 -0
- data/app/assets/javascripts/curation_concerns/curation_concerns.js +28 -0
- data/app/assets/javascripts/curation_concerns/embargoes.js +17 -0
- data/app/assets/javascripts/curation_concerns/facet_mine.js +22 -0
- data/app/assets/javascripts/curation_concerns/help_modal.js +36 -0
- data/app/assets/javascripts/curation_concerns/link_groups.js.coffee +123 -0
- data/app/assets/javascripts/curation_concerns/link_users.js.coffee +126 -0
- data/app/assets/javascripts/curation_concerns/proxy_rights.js.coffee +95 -0
- data/app/assets/javascripts/curation_concerns/proxy_submission.js +23 -0
- data/app/assets/javascripts/curation_concerns/select_works.js.coffee +20 -0
- data/app/assets/javascripts/modernizr.js +3 -0
- data/app/assets/stylesheets/curation_concerns/_curation_concerns.scss +9 -0
- data/app/assets/stylesheets/curation_concerns/_global-variables.scss +5 -0
- data/app/assets/stylesheets/curation_concerns/_modules.scss +13 -0
- data/app/assets/stylesheets/curation_concerns/_positioning.scss +138 -0
- data/app/assets/stylesheets/curation_concerns/_theme.scss +46 -0
- data/app/assets/stylesheets/curation_concerns/_typography.scss +137 -0
- data/app/assets/stylesheets/curation_concerns/_variables_bootstrap.scss +7 -0
- data/app/assets/stylesheets/curation_concerns/downloads.scss +3 -0
- data/app/assets/stylesheets/curation_concerns/help_requests.scss +3 -0
- data/app/assets/stylesheets/curation_concerns/modules/accessibility.scss +50 -0
- data/app/assets/stylesheets/curation_concerns/modules/accordion.scss +33 -0
- data/app/assets/stylesheets/curation_concerns/modules/attributes.scss +31 -0
- data/app/assets/stylesheets/curation_concerns/modules/classify_work.scss +100 -0
- data/app/assets/stylesheets/curation_concerns/modules/embargoes.scss +15 -0
- data/app/assets/stylesheets/curation_concerns/modules/emphatic_action_area.scss +14 -0
- data/app/assets/stylesheets/curation_concerns/modules/forms.scss +116 -0
- data/app/assets/stylesheets/curation_concerns/modules/multi_value_fields.scss +52 -0
- data/app/assets/stylesheets/curation_concerns/modules/pagination.scss +4 -0
- data/app/assets/stylesheets/curation_concerns/modules/search_results.scss +55 -0
- data/app/assets/stylesheets/curation_concerns/modules/site_actions.scss +53 -0
- data/app/assets/stylesheets/curation_concerns/modules/site_search.scss +46 -0
- data/app/controllers/catalog_controller.rb +3 -0
- data/app/controllers/collections_controller.rb +3 -0
- data/app/controllers/concerns/curation_concerns/application_controller_behavior.rb +28 -0
- data/app/controllers/concerns/curation_concerns/catalog_controller.rb +321 -0
- data/app/controllers/concerns/curation_concerns/collections_controller_behavior.rb +76 -0
- data/app/controllers/concerns/curation_concerns/curation_concern_controller.rb +125 -0
- data/app/controllers/concerns/curation_concerns/download_behavior.rb +60 -0
- data/app/controllers/concerns/curation_concerns/embargoes_controller_behavior.rb +44 -0
- data/app/controllers/concerns/curation_concerns/generic_files_controller_behavior.rb +149 -0
- data/app/controllers/concerns/curation_concerns/leases_controller_behavior.rb +36 -0
- data/app/controllers/concerns/curation_concerns/manages_embargoes.rb +26 -0
- data/app/controllers/concerns/curation_concerns/parent_container.rb +33 -0
- data/app/controllers/concerns/curation_concerns/themed_layout_controller.rb +31 -0
- data/app/controllers/concerns/curation_concerns/without_namespace.rb +15 -0
- data/app/controllers/curation_concerns/application_controller.rb +7 -0
- data/app/controllers/curation_concerns/classify_concerns_controller.rb +35 -0
- data/app/controllers/curation_concerns/generic_files_controller.rb +13 -0
- data/app/controllers/curation_concerns/permissions_controller.rb +19 -0
- data/app/controllers/downloads_controller.rb +4 -0
- data/app/controllers/embargoes_controller.rb +5 -0
- data/app/controllers/leases_controller.rb +5 -0
- data/app/controllers/registrations_controller.rb +20 -0
- data/app/controllers/sessions_controller.rb +4 -0
- data/app/datastreams/curation_concerns/generic_work_rdf_properties.rb +57 -0
- data/app/datastreams/generic_work_metadata.rb +3 -0
- data/app/forms/curation_concerns/forms/collection_edit_form.rb +17 -0
- data/app/forms/curation_concerns/forms/generic_file_edit_form.rb +15 -0
- data/app/forms/curation_concerns/forms/generic_work_edit_form.rb +9 -0
- data/app/helpers/curation_concerns/ability_helper.rb +46 -0
- data/app/helpers/curation_concerns/attribute_helper.rb +67 -0
- data/app/helpers/curation_concerns/catalog_helper.rb +38 -0
- data/app/helpers/curation_concerns/collections_helper.rb +63 -0
- data/app/helpers/curation_concerns/embargo_helper.rb +17 -0
- data/app/helpers/curation_concerns/generic_file_helper.rb +19 -0
- data/app/helpers/curation_concerns/lease_helper.rb +18 -0
- data/app/helpers/curation_concerns/main_app_helpers.rb +13 -0
- data/app/helpers/curation_concerns/render_constraints_helper.rb +42 -0
- data/app/helpers/curation_concerns/search_paths_helper.rb +13 -0
- data/app/helpers/curation_concerns/thumbnail_helper.rb +11 -0
- data/app/helpers/curation_concerns/title_helper.rb +23 -0
- data/app/helpers/curation_concerns/url_helper.rb +29 -0
- data/app/presenters/curation_concerns/collection_presenter.rb +40 -0
- data/app/presenters/curation_concerns/generic_file_presenter.rb +14 -0
- data/app/presenters/curation_concerns/generic_work_presenter.rb +13 -0
- data/app/search_builders/curation_concerns/search_builder.rb +49 -0
- data/app/services/curation_concerns/curation_concern.rb +14 -0
- data/app/services/curation_concerns/embargo_service.rb +26 -0
- data/app/services/curation_concerns/lease_service.rb +23 -0
- data/app/views/catalog/_action_menu_partials/_collection.html.erb +27 -0
- data/app/views/catalog/_action_menu_partials/_default.html.erb +27 -0
- data/app/views/catalog/_document.html.erb +3 -0
- data/app/views/catalog/_document_list.html.erb +5 -0
- data/app/views/catalog/_home_text.html.erb +8 -0
- data/app/views/catalog/_index_default.html.erb +17 -0
- data/app/views/catalog/_index_header_list_default.html.erb +8 -0
- data/app/views/catalog/_navbar.html.erb +12 -0
- data/app/views/catalog/_show_partials/_default.html.erb +22 -0
- data/app/views/catalog/_show_partials/_default_details.html.erb +15 -0
- data/app/views/catalog/_show_partials/_facets.html.erb +52 -0
- data/app/views/catalog/index.html.erb +47 -0
- data/app/views/collections/_add_to_collection_modal.html.erb +15 -0
- data/app/views/collections/_batch_edits_actions.html.erb +3 -0
- data/app/views/collections/_button_for_creating_empty_collection.html.erb +3 -0
- data/app/views/collections/_collection.html.erb +1 -0
- data/app/views/collections/_dashboard_document_list.html.erb +6 -0
- data/app/views/collections/_document_list.html.erb +7 -0
- data/app/views/collections/_edit_actions.html.erb +5 -0
- data/app/views/collections/_edit_descriptions.html.erb +20 -0
- data/app/views/collections/_form.html.erb +26 -0
- data/app/views/collections/_form_additional_information.html.erb +6 -0
- data/app/views/collections/_form_for_select_collection.html.erb +34 -0
- data/app/views/collections/_form_permission.html.erb +36 -0
- data/app/views/collections/_form_representative_image.html.erb +13 -0
- data/app/views/collections/_form_required_information.html.erb +11 -0
- data/app/views/collections/_form_to_add_member.html.erb +21 -0
- data/app/views/collections/_identifier_and_action.html.erb +15 -0
- data/app/views/collections/_media_display.html.erb +1 -0
- data/app/views/collections/_paginate.html.erb +6 -0
- data/app/views/collections/_search_collection_dashboard_form.html.erb +10 -0
- data/app/views/collections/_show_actions.html.erb +8 -0
- data/app/views/collections/_show_descriptions.html.erb +10 -0
- data/app/views/collections/_show_fields.html.erb +0 -0
- data/app/views/collections/_single_item_action_fields.html.erb +6 -0
- data/app/views/collections/_sort_and_per_page.html.erb +29 -0
- data/app/views/collections/_view_type_group.html.erb +13 -0
- data/app/views/collections/edit.html.erb +17 -0
- data/app/views/collections/show.html.erb +24 -0
- data/app/views/curation_concerns/base/_attributes.html.erb +25 -0
- data/app/views/curation_concerns/base/_collections.html.erb +26 -0
- data/app/views/curation_concerns/base/_form.html.erb +25 -0
- data/app/views/curation_concerns/base/_form_additional_information.html.erb +7 -0
- data/app/views/curation_concerns/base/_form_content_license.html.erb +16 -0
- data/app/views/curation_concerns/base/_form_descriptive_fields.erb +11 -0
- data/app/views/curation_concerns/base/_form_editors.html.erb +15 -0
- data/app/views/curation_concerns/base/_form_files_and_links.html.erb +23 -0
- data/app/views/curation_concerns/base/_form_permission.html.erb +52 -0
- data/app/views/curation_concerns/base/_form_permission_embargo.html.erb +6 -0
- data/app/views/curation_concerns/base/_form_permission_lease.html.erb +6 -0
- data/app/views/curation_concerns/base/_form_permission_under_embargo.html.erb +16 -0
- data/app/views/curation_concerns/base/_form_permission_under_lease.html.erb +18 -0
- data/app/views/curation_concerns/base/_form_representative_image.html.erb +13 -0
- data/app/views/curation_concerns/base/_form_required_information.html.erb +11 -0
- data/app/views/curation_concerns/base/_form_supplementary_fields.html.erb +15 -0
- data/app/views/curation_concerns/base/_legally_binding_text.html.erb +33 -0
- data/app/views/curation_concerns/base/_related_files.html.erb +24 -0
- data/app/views/curation_concerns/base/_representative_media.html.erb +8 -0
- data/app/views/curation_concerns/base/edit.html.erb +13 -0
- data/app/views/curation_concerns/base/new.html.erb +12 -0
- data/app/views/curation_concerns/base/show.html.erb +21 -0
- data/app/views/curation_concerns/base/unauthorized.html.erb +3 -0
- data/app/views/curation_concerns/classify_concerns/new.html.erb +25 -0
- data/app/views/curation_concerns/collections/_form_additional_information.html.erb +6 -0
- data/app/views/curation_concerns/generic_files/_actions.html.erb +16 -0
- data/app/views/curation_concerns/generic_files/_form.html.erb +35 -0
- data/app/views/curation_concerns/generic_files/_generic_file.html.erb +12 -0
- data/app/views/curation_concerns/generic_files/_media_display.html.erb +19 -0
- data/app/views/curation_concerns/generic_files/edit.html.erb +5 -0
- data/app/views/curation_concerns/generic_files/jq_upload.json.jbuilder +8 -0
- data/app/views/curation_concerns/generic_files/show.html.erb +15 -0
- data/app/views/curation_concerns/permissions/confirm.html.erb +21 -0
- data/app/views/embargoes/_embargo_history.html.erb +7 -0
- data/app/views/embargoes/_list_active_embargoes.html.erb +16 -0
- data/app/views/embargoes/_list_deactivated_embargoes.html.erb +10 -0
- data/app/views/embargoes/_list_expired_active_embargoes.html.erb +44 -0
- data/app/views/embargoes/edit.html.erb +43 -0
- data/app/views/embargoes/index.html.erb +18 -0
- data/app/views/layouts/boilerplate.html.erb +22 -0
- data/app/views/layouts/curation_concerns/1_column.html.erb +11 -0
- data/app/views/layouts/curation_concerns/catalog.html.erb +37 -0
- data/app/views/layouts/curation_concerns.html.erb +22 -0
- data/app/views/leases/_lease_history.html.erb +7 -0
- data/app/views/leases/_list_active_leases.html.erb +16 -0
- data/app/views/leases/_list_deactivated_leases.html.erb +4 -0
- data/app/views/leases/_list_expired_active_leases.html.erb +38 -0
- data/app/views/leases/edit.html.erb +43 -0
- data/app/views/leases/index.html.erb +18 -0
- data/app/views/shared/_add_content.html.erb +32 -0
- data/app/views/shared/_brand_bar.html.erb +10 -0
- data/app/views/shared/_flash_message.html.erb +17 -0
- data/app/views/shared/_footer.html.erb +10 -0
- data/app/views/shared/_ga.html.erb +6 -0
- data/app/views/shared/_header.html.erb +12 -0
- data/app/views/shared/_my_actions.html.erb +21 -0
- data/app/views/shared/_site_actions.html.erb +7 -0
- data/app/views/shared/_site_search.html.erb +12 -0
- data/app/views/shared/_title_bar.html.erb +16 -0
- data/app/workers/visibility_copy_worker.rb +30 -0
- data/config/initializers/simple_form.rb +31 -0
- data/config/locales/curation_concerns.en.yml +96 -0
- data/config/routes.rb +4 -0
- data/curation_concerns-models/.gitignore +17 -0
- data/curation_concerns-models/Gemfile +4 -0
- data/curation_concerns-models/LICENSE.md +177 -0
- data/curation_concerns-models/README.md +42 -0
- data/curation_concerns-models/Rakefile +1 -0
- data/curation_concerns-models/app/actors/concerns/curation_concerns/manages_embargoes_actor.rb +99 -0
- data/curation_concerns-models/app/actors/curation_concerns/base_actor.rb +90 -0
- data/curation_concerns-models/app/actors/curation_concerns/generic_file_actor.rb +150 -0
- data/curation_concerns-models/app/actors/curation_concerns/work_actor_behavior.rb +88 -0
- data/curation_concerns-models/app/jobs/active_fedora_id_based_job.rb +22 -0
- data/curation_concerns-models/app/jobs/active_fedora_pid_based_job.rb +6 -0
- data/curation_concerns-models/app/jobs/audit_job.rb +58 -0
- data/curation_concerns-models/app/jobs/characterize_job.rb +11 -0
- data/curation_concerns-models/app/jobs/copy_permissions_job.rb +24 -0
- data/curation_concerns-models/app/jobs/create_derivatives_job.rb +15 -0
- data/curation_concerns-models/app/jobs/import_url_job.rb +56 -0
- data/curation_concerns-models/app/jobs/ingest_local_file_job.rb +48 -0
- data/curation_concerns-models/app/jobs/resolrize_job.rb +9 -0
- data/curation_concerns-models/app/models/checksum_audit_log.rb +21 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/ability.rb +34 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/basic_metadata.rb +87 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/collection_behavior.rb +47 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_file/belongs_to_works.rb +53 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_file/characterization.rb +89 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_file/content.rb +8 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_file/export.rb +343 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_file/full_text_indexing.rb +12 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_file/indexing.rb +14 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_file/versions.rb +16 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_file.rb +5 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_file_behavior.rb +44 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/generic_work_behavior.rb +38 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/has_representative.rb +14 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/human_readable_type.rb +23 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/permissions/readable.rb +19 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/permissions/writable.rb +75 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/permissions.rb +7 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/serializers.rb +15 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/solr_document_behavior.rb +135 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/user.rb +65 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/with_basic_metadata.rb +98 -0
- data/curation_concerns-models/app/models/concerns/curation_concerns/with_generic_files.rb +29 -0
- data/curation_concerns-models/app/models/curation_concerns/classify_concern.rb +47 -0
- data/curation_concerns-models/app/models/curation_concerns/quick_classification_query.rb +31 -0
- data/curation_concerns-models/app/models/datastreams/fits_datastream.rb +148 -0
- data/curation_concerns-models/app/models/version_committer.rb +2 -0
- data/curation_concerns-models/app/services/curation_concerns/characterization_service.rb +71 -0
- data/curation_concerns-models/app/services/curation_concerns/full_text_extraction_service.rb +38 -0
- data/curation_concerns-models/app/services/curation_concerns/generic_file_audit_service.rb +85 -0
- data/curation_concerns-models/app/services/curation_concerns/generic_file_indexing_service.rb +14 -0
- data/curation_concerns-models/app/services/curation_concerns/generic_work_indexing_service.rb +16 -0
- data/curation_concerns-models/app/services/curation_concerns/noid.rb +23 -0
- data/curation_concerns-models/app/services/curation_concerns/repository_audit_service.rb +9 -0
- data/curation_concerns-models/app/services/curation_concerns/versioning_service.rb +27 -0
- data/curation_concerns-models/config/locales/curation_concerns.en.yml +6 -0
- data/curation_concerns-models/curation_concerns-models.gemspec +34 -0
- data/curation_concerns-models/lib/curation_concerns/messages.rb +66 -0
- data/curation_concerns-models/lib/curation_concerns/models/engine.rb +61 -0
- data/curation_concerns-models/lib/curation_concerns/models/resque.rb +36 -0
- data/curation_concerns-models/lib/curation_concerns/models/utils.rb +22 -0
- data/curation_concerns-models/lib/curation_concerns/models/version.rb +5 -0
- data/curation_concerns-models/lib/curation_concerns/models.rb +32 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/abstract_migration_generator.rb +30 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/clamav_generator.rb +19 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/fulltext_generator.rb +28 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/install_generator.rb +70 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/app/models/collection.rb +4 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/app/models/generic_file.rb +4 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/config/clamav.rb +1 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/config/curation_concerns.rb +123 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/config/mime_types.rb +6 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/config/redis.yml +9 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/config/redis_config.rb +32 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/config/resque-pool.yml +1 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/config/resque_admin.rb +10 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/config/resque_config.rb +5 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/migrations/create_checksum_audit_logs.rb +19 -0
- data/curation_concerns-models/lib/generators/curation_concerns/models/templates/migrations/create_version_committers.rb +15 -0
- data/curation_concerns-models/lib/tasks/curation_concerns-models_tasks.rake +75 -0
- data/curation_concerns-models/lib/tasks/migrate.rake +13 -0
- data/curation_concerns-models/lib/tasks/resque.rake +13 -0
- data/curation_concerns-models/lib/tasks/solr_reindex.rake +8 -0
- data/curation_concerns.gemspec +46 -0
- data/lib/curation_concerns/configuration.rb +74 -0
- data/lib/curation_concerns/controller_resource.rb +10 -0
- data/lib/curation_concerns/engine.rb +20 -0
- data/lib/curation_concerns/rails/routes.rb +76 -0
- data/lib/curation_concerns/spec_support.rb +10 -0
- data/lib/curation_concerns/version.rb +3 -0
- data/lib/curation_concerns.rb +8 -0
- data/lib/generators/curation_concerns/install_generator.rb +103 -0
- data/lib/generators/curation_concerns/templates/curation_concerns.css.scss +3 -0
- data/lib/generators/curation_concerns/templates/curation_concerns.js +1 -0
- data/lib/generators/curation_concerns/templates/curation_concerns_config.rb +2 -0
- data/lib/generators/curation_concerns/templates/curation_concerns_helper.rb +4 -0
- data/lib/generators/curation_concerns/work/USAGE +19 -0
- data/lib/generators/curation_concerns/work/templates/README +13 -0
- data/lib/generators/curation_concerns/work/templates/actor.rb.erb +7 -0
- data/lib/generators/curation_concerns/work/templates/actor_spec.rb.erb +9 -0
- data/lib/generators/curation_concerns/work/templates/controller.rb.erb +7 -0
- data/lib/generators/curation_concerns/work/templates/controller_spec.rb.erb +9 -0
- data/lib/generators/curation_concerns/work/templates/model.rb.erb +7 -0
- data/lib/generators/curation_concerns/work/templates/model_spec.rb.erb +9 -0
- data/lib/generators/curation_concerns/work/work_generator.rb +78 -0
- data/solr_conf/conf/solrconfig.xml +223 -0
- data/spec/abilities/collection_abilities_spec.rb +48 -0
- data/spec/abilities/generic_file_abilities_spec.rb +62 -0
- data/spec/abilities/generic_work_abilities_spec.rb +58 -0
- data/spec/actors/curation_concerns/generic_file_actor_spec.rb +116 -0
- data/spec/actors/curation_concerns/manages_embargoes_actor_spec.rb +95 -0
- data/spec/actors/curation_concerns/work_actor_spec.rb +203 -0
- data/spec/controllers/catalog_controller_spec.rb +115 -0
- data/spec/controllers/curation_concerns/classify_concerns_controller_spec.rb +43 -0
- data/spec/controllers/curation_concerns/collections_controller_spec.rb +171 -0
- data/spec/controllers/curation_concerns/generic_files_controller_spec.rb +251 -0
- data/spec/controllers/curation_concerns/generic_works_controller_spec.rb +167 -0
- data/spec/controllers/curation_concerns/permissions_controller_spec.rb +29 -0
- data/spec/controllers/downloads_controller_spec.rb +51 -0
- data/spec/controllers/embargoes_controller_spec.rb +114 -0
- data/spec/controllers/leases_controller_spec.rb +94 -0
- data/spec/factories/collections.rb +15 -0
- data/spec/factories/create_curation_concern.rb +3 -0
- data/spec/factories/generic_files.rb +31 -0
- data/spec/factories/generic_works.rb +54 -0
- data/spec/factories/users.rb +28 -0
- data/spec/features/add_file_spec.rb +30 -0
- data/spec/features/collection_spec.rb +222 -0
- data/spec/features/create_work_spec.rb +43 -0
- data/spec/features/embargo_spec.rb +51 -0
- data/spec/features/lease_spec.rb +49 -0
- data/spec/features/update_file_spec.rb +32 -0
- data/spec/features/work_generator_spec.rb +58 -0
- data/spec/fixtures/Example.ogg +0 -0
- data/spec/fixtures/charter.docx +0 -0
- data/spec/fixtures/countdown.avi +0 -0
- data/spec/fixtures/curation_concerns_generic_stub.txt +1 -0
- data/spec/fixtures/files/image.png +0 -0
- data/spec/fixtures/image.jp2 +0 -0
- data/spec/fixtures/image.jpg +0 -0
- data/spec/fixtures/piano_note.wav +0 -0
- data/spec/fixtures/sample_mpeg4.mp4 +0 -0
- data/spec/fixtures/small_file.txt +1 -0
- data/spec/fixtures/spoken-text.m4a +0 -0
- data/spec/fixtures/test4.pdf +0 -0
- data/spec/fixtures/test5.mp3 +0 -0
- data/spec/fixtures/world.png +0 -0
- data/spec/forms/collection_edit_form_spec.rb +20 -0
- data/spec/forms/generic_file_edit_form_spec.rb +33 -0
- data/spec/helpers/catalog_helper_spec.rb +58 -0
- data/spec/helpers/configuration_helper_spec.rb +13 -0
- data/spec/helpers/curation_concerns/.keep +0 -0
- data/spec/helpers/curation_concerns/collections_helper_spec.rb +49 -0
- data/spec/helpers/render_constraints_helper_spec.rb +19 -0
- data/spec/helpers/thumbnail_helper_spec.rb +21 -0
- data/spec/helpers/url_helper_spec.rb +22 -0
- data/spec/jobs/active_fedora_id_based_job_spec.rb +14 -0
- data/spec/jobs/audit_job_spec.rb +53 -0
- data/spec/jobs/characterize_job_spec.rb +23 -0
- data/spec/jobs/copy_permissions_job_spec.rb +49 -0
- data/spec/jobs/create_derivatives_job_spec.rb +23 -0
- data/spec/jobs/curation_concerns_resque_queue_spec.rb +49 -0
- data/spec/jobs/import_url_job_spec.rb +45 -0
- data/spec/jobs/ingest_local_file_job_spec.rb +25 -0
- data/spec/lib/curation_concerns/messages_spec.rb +70 -0
- data/spec/lib/curation_concerns/readable_permissions_spec.rb +56 -0
- data/spec/lib/curation_concerns/writable_permissions_spec.rb +16 -0
- data/spec/matchers/metadata_field_matchers.rb +28 -0
- data/spec/matchers/response_matchers.rb +7 -0
- data/spec/matchers.rb +24 -0
- data/spec/models/checksum_audit_log_spec.rb +66 -0
- data/spec/models/curation_concerns/collection_behavior_spec.rb +107 -0
- data/spec/models/curation_concerns/generic_file/derivatives_spec.rb +88 -0
- data/spec/models/curation_concerns/generic_work_behavior_spec.rb +35 -0
- data/spec/models/fits_datastream_spec.rb +127 -0
- data/spec/models/generic_file_spec.rb +619 -0
- data/spec/models/generic_work_spec.rb +43 -0
- data/spec/models/user_spec.rb +23 -0
- data/spec/presenters/curation_concerns/collection_presenter_spec.rb +34 -0
- data/spec/presenters/curation_concerns/generic_file_presenter_spec.rb +16 -0
- data/spec/routing/curation_concerns/routes_spec.rb +36 -0
- data/spec/routing/route_spec.rb +86 -0
- data/spec/services/characterization_service_spec.rb +30 -0
- data/spec/services/embargo_service_spec.rb +38 -0
- data/spec/services/full_text_extraction_service_spec.rb +5 -0
- data/spec/services/generic_file_audit_service_spec.rb +71 -0
- data/spec/services/generic_file_indexing_service_spec.rb +57 -0
- data/spec/services/generic_work_indexing_service_spec.rb +18 -0
- data/spec/services/lease_service_spec.rb +53 -0
- data/spec/services/repository_audit_service_spec.rb +18 -0
- data/spec/services/versioning_service_spec.rb +32 -0
- data/spec/spec_helper.rb +94 -0
- data/spec/support/controllers/engine_helpers.rb +7 -0
- data/spec/support/curation_concerns/factory_helpers.rb +14 -0
- data/spec/support/features/fixture_file_upload.rb +14 -0
- data/spec/support/features/session_helpers.rb +41 -0
- data/spec/support/features.rb +19 -0
- data/spec/support/shared/shared_examples_has_dc_metadata.rb +17 -0
- data/spec/support/shared/shared_examples_is_embargoable.rb +8 -0
- data/spec/support/shared/shared_examples_with_access_rights.rb +63 -0
- data/spec/tasks/rake_spec.rb +24 -0
- data/spec/test_app_templates/Gemfile.extra +1 -0
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +55 -0
- data/spec/views/catalog/index.html.erb_spec.rb +59 -0
- data/spec/views/curation_concerns/base/_attributes.html.erb_spec.rb +25 -0
- data/spec/views/curation_concerns/base/show.html.erb_spec.rb +29 -0
- data/spec/views/curation_concerns/permissions/confirm.html.erb_spec.rb +33 -0
- data/spec/views/shared/_add_content.html.erb_spec.rb +42 -0
- data/spec/views/shared/_my_actions.html.erb_spec.rb +23 -0
- data/spec/workers/visibility_copy_worker_spec.rb +70 -0
- data/tasks/jetty.rake +15 -0
- data/tasks/release.rake +93 -0
- data/vendor/assets/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
- data/vendor/assets/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
- data/vendor/assets/javascripts/handlebars.js +2278 -0
- data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.autocomplete.js +602 -0
- data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.core.js +356 -0
- data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.effect-highlight.js +50 -0
- data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.effect.js +1276 -0
- data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.menu.js +610 -0
- data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.position.js +498 -0
- data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.widget.js +528 -0
- data/vendor/assets/javascripts/jquery.tokeninput.js +1061 -0
- data/vendor/assets/stylesheets/jquery-ui-lightness.css +474 -0
- data/vendor/assets/stylesheets/token-input-facebook.css +122 -0
- data/vendor/assets/stylesheets/token-input-mac.css +204 -0
- data/vendor/assets/stylesheets/token-input.css +127 -0
- metadata +888 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<div style="float: right;" >
|
|
2
|
+
<%= form_for([collections, @collection], url: collections.edit_collection_path , method: :get, class: "well form-search") do |f| %>
|
|
3
|
+
|
|
4
|
+
<label class="accessible-hidden">Search Collection <%= @collection.title %></label>
|
|
5
|
+
<%= text_field_tag :cq, params[:cq], class: "collection-query", placeholder: "Search Collection", size: '30', type: "search", id: "collection_search" %>
|
|
6
|
+
<%= hidden_field_tag :sort, params[:sort], id: 'collection_sort' %>
|
|
7
|
+
<%= render_hash_as_hidden_fields(params_for_search.except(:cq, :sort, :qt, :page)) %>
|
|
8
|
+
<button type="submit" class="btn btn-primary" id="collection_submit"><i class="icon-search"></i> Go</button>
|
|
9
|
+
<% end %>
|
|
10
|
+
</div>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<% if can? :edit, @collection %>
|
|
2
|
+
<h2 class="non lower">Actions</h2>
|
|
3
|
+
<p>
|
|
4
|
+
<%= link_to "Edit", collections.edit_collection_path, class: 'btn btn-primary' %>
|
|
5
|
+
<%= link_to "Add files from your dashboard", search_path_for_my_works, class: 'btn btn-primary' %>
|
|
6
|
+
</p>
|
|
7
|
+
<%end %>
|
|
8
|
+
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<h2 class="non lower">Descriptions</h2>
|
|
2
|
+
<table class="table table-striped"><!-- class="verticalheadings"> -->
|
|
3
|
+
<tbody>
|
|
4
|
+
<%= render :partial=>'collections/show_fields/title', locals: {collection: @collection} %>
|
|
5
|
+
<%= render :partial=>'collections/show_fields/creator', locals: {collection: @collection} %>
|
|
6
|
+
<%= render :partial=>'collections/show_fields/description', locals: {collection: @collection} %>
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
</tbody>
|
|
10
|
+
</table> <!-- /verticalheadings -->
|
|
File without changes
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<%# this includes the fields in a form necissary for manipulating a single item in a collection %>
|
|
2
|
+
<%# form - form these fields will reside in %>
|
|
3
|
+
<%# action - collection action: add or remove %>
|
|
4
|
+
<%# document - current document %>
|
|
5
|
+
<%= form.hidden_field :members, :value => action %>
|
|
6
|
+
<%= hidden_field :batch_document_ids, '', {value:document.id} %>
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<div class="batch-info">
|
|
2
|
+
<div>
|
|
3
|
+
<%= render partial: 'collections/form_for_select_collection', locals: { user_collections: @user_collections } %>
|
|
4
|
+
</div>
|
|
5
|
+
|
|
6
|
+
<% if params[:action] == "edit" %>
|
|
7
|
+
<div class="batch-toggle">
|
|
8
|
+
<% session[:batch_edit_state] = "on" %>
|
|
9
|
+
<%= button_for_remove_selected_from_collection @collection %>
|
|
10
|
+
</div>
|
|
11
|
+
<%end %>
|
|
12
|
+
<div class="sort-toggle">
|
|
13
|
+
<%-# kind of hacky way to get this to work on catalog and folder controllers. May be able to simple do {:action=>"index"} but I'm not sure -%>
|
|
14
|
+
<% unless @response.response['numFound'] < 2 %>
|
|
15
|
+
<%= form_tag collections.collection_path(@collection), method: :get, class: 'per_page form-inline' do %>
|
|
16
|
+
<%= label_tag(:sort, "<span>Sort By:</span>".html_safe) %>
|
|
17
|
+
<%= select_tag(:sort, options_for_select(sort_fields, h(params[:sort]))) %>
|
|
18
|
+
|
|
19
|
+
<%= label_tag(:per_page) do %>
|
|
20
|
+
Show <%= select_tag(:per_page, options_for_select(['10', '20', '50', '100'], h(params[:per_page])), title: "Number of results to display per page") %> per page
|
|
21
|
+
<% end %>
|
|
22
|
+
<%= render_hash_as_hidden_fields(params_for_search.except(:per_page, :sort)) %>
|
|
23
|
+
|
|
24
|
+
<button class="btn btn-primary"><i class="icon-refresh"></i> Refresh</button>
|
|
25
|
+
<%= render 'view_type_group' %>
|
|
26
|
+
<% end %>
|
|
27
|
+
<% end unless sort_fields.empty? %>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<% if has_alternative_views? -%>
|
|
2
|
+
<div class="view-type">
|
|
3
|
+
<span class="sr-only"><%= t('blacklight.search.view_title') %></span>
|
|
4
|
+
<div class="view-type-group btn-group">
|
|
5
|
+
<% document_index_views.each do |view, config| %>
|
|
6
|
+
<%= link_to collections.collection_path(params[:id], view: view), title: t("blacklight.search.view_title.#{view}", default: t("blacklight.search.view.#{view}", default: blacklight_config.view[view].title)), class: "btn btn-default view-type-#{ view.to_s.parameterize } #{"active" if document_index_view_type == view}" do %>
|
|
7
|
+
<%= render_view_type_group_icon view %>
|
|
8
|
+
<span class="caption"><%= t("blacklight.search.view.#{view}") %></span>
|
|
9
|
+
<% end %>
|
|
10
|
+
<% end %>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
<% end -%>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<% provide :page_title, curation_concern_page_title(@collection) %>
|
|
2
|
+
|
|
3
|
+
<h1>Edit <%= @collection %> <span class="human_readable_type">(<%= @collection.human_readable_type %>)</span></h1>
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
<% unless has_collection_search_parameters? %>
|
|
7
|
+
<%= render 'collections/edit_actions' %>
|
|
8
|
+
<%= render 'collections/form', record: @collection %>
|
|
9
|
+
<% end %>
|
|
10
|
+
<br />
|
|
11
|
+
|
|
12
|
+
<h2>Manage Items in this Collection</h2>
|
|
13
|
+
<%= render 'search_collection_dashboard_form'%>
|
|
14
|
+
<%= render 'catalog/did_you_mean' %>
|
|
15
|
+
<%= render 'catalog/constraints', localized_params: params %>
|
|
16
|
+
<%= render 'document_list', documents: @member_docs, document_list_format: "dashboard" %>
|
|
17
|
+
<%= render 'paginate' %>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<% @page_title = "#{@collection.title} - #{application_name}" %>
|
|
2
|
+
|
|
3
|
+
<h1 class="lower"><%= @collection.title %></h1>
|
|
4
|
+
|
|
5
|
+
<%= render partial: 'curation_concerns/base/representative_media', locals: {work: @collection} %>
|
|
6
|
+
|
|
7
|
+
<h3><%=@collection.description%> </h3>
|
|
8
|
+
|
|
9
|
+
<% unless has_collection_search_parameters? %>
|
|
10
|
+
<%= render partial: 'collections/show_actions' %>
|
|
11
|
+
<%= render 'attributes', curation_concern: @collection %>
|
|
12
|
+
<% end %>
|
|
13
|
+
|
|
14
|
+
<%= render partial: 'search_form'%>
|
|
15
|
+
<%= render 'sort_and_per_page' %>
|
|
16
|
+
|
|
17
|
+
<% if has_collection_search_parameters? %>
|
|
18
|
+
<h2>Search Results within this Collection</h2>
|
|
19
|
+
<% else %>
|
|
20
|
+
<h2>Items in this Collection</h2>
|
|
21
|
+
<% end %>
|
|
22
|
+
<%= render_document_index @member_docs %>
|
|
23
|
+
|
|
24
|
+
<%= render partial: 'paginate' %>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<table class="table table-striped <%= dom_class(curation_concern) %> attributes">
|
|
2
|
+
<caption class="table-heading"><h2>Attributes</h2></caption>
|
|
3
|
+
<thead>
|
|
4
|
+
<tr><th>Attribute Name</th><th>Values</th></tr>
|
|
5
|
+
</thead>
|
|
6
|
+
<tbody>
|
|
7
|
+
<%= curation_concern_attribute_to_html(curation_concern, :description, 'Abstract') %>
|
|
8
|
+
<%= curation_concern_attribute_to_html(curation_concern, :creator, 'Creator', { catalog_search_link: true }) %>
|
|
9
|
+
<%= curation_concern_attribute_to_html(curation_concern, :contributor, 'Contributors', { catalog_search_link: true }) %>
|
|
10
|
+
<%= curation_concern_attribute_to_html(curation_concern, :subject, "Subject", { catalog_search_link: true }) %>
|
|
11
|
+
<%= curation_concern_attribute_to_html(curation_concern, :publisher, "Publisher") %>
|
|
12
|
+
<%#= curation_concern_attribute_to_html(curation_concern, :bibliographic_citation, "Bibliographic Citation") %>
|
|
13
|
+
<%#= curation_concern_attribute_to_html(curation_concern, :source, "Source") %>
|
|
14
|
+
<%= curation_concern_attribute_to_html(curation_concern, :language, "Language") %>
|
|
15
|
+
<tr>
|
|
16
|
+
<th>Access Rights</th>
|
|
17
|
+
<td>
|
|
18
|
+
<%= permission_badge_for(curation_concern) %>
|
|
19
|
+
</td>
|
|
20
|
+
</tr>
|
|
21
|
+
<%= curation_concern_attribute_to_html(curation_concern, :embargo_release_date, "Embargo Release Date") %>
|
|
22
|
+
<%= curation_concern_attribute_to_html(curation_concern, :lease_expiration_date, "Lease Expiration Date") %>
|
|
23
|
+
<%= curation_concern_attribute_to_html(curation_concern, :rights, "Content License") %>
|
|
24
|
+
</tbody>
|
|
25
|
+
</table>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<% if curation_concern.collections.present? %>
|
|
2
|
+
<table class="table table-striped <%= dom_class(curation_concern) %> collections with-headroom">
|
|
3
|
+
<caption class="table-heading">
|
|
4
|
+
<h2>Collections</h2>
|
|
5
|
+
</caption>
|
|
6
|
+
<thead>
|
|
7
|
+
<tr>
|
|
8
|
+
<th>Collections Featuring this <%= curation_concern.human_readable_type %></th>
|
|
9
|
+
</tr>
|
|
10
|
+
</thead>
|
|
11
|
+
<tbody>
|
|
12
|
+
<% curation_concern.collections.each do |collection| %>
|
|
13
|
+
<tr class="collection attributes">
|
|
14
|
+
<td class="attribute title">
|
|
15
|
+
<%= link_to collection.title, collection %>
|
|
16
|
+
<span class="pull-right">
|
|
17
|
+
<% if can?(:edit, curation_concern) %>
|
|
18
|
+
<%= button_for_remove_item_from_collection(curation_concern, collection) %>
|
|
19
|
+
<% end %>
|
|
20
|
+
</span>
|
|
21
|
+
</td>
|
|
22
|
+
</tr>
|
|
23
|
+
<% end %>
|
|
24
|
+
</tbody>
|
|
25
|
+
</table>
|
|
26
|
+
<% end %>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<%= simple_form_for [main_app, :curation_concerns, curation_concern] do |f| %>
|
|
2
|
+
|
|
3
|
+
<% if f.error_notification -%>
|
|
4
|
+
<div class="alert alert-danger fade in">
|
|
5
|
+
<strong>Wait don't go!</strong> There was a problem with your submission. Please review the errors below:
|
|
6
|
+
<a class="close" data-dismiss="alert" href="#">×</a>
|
|
7
|
+
</div>
|
|
8
|
+
<% end -%>
|
|
9
|
+
|
|
10
|
+
<%= render 'form_descriptive_fields', curation_concern: curation_concern, f: f %>
|
|
11
|
+
|
|
12
|
+
<%= render 'form_supplementary_fields', curation_concern: curation_concern, f: f %>
|
|
13
|
+
|
|
14
|
+
<div class="row">
|
|
15
|
+
<div class="col-md-12 form-actions">
|
|
16
|
+
<%= f.submit class: 'btn btn-primary require-contributor-agreement' %>
|
|
17
|
+
<%- if curation_concern.new_record? -%>
|
|
18
|
+
<%= link_to 'Cancel', main_app.root_path, class: 'btn btn-link' %>
|
|
19
|
+
<%- else -%>
|
|
20
|
+
<%= link_to 'Cancel', polymorphic_path([main_app, :curation_concerns, curation_concern]), class: 'btn btn-link' %>
|
|
21
|
+
<%- end -%>
|
|
22
|
+
</div>
|
|
23
|
+
</div>
|
|
24
|
+
|
|
25
|
+
<% end %>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<fieldset class="optional prompt">
|
|
2
|
+
<legend>Additional Information</legend>
|
|
3
|
+
<%= f.input :subject, as: :multi_value, input_html: { class: 'form-control' } %>
|
|
4
|
+
<%= f.input :publisher, as: :multi_value, input_html: { class: 'form-control' } %>
|
|
5
|
+
<%= f.input :source, as: :multi_value, input_html: { class: 'form-control' } %>
|
|
6
|
+
<%= f.input :language, as: :multi_value, input_html: { class: 'form-control' } %>
|
|
7
|
+
</fieldset>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<fieldset id="set-license">
|
|
2
|
+
<legend>Choose a License for your Content</legend>
|
|
3
|
+
<p>
|
|
4
|
+
What do you want others to be able to do with your work?
|
|
5
|
+
</p>
|
|
6
|
+
<p>
|
|
7
|
+
<a href="http://creativecommons.org/licenses/" target="_blank">Here's some help</a> if you don't know which license to choose.
|
|
8
|
+
</p>
|
|
9
|
+
|
|
10
|
+
<%= f.input :rights,
|
|
11
|
+
as: :select,
|
|
12
|
+
collection: CurationConcerns.config.cc_licenses,
|
|
13
|
+
input_html: { class: 'form-control' },
|
|
14
|
+
label: 'Content License'
|
|
15
|
+
%>
|
|
16
|
+
</fieldset>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<div class="row">
|
|
2
|
+
<div class="col-md-6" id="required-information">
|
|
3
|
+
<%= render "form_required_information", curation_concern: curation_concern, f: f %>
|
|
4
|
+
</div>
|
|
5
|
+
|
|
6
|
+
<%# render 'form_editors', f: f %>
|
|
7
|
+
|
|
8
|
+
<div class="col-md-6" id="additional-information">
|
|
9
|
+
<%= render "form_additional_information", curation_concern: curation_concern, f: f %>
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<fieldset id="content-editor">
|
|
2
|
+
<legend>
|
|
3
|
+
<%=t('curation_concerns.work.editor.legend') %>
|
|
4
|
+
<small><%=t('curation_concerns.work.editor.caption') %></small>
|
|
5
|
+
</legend>
|
|
6
|
+
<div class="col-md-6" id="required-information">
|
|
7
|
+
<%#= render "linked_editors", curation_concern: curation_concern, f: f %>
|
|
8
|
+
</div>
|
|
9
|
+
|
|
10
|
+
<div class="col-md-6" id="additional-information">
|
|
11
|
+
<%#= render "linked_groups", curation_concern: curation_concern, f: f %>
|
|
12
|
+
</div>
|
|
13
|
+
</fieldset>
|
|
14
|
+
|
|
15
|
+
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<% unless curation_concern.persisted? %>
|
|
2
|
+
<fieldset id="work-contents">
|
|
3
|
+
<div class="row with-headroom">
|
|
4
|
+
<div class="span12">
|
|
5
|
+
<legend>
|
|
6
|
+
Add Your Content
|
|
7
|
+
</legend>
|
|
8
|
+
|
|
9
|
+
<p class="help-block">
|
|
10
|
+
The subject of your <%= curation_concern.human_readable_type.downcase %> can either be a file <em>or</em> a URL.
|
|
11
|
+
</p>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
|
|
15
|
+
<div class="row">
|
|
16
|
+
|
|
17
|
+
<fieldset class="col-md-5">
|
|
18
|
+
<%= f.input :files, as: :file, label: 'Upload a file', hint: 'A PDF is preferred.'%>
|
|
19
|
+
</fieldset>
|
|
20
|
+
|
|
21
|
+
</div>
|
|
22
|
+
</fieldset>
|
|
23
|
+
<% end %>
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<% if curation_concern.embargo_release_date %>
|
|
2
|
+
<%= render 'form_permission_under_embargo', curation_concern: curation_concern, f: f %>
|
|
3
|
+
<% elsif curation_concern.lease_expiration_date %>
|
|
4
|
+
<%= render 'form_permission_under_lease', curation_concern: curation_concern, f: f %>
|
|
5
|
+
<% else %>
|
|
6
|
+
<fieldset id="set-access-controls">
|
|
7
|
+
<legend>
|
|
8
|
+
Access Rights
|
|
9
|
+
<small>Who should be able to view or download this content?</small>
|
|
10
|
+
</legend>
|
|
11
|
+
|
|
12
|
+
<section class="help-block">
|
|
13
|
+
<p>
|
|
14
|
+
<strong>Please note</strong>, making something visible to the world (i.e.
|
|
15
|
+
marking this as <span class="label label-success">Open Access</span>) may be
|
|
16
|
+
viewed as publishing which could impact your ability to:
|
|
17
|
+
</p>
|
|
18
|
+
<ul>
|
|
19
|
+
<li>Patent your work</li>
|
|
20
|
+
<li>Publish your work in a journal</li>
|
|
21
|
+
</ul>
|
|
22
|
+
<p>
|
|
23
|
+
Check out <a href="http://www.sherpa.ac.uk/romeo/">SHERPA/RoMEO</a> for more
|
|
24
|
+
information about publisher copyright policies.
|
|
25
|
+
</p>
|
|
26
|
+
</section>
|
|
27
|
+
|
|
28
|
+
<div class="form-group">
|
|
29
|
+
<label class="radio">
|
|
30
|
+
<input type="radio" id="visibility_open" name="<%= f.object_name %>[visibility]" value="<%= Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PUBLIC %>" <% if curation_concern.open_access? %> checked="true"<% end %>/>
|
|
31
|
+
<span class="label label-success">Open Access</span> Visible to the world.
|
|
32
|
+
</label>
|
|
33
|
+
<label class="radio">
|
|
34
|
+
<input type="radio" id="visibility_registered" name="<%= f.object_name %>[visibility]" value="<%= Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_AUTHENTICATED %>" <% if curation_concern.authenticated_only_access? %> checked="true"<% end %> />
|
|
35
|
+
<span class="label label-info"><%=t('curation_concerns.institution.name') %></span> Visible to all <%=t('curation_concerns.institution.name') %> users.
|
|
36
|
+
</label>
|
|
37
|
+
<label class="radio">
|
|
38
|
+
<input type="radio" id="visibility_embargo" name="<%= f.object_name %>[visibility]" value="<%= Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_EMBARGO %>" <% if curation_concern.open_access_with_embargo_release_date? %> checked="true"<% end %>/>
|
|
39
|
+
<%= render "form_permission_embargo", curation_concern: curation_concern, f: f %>
|
|
40
|
+
</label>
|
|
41
|
+
<label class="radio">
|
|
42
|
+
<input type="radio" id="visibility_lease" name="<%= f.object_name %>[visibility]" value="lease" <% if curation_concern.open_access_with_embargo_release_date? %> checked="true"<% end %>/>
|
|
43
|
+
<%= render "form_permission_lease", curation_concern: curation_concern, f: f %>
|
|
44
|
+
</label>
|
|
45
|
+
<label class="radio">
|
|
46
|
+
<input type="radio" id="visibility_restricted" name="<%= f.object_name %>[visibility]" value="<%= Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PRIVATE%>" <% if curation_concern.private_access? %> checked="true"<% end %>/>
|
|
47
|
+
<span class="label label-danger">Private</span> Only visible to you and your delegates.
|
|
48
|
+
</label>
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
</fieldset>
|
|
52
|
+
<% end %>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<div class="form-inline">
|
|
2
|
+
<span class="label label-warning">Embargo</span>
|
|
3
|
+
<%= f.input :visibility_during_embargo, wrapper: :inline, collection: visibility_options(:restrict), include_blank: false %>
|
|
4
|
+
<%= f.input :embargo_release_date, wrapper: :inline, input_html: { value: f.object.embargo_release_date || Date.tomorrow, class: 'datepicker' } %>
|
|
5
|
+
<%= f.input :visibility_after_embargo, wrapper: :inline, collection: visibility_options(:loosen), include_blank: false %>
|
|
6
|
+
</div>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<div class="form-inline">
|
|
2
|
+
<span class="label label-warning">Lease</span>
|
|
3
|
+
<%= f.input :visibility_during_lease, wrapper: :inline, collection: visibility_options(:loosen), include_blank: false %>
|
|
4
|
+
<%= f.input :lease_expiration_date, wrapper: :inline, input_html: { value: f.object.lease_expiration_date || Date.tomorrow, class: 'datepicker' } %>
|
|
5
|
+
<%= f.input :visibility_after_lease, wrapper: :inline, collection: visibility_options(:restrict), include_blank: false %>
|
|
6
|
+
</div>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<fieldset id="set-access-controls">
|
|
2
|
+
<legend>
|
|
3
|
+
Access Rights
|
|
4
|
+
<small>Who should be able to view or download this content?</small>
|
|
5
|
+
</legend>
|
|
6
|
+
|
|
7
|
+
<section class="help-block">
|
|
8
|
+
<p>
|
|
9
|
+
<strong>This work is under embargo.</strong> You can change the settings of the embargo here, or you can visit the <%= link_to 'Embargo Management Page', main_app.edit_embargo_path(curation_concern) %> to deactivate it.
|
|
10
|
+
</p>
|
|
11
|
+
</section>
|
|
12
|
+
|
|
13
|
+
<input type="hidden" name="<%= f.object_name %>[visibility]" value="<%= Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_EMBARGO %>" />
|
|
14
|
+
<%= render "form_permission_embargo", curation_concern: curation_concern, f: f %>
|
|
15
|
+
|
|
16
|
+
</fieldset>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<fieldset id="set-access-controls">
|
|
2
|
+
<legend>
|
|
3
|
+
Access Rights
|
|
4
|
+
<small>Who should be able to view or download this content?</small>
|
|
5
|
+
</legend>
|
|
6
|
+
|
|
7
|
+
<section class="help-block">
|
|
8
|
+
<p>
|
|
9
|
+
<strong>This work is under lease.</strong> You can change the settings of the lease here, or you can visit the <%= link_to 'Lease Management Page', main_app.edit_lease_path(curation_concern) %> to deactivate it.
|
|
10
|
+
</p>
|
|
11
|
+
</section>
|
|
12
|
+
|
|
13
|
+
<div class="form-group">
|
|
14
|
+
<input type="hidden" name="<%= f.object_name %>[visibility]" value="<%= Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_LEASE %>" />
|
|
15
|
+
<%= render "form_permission_lease", curation_concern: curation_concern, f: f %>
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
</fieldset>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<% if curation_concern.persisted? && curation_concern.generic_files.present? %>
|
|
2
|
+
<div class="row">
|
|
3
|
+
<div class="col-md-12">
|
|
4
|
+
<fieldset id="representative-image">
|
|
5
|
+
<legend>
|
|
6
|
+
Assign a Thumbnail
|
|
7
|
+
</legend>
|
|
8
|
+
<p>Select the file whose thumbnail should represent this <%= curation_concern.human_readable_type %>.</p>
|
|
9
|
+
<%= f.select( :representative, Hash[ curation_concern.generic_files.map {|file| [file.title.first, file.id] } ],{}, { class: 'form-control' } ) %>
|
|
10
|
+
</fieldset>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
<% end %>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<fieldset class="required">
|
|
2
|
+
<legend>Required Information</legend>
|
|
3
|
+
|
|
4
|
+
<%= f.input :title, as: :multi_value %>
|
|
5
|
+
|
|
6
|
+
<%= f.input :creator, as: :multi_value %>
|
|
7
|
+
|
|
8
|
+
<%= f.input :contributor, as: :multi_value, input_html: { class: 'form-control' } %>
|
|
9
|
+
|
|
10
|
+
<%= f.input :description, as: :multi_value, input_html: { rows: '14', type: 'textarea'} %>
|
|
11
|
+
</fieldset>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<%= render "form_files_and_links", curation_concern: curation_concern, f: f %>
|
|
2
|
+
|
|
3
|
+
<%= render "form_representative_image", curation_concern: curation_concern, f: f %>
|
|
4
|
+
|
|
5
|
+
<div class="row with-headroom">
|
|
6
|
+
<div class="col-md-12">
|
|
7
|
+
<%= render "form_permission", curation_concern: curation_concern, f: f %>
|
|
8
|
+
</div>
|
|
9
|
+
</div>
|
|
10
|
+
|
|
11
|
+
<div class="row with-headroom">
|
|
12
|
+
<div class="col-md-12">
|
|
13
|
+
<%= render "form_content_license", curation_concern: curation_concern, f: f %>
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<p>
|
|
2
|
+
I am submitting my work for inclusion in the <%=I18n.t('curation_concerns.product_name')%> repository maintained by the University Libraries of the <%= I18n.t('curation_concerns.institution.name') %>.
|
|
3
|
+
I acknowledge that publication of the work may implicate my legal rights with respect to the work and its contents, including my ability to publish the work in other venues.
|
|
4
|
+
I UNDERSTAND AND AGREE THAT BY SUBMITTING MY CONTENT FOR INCLUSION IN THE <%=I18n.t('curation_concerns.product_name').upcase%> REPOSITORY, I AGREE TO THE FOLLOWING TERMS:
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
<p>
|
|
8
|
+
I hereby grant the <%= I18n.t('curation_concerns.institution.name') %> permission to reproduce, edit, publish, disseminate, publicly display, or publicly perform, in whole or in part, the work in any medium at the University’s discretion (including but not limited to public websites).
|
|
9
|
+
I agree that the University can keep more than one copy of the submission for the purpose of preservation and security.
|
|
10
|
+
I agree that the University can preserve the submission by migrating or translating it to a new format or medium as needed in the future.
|
|
11
|
+
I also agree that the metadata attached to the item can be reviewed and altered by the University to aid in preservation and discovery.
|
|
12
|
+
I understand that I may be allowed the opportunity to select the intended audience for the materials that I submit, and I agree that I am fully responsible for any claims and all responsibility for materials submitted.
|
|
13
|
+
The <%=I18n.t('curation_concerns.product_name')%> service is offered as-is with no warranties, express or implied.
|
|
14
|
+
The University may suspend or terminate <%=I18n.t('curation_concerns.product_name')%>, or remove any content within the system, at any time for any reason in the University’s sole discretion.
|
|
15
|
+
</p>
|
|
16
|
+
|
|
17
|
+
<p>
|
|
18
|
+
I warrant that the submitted material is original to me and that I have power to make this agreement.
|
|
19
|
+
I also warrant that the submission does not, to the best of my knowledge, infringe upon anyone’s copyright.
|
|
20
|
+
I also warrant that if the work has been previously published elsewhere in whole or in part, that I have obtained the permission of the copyright owner to grant <%=I18n.t('curation_concerns.product_name')%> the rights required by this license.
|
|
21
|
+
I also guarantee that I do not have any other publication agreements that involve this material or substantial parts of it that conflict with my submission of materials for dissemination in <%=I18n.t('curation_concerns.product_name')%>.
|
|
22
|
+
</p>
|
|
23
|
+
|
|
24
|
+
<p>
|
|
25
|
+
I represent that any materials that are used in this submission that I do not hold copyright for, I have obtained permission to use and display the materials according to the rights required by this license, and that third-party owned materials are clearly identified and credited within the content of the submission.
|
|
26
|
+
If it is determined that permissions of use have not properly been obtained, I acknowledge that the University may remove or restrict access to items as necessary.
|
|
27
|
+
</p>
|
|
28
|
+
|
|
29
|
+
<p>
|
|
30
|
+
I understand that I may request the University to remove my submitted materials from the <%=I18n.t('curation_concerns.product_name')%> repository; however, I acknowledge that the University cannot control or retract works that may have been accessed by third parties prior to my request for removal.
|
|
31
|
+
If the submission is removed I agree that the item can be replaced by a page with a statement declaring that the item was removed by my request.
|
|
32
|
+
</p>
|
|
33
|
+
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<% if curation_concern.generic_files.present? %>
|
|
2
|
+
<div class="panel panel-default related_files">
|
|
3
|
+
<div class="panel-heading">
|
|
4
|
+
<h2>Files</h2>
|
|
5
|
+
</div>
|
|
6
|
+
<table class="table table-striped">
|
|
7
|
+
<thead>
|
|
8
|
+
<tr>
|
|
9
|
+
<th>File</th>
|
|
10
|
+
<th>Filename</th>
|
|
11
|
+
<th>Date Uploaded</th>
|
|
12
|
+
<th>Visibility</th>
|
|
13
|
+
<th>Actions</th>
|
|
14
|
+
</tr>
|
|
15
|
+
</thead>
|
|
16
|
+
<tbody>
|
|
17
|
+
<%= render curation_concern.generic_files %>
|
|
18
|
+
</tbody>
|
|
19
|
+
</table>
|
|
20
|
+
</div>
|
|
21
|
+
<% elsif can? :edit, curation_concern %>
|
|
22
|
+
<h2>Files</h2>
|
|
23
|
+
<p class="center"><em>This <%= curation_concern.human_readable_type %> has no files associated with it. You can add one using the "Attach a File" button below.</em></p>
|
|
24
|
+
<% end %>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<% if work.representative.present? && (gf = ::GenericFile.load_instance_from_solr(work.representative)) %>
|
|
2
|
+
<%= render partial: 'curation_concerns/generic_files/media_display', locals: {generic_file: gf, dom_class_name: 'representative_image'} %>
|
|
3
|
+
<% elsif work.representative.present? %>
|
|
4
|
+
<%= image_tag download_path(work.representative, {:datastream_id => 'thumbnail'}), class: 'representative_image' %>
|
|
5
|
+
<% else %>
|
|
6
|
+
<%= image_tag 'nope.png', class: "canonical-image" %>
|
|
7
|
+
<% end %>
|
|
8
|
+
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<% provide :page_title, curation_concern_page_title(curation_concern) %>
|
|
2
|
+
<% provide :page_header do %>
|
|
3
|
+
<h2>Manage Your Work</h2>
|
|
4
|
+
<p>
|
|
5
|
+
You can enrich the metadata describing your work at any time.
|
|
6
|
+
The more complete the description the easier it will be to find by yourself and others.
|
|
7
|
+
</p>
|
|
8
|
+
<p>
|
|
9
|
+
Please consider releasing your <%=curation_concern.human_readable_type.downcase %> as an Open Access work.
|
|
10
|
+
</p>
|
|
11
|
+
<% end %>
|
|
12
|
+
|
|
13
|
+
<%= render 'form' %>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<% provide :page_title, curation_concern_page_title(curation_concern) %>
|
|
2
|
+
<% provide :page_header do %>
|
|
3
|
+
<h2>Describe Your <%= curation_concern.human_readable_type %></h2>
|
|
4
|
+
<p>
|
|
5
|
+
The more descriptive information you provide the better we can serve your needs.
|
|
6
|
+
</p>
|
|
7
|
+
<p>
|
|
8
|
+
Please consider releasing your <%= curation_concern.human_readable_type.downcase %> as an <span class="label label-success">Open Access</span> work.
|
|
9
|
+
</p>
|
|
10
|
+
<% end %>
|
|
11
|
+
|
|
12
|
+
<%= render 'form' %>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<% provide :page_title, curation_concern_page_title(curation_concern) %>
|
|
2
|
+
<% provide :page_header do %>
|
|
3
|
+
<h1><%= curation_concern %> <span class="human_readable_type">(<%= curation_concern.human_readable_type %>)</span></h1>
|
|
4
|
+
<% end %>
|
|
5
|
+
|
|
6
|
+
<%= render 'representative_media', work: curation_concern %>
|
|
7
|
+
<%= render 'attributes', curation_concern: curation_concern %>
|
|
8
|
+
<%= render 'related_files', curation_concern: curation_concern %>
|
|
9
|
+
|
|
10
|
+
<% collector = can?(:collect, curation_concern) %>
|
|
11
|
+
<% editor = can?(:edit, curation_concern) %>
|
|
12
|
+
|
|
13
|
+
<% if collector || editor %>
|
|
14
|
+
<div class="form-actions">
|
|
15
|
+
<% if editor %>
|
|
16
|
+
<%= link_to "Edit This #{curation_concern.human_readable_type}", edit_polymorphic_path([main_app, :curation_concerns, curation_concern]), class: 'btn btn-primary' %>
|
|
17
|
+
<%= link_to "Delete This #{curation_concern.human_readable_type}", [main_app, :curation_concerns, curation_concern], class: 'btn btn-primary', data: { confirm: "Delete this #{curation_concern.human_readable_type}?" }, method: :delete %>
|
|
18
|
+
<%= link_to "Attach a File", main_app.new_curation_concerns_generic_file_path(curation_concern), class: 'btn btn-primary' %>
|
|
19
|
+
<% end %>
|
|
20
|
+
</div>
|
|
21
|
+
<% end %>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<% provide :page_header do %>
|
|
2
|
+
<h2>What are you uploading?</h2>
|
|
3
|
+
<p>Before we can begin we need to know a little about what you're uploading.</p>
|
|
4
|
+
<% end %>
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
<div class="row">
|
|
8
|
+
<ul class="classify-work">
|
|
9
|
+
<% classify_concern.all_curation_concern_classes.each do |klass| %>
|
|
10
|
+
<% if can? :create, klass %>
|
|
11
|
+
<li class="work-type">
|
|
12
|
+
<h3 class="title"><%= klass.human_readable_type %></h3>
|
|
13
|
+
<p class="short-description"><%= klass.human_readable_short_description %></p>
|
|
14
|
+
<%= link_to 'Add New',
|
|
15
|
+
main_app.new_polymorphic_path([:curation_concerns, klass]),
|
|
16
|
+
class: "add-button btn btn-primary #{dom_class(klass, 'add_new')}"
|
|
17
|
+
%>
|
|
18
|
+
</li>
|
|
19
|
+
<% end %>
|
|
20
|
+
<% end %>
|
|
21
|
+
<li class="work-type placeholder" aria-hidden="true"></li>
|
|
22
|
+
<li class="work-type placeholder" aria-hidden="true"></li>
|
|
23
|
+
<li class="work-type placeholder" aria-hidden="true"></li>
|
|
24
|
+
</ul>
|
|
25
|
+
</div>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<fieldset class="optional prompt">
|
|
2
|
+
<legend>Additional Information</legend>
|
|
3
|
+
<%= f.input :subject, as: :multi_value, input_html: { class: 'form-control' } %>
|
|
4
|
+
<%= f.input :publisher, as: :multi_value, input_html: { class: 'form-control' } %>
|
|
5
|
+
<%= f.input :language, as: :multi_value, input_html: { class: 'form-control' } %>
|
|
6
|
+
</fieldset>
|