sufia 6.0.0 → 6.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +2 -5
- data/CONTRIBUTING.md +4 -4
- data/Gemfile +2 -1
- data/History.md +69 -0
- data/README.md +84 -4
- data/SUFIA_VERSION +1 -1
- data/app/assets/images/zotero.png +0 -0
- data/app/assets/javascripts/sufia/featured_works.js +20 -3
- data/app/assets/stylesheets/generic_files.css.erb +2 -2
- data/app/assets/stylesheets/sufia.css.scss +2 -2
- data/app/assets/stylesheets/sufia/_buttons.scss +2 -2
- data/app/assets/stylesheets/sufia/_collections.scss +4 -4
- data/app/assets/stylesheets/sufia/_dashboard.scss +1 -1
- data/app/assets/stylesheets/sufia/_file-listing.scss +3 -0
- data/app/assets/stylesheets/sufia/_modal.scss +4 -0
- data/app/assets/stylesheets/sufia/_settings.scss +4 -3
- data/app/assets/stylesheets/sufia/_styles.scss +4 -0
- data/app/controllers/admin/stats_controller.rb +68 -0
- data/app/controllers/api/items_controller.rb +78 -0
- data/app/controllers/api/zotero_controller.rb +70 -0
- data/app/controllers/authorities_controller.rb +6 -5
- data/app/controllers/concerns/sufia/batch_edits_controller_behavior.rb +2 -1
- data/app/controllers/concerns/sufia/breadcrumbs.rb +1 -1
- data/app/controllers/concerns/sufia/depositors_controller_behavior.rb +11 -0
- data/app/controllers/concerns/sufia/files_controller/browse_everything.rb +1 -1
- data/app/controllers/concerns/sufia/files_controller/local_ingest_behavior.rb +1 -1
- data/app/controllers/concerns/sufia/files_controller_behavior.rb +23 -11
- data/app/controllers/concerns/sufia/my_controller_behavior.rb +1 -7
- data/app/controllers/concerns/sufia/users_controller_behavior.rb +1 -2
- data/app/controllers/my/collections_controller.rb +1 -0
- data/app/controllers/my/files_controller.rb +1 -1
- data/app/helpers/sufia/sufia_helper_behavior.rb +28 -16
- data/app/models/my_search_builder.rb +4 -0
- data/app/search_builders/sufia/my_search_builder_behavior.rb +20 -0
- data/app/search_builders/sufia/search_builder.rb +1 -1
- data/app/views/admin/stats/index.html.erb +68 -0
- data/app/views/collections/_action_menu.html.erb +22 -20
- data/app/views/collections/_collection.html.erb +1 -1
- data/app/views/collections/_form_for_select_collection.html.erb +5 -3
- data/app/views/generic_files/_show_actions.html.erb +4 -2
- data/app/views/generic_files/show.html.erb +1 -1
- data/app/views/layouts/sufia-dashboard.html.erb +5 -4
- data/app/views/layouts/sufia-one-column.html.erb +2 -0
- data/app/views/layouts/sufia-two-column.html.erb +6 -4
- data/app/views/my/_facet_layout.html.erb +2 -2
- data/app/views/my/_facets.html.erb +4 -6
- data/app/views/my/index.html.erb +4 -3
- data/app/views/users/_edit_primary.html.erb +18 -17
- data/app/views/users/_follower_modal.html.erb +5 -1
- data/app/views/users/_following_modal.html.erb +5 -1
- data/app/views/users/_user_info.html.erb +6 -1
- data/app/views/users/_zotero.html.erb +12 -0
- data/config/locales/sufia.en.yml +10 -1
- data/config/routes.rb +23 -1
- data/lib/generators/sufia/admin_stat_generator.rb +17 -0
- data/lib/generators/sufia/install_generator.rb +8 -3
- data/{sufia-models/lib/generators/sufia/models/templates/config/resque_admin.rb → lib/generators/sufia/templates/sufia/stats_admin.rb} +3 -3
- data/lib/generators/sufia/upgrade400_generator.rb +2 -2
- data/lib/sufia.rb +3 -0
- data/lib/sufia/arkivo.rb +11 -0
- data/lib/sufia/arkivo/actor.rb +95 -0
- data/lib/sufia/arkivo/config.rb +11 -0
- data/lib/sufia/arkivo/create_subscription_job.rb +67 -0
- data/lib/sufia/arkivo/metadata_munger.rb +51 -0
- data/lib/sufia/arkivo/schema_validator.rb +55 -0
- data/lib/sufia/form_builder.rb +1 -1
- data/lib/sufia/inflections.rb +3 -0
- data/lib/sufia/version.rb +1 -1
- data/lib/sufia/zotero.rb +6 -0
- data/lib/sufia/zotero/config.rb +15 -0
- data/solr_conf/conf/solrconfig.xml +11 -0
- data/spec/controllers/admin_stats_controller_spec.rb +73 -0
- data/spec/controllers/api/items_controller_spec.rb +476 -0
- data/spec/controllers/api/zotero_controller_spec.rb +178 -0
- data/spec/controllers/batch_edits_controller_spec.rb +7 -0
- data/spec/controllers/collections_controller_spec.rb +1 -1
- data/spec/controllers/dashboard_controller_spec.rb +1 -1
- data/spec/controllers/depositors_controller_spec.rb +9 -5
- data/spec/controllers/generic_files_controller_spec.rb +5 -4
- data/spec/controllers/mailbox_controller_spec.rb +2 -2
- data/spec/controllers/my/collections_controller_spec.rb +1 -2
- data/spec/controllers/my/files_controller_spec.rb +5 -5
- data/spec/controllers/my/shares_controller_spec.rb +15 -3
- data/spec/controllers/pages_controller_spec.rb +1 -1
- data/spec/controllers/users_controller_spec.rb +10 -9
- data/spec/factories/api_items.rb +91 -0
- data/spec/factories/generic_files.rb +4 -0
- data/spec/factories/users.rb +4 -4
- data/spec/features/featured_item_spec.rb +26 -0
- data/spec/features/ingest_upload_files_spec.rb +2 -3
- data/spec/features/proxy_spec.rb +0 -1
- data/spec/helpers/permissions_helper_spec.rb +2 -2
- data/spec/helpers/sufia_helper_spec.rb +11 -5
- data/spec/inputs/select_with_help_input_spec.rb +2 -2
- data/spec/javascripts/helpers/.gitkeep +0 -0
- data/spec/javascripts/helpers/jasmine-jquery.js +832 -0
- data/spec/javascripts/jasmine_spec.rb +31 -0
- data/spec/javascripts/notify_update_link_spec.js +8 -0
- data/spec/javascripts/single_use_link_spec.js.coffee +23 -0
- data/spec/javascripts/support/jasmine.yml +124 -0
- data/spec/javascripts/support/jasmine_helper.rb +15 -0
- data/spec/javascripts/terms_of_service_spec.js.coffee +32 -0
- data/spec/javascripts/toggle_icon_spec.js +11 -0
- data/spec/jobs/active_fedora_id_based_job_spec.rb +3 -3
- data/spec/jobs/import_url_job_spec.rb +0 -2
- data/spec/lib/sufia/arkivo/actor_spec.rb +139 -0
- data/spec/lib/sufia/arkivo/create_subscription_job_spec.rb +54 -0
- data/spec/lib/sufia/arkivo/metadata_munger_spec.rb +48 -0
- data/spec/lib/sufia/arkivo/schema_validator_spec.rb +65 -0
- data/spec/lib/sufia/upload_complete_behavior_spec.rb +1 -1
- data/spec/lib/sufia/user_stat_importer_spec.rb +60 -0
- data/spec/lib/sufia/zotero/config_spec.rb +30 -0
- data/spec/models/collection_spec.rb +36 -7
- data/spec/models/file_download_stat_spec.rb +5 -5
- data/spec/models/file_usage_spec.rb +23 -0
- data/spec/models/file_view_stat_spec.rb +6 -6
- data/spec/models/fits_datastream_spec.rb +0 -5
- data/spec/models/generic_file_spec.rb +49 -14
- data/spec/models/local_authority_spec.rb +1 -1
- data/spec/models/proxy_deposit_request_spec.rb +1 -1
- data/spec/models/trophy_spec.rb +8 -8
- data/spec/models/user_spec.rb +33 -0
- data/spec/presenters/sufia/collection_presenter_spec.rb +1 -1
- data/spec/routing/api_route_spec.rb +91 -0
- data/spec/routing/route_spec.rb +1 -1
- data/spec/services/generic_file_audit_service_spec.rb +44 -8
- data/spec/spec_helper.rb +18 -3
- data/spec/support/features.rb +0 -2
- data/spec/support/locations.rb +0 -21
- data/spec/support/rake.rb +41 -0
- data/spec/support/selectors.rb +0 -50
- data/spec/tasks/rake_spec.rb +33 -12
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +12 -0
- data/spec/views/admin/stats/index.html.erb_spec.rb +45 -0
- data/spec/views/catalog/sort_and_per_page.html.erb_spec.rb +0 -1
- data/spec/views/dashboard/index_spec.rb +1 -1
- data/spec/views/generic_file/edit.html.erb_spec.rb +1 -1
- data/spec/views/generic_file/show.html.erb_spec.rb +1 -3
- data/spec/views/users/_follower_modal.html.erb_spec.rb +44 -7
- data/spec/views/users/_following_modal.html.erb_spec.rb +49 -7
- data/spec/views/users/edit.html.erb_spec.rb +72 -0
- data/spec/views/users/show.html.erb_spec.rb +1 -1
- data/sufia.gemspec +6 -2
- data/tasks/sufia-user.rake +14 -0
- metadata +130 -156
- data/spec/lib/sufia/id_service_spec.rb +0 -32
- data/spec/services/noid_spec.rb +0 -9
- data/spec/support/poltergeist.rb +0 -11
- data/spec/support/rake_output.rb +0 -20
- data/sufia-models/.gitignore +0 -17
- data/sufia-models/Gemfile +0 -4
- data/sufia-models/LICENSE.md +0 -177
- data/sufia-models/README.md +0 -39
- data/sufia-models/Rakefile +0 -1
- data/sufia-models/app/actors/sufia/generic_file/actor.rb +0 -137
- data/sufia-models/app/jobs/active_fedora_id_based_job.rb +0 -22
- data/sufia-models/app/jobs/active_fedora_pid_based_job.rb +0 -7
- data/sufia-models/app/jobs/audit_job.rb +0 -62
- data/sufia-models/app/jobs/batch_update_job.rb +0 -72
- data/sufia-models/app/jobs/characterize_job.rb +0 -10
- data/sufia-models/app/jobs/create_derivatives_job.rb +0 -14
- data/sufia-models/app/jobs/import_url_job.rb +0 -52
- data/sufia-models/app/jobs/ingest_local_file_job.rb +0 -46
- data/sufia-models/app/jobs/resolrize_job.rb +0 -9
- data/sufia-models/app/models/batch.rb +0 -36
- data/sufia-models/app/models/checksum_audit_log.rb +0 -21
- data/sufia-models/app/models/concerns/sufia/ability.rb +0 -61
- data/sufia-models/app/models/concerns/sufia/collection_behavior.rb +0 -24
- data/sufia-models/app/models/concerns/sufia/file_stat_utils.rb +0 -35
- data/sufia-models/app/models/concerns/sufia/generic_file.rb +0 -25
- data/sufia-models/app/models/concerns/sufia/generic_file/batches.rb +0 -28
- data/sufia-models/app/models/concerns/sufia/generic_file/characterization.rb +0 -89
- data/sufia-models/app/models/concerns/sufia/generic_file/content.rb +0 -13
- data/sufia-models/app/models/concerns/sufia/generic_file/derivatives.rb +0 -26
- data/sufia-models/app/models/concerns/sufia/generic_file/export.rb +0 -343
- data/sufia-models/app/models/concerns/sufia/generic_file/featured.rb +0 -11
- data/sufia-models/app/models/concerns/sufia/generic_file/full_text_indexing.rb +0 -43
- data/sufia-models/app/models/concerns/sufia/generic_file/indexing.rb +0 -14
- data/sufia-models/app/models/concerns/sufia/generic_file/metadata.rb +0 -98
- data/sufia-models/app/models/concerns/sufia/generic_file/mime_types.rb +0 -69
- data/sufia-models/app/models/concerns/sufia/generic_file/permissions.rb +0 -11
- data/sufia-models/app/models/concerns/sufia/generic_file/proxy_deposit.rb +0 -31
- data/sufia-models/app/models/concerns/sufia/generic_file/trophies.rb +0 -14
- data/sufia-models/app/models/concerns/sufia/generic_file/versions.rb +0 -16
- data/sufia-models/app/models/concerns/sufia/generic_file/virus_check.rb +0 -37
- data/sufia-models/app/models/concerns/sufia/model_methods.rb +0 -20
- data/sufia-models/app/models/concerns/sufia/user.rb +0 -137
- data/sufia-models/app/models/concerns/sufia/user_usage_stats.rb +0 -15
- data/sufia-models/app/models/datastreams/file_content_datastream.rb +0 -4
- data/sufia-models/app/models/datastreams/fits_datastream.rb +0 -152
- data/sufia-models/app/models/domain_term.rb +0 -5
- data/sufia-models/app/models/featured_work.rb +0 -22
- data/sufia-models/app/models/file_download_stat.rb +0 -18
- data/sufia-models/app/models/file_usage.rb +0 -34
- data/sufia-models/app/models/file_view_stat.rb +0 -18
- data/sufia-models/app/models/follow.rb +0 -12
- data/sufia-models/app/models/generic_file.rb +0 -3
- data/sufia-models/app/models/geo_names_resource.rb +0 -18
- data/sufia-models/app/models/group.rb +0 -8
- data/sufia-models/app/models/local_authority.rb +0 -86
- data/sufia-models/app/models/local_authority_entry.rb +0 -3
- data/sufia-models/app/models/proxy_deposit_request.rb +0 -85
- data/sufia-models/app/models/proxy_deposit_rights.rb +0 -4
- data/sufia-models/app/models/single_use_link.rb +0 -42
- data/sufia-models/app/models/subject_local_authority_entry.rb +0 -2
- data/sufia-models/app/models/sufia/avatar_uploader.rb +0 -20
- data/sufia-models/app/models/sufia/avatar_validator.rb +0 -8
- data/sufia-models/app/models/sufia/collection.rb +0 -5
- data/sufia-models/app/models/sufia/download.rb +0 -9
- data/sufia-models/app/models/sufia/orcid_validator.rb +0 -12
- data/sufia-models/app/models/sufia/pageview.rb +0 -9
- data/sufia-models/app/models/trophy.rb +0 -10
- data/sufia-models/app/models/user_stat.rb +0 -2
- data/sufia-models/app/models/version_committer.rb +0 -2
- data/sufia-models/app/services/sufia/analytics.rb +0 -50
- data/sufia-models/app/services/sufia/generic_file_audit_service.rb +0 -83
- data/sufia-models/app/services/sufia/generic_file_indexing_service.rb +0 -12
- data/sufia-models/app/services/sufia/id_service.rb +0 -45
- data/sufia-models/app/services/sufia/noid.rb +0 -22
- data/sufia-models/app/services/sufia/repository_audit_service.rb +0 -9
- data/sufia-models/config/locales/sufia.en.yml +0 -6
- data/sufia-models/lib/generators/sufia/models/abstract_migration_generator.rb +0 -30
- data/sufia-models/lib/generators/sufia/models/cached_stats_generator.rb +0 -24
- data/sufia-models/lib/generators/sufia/models/fulltext_generator.rb +0 -27
- data/sufia-models/lib/generators/sufia/models/install_generator.rb +0 -106
- data/sufia-models/lib/generators/sufia/models/orcid_field_generator.rb +0 -19
- data/sufia-models/lib/generators/sufia/models/proxies_generator.rb +0 -24
- data/sufia-models/lib/generators/sufia/models/templates/app/models/collection.rb +0 -2
- data/sufia-models/lib/generators/sufia/models/templates/config/analytics.yml +0 -9
- data/sufia-models/lib/generators/sufia/models/templates/config/clamav.rb +0 -1
- data/sufia-models/lib/generators/sufia/models/templates/config/mailboxer.rb +0 -17
- data/sufia-models/lib/generators/sufia/models/templates/config/mime_types.rb +0 -6
- data/sufia-models/lib/generators/sufia/models/templates/config/redis.yml +0 -9
- data/sufia-models/lib/generators/sufia/models/templates/config/redis_config.rb +0 -32
- data/sufia-models/lib/generators/sufia/models/templates/config/resque-pool.yml +0 -1
- data/sufia-models/lib/generators/sufia/models/templates/config/resque_config.rb +0 -5
- data/sufia-models/lib/generators/sufia/models/templates/config/setup_mail.rb +0 -3
- data/sufia-models/lib/generators/sufia/models/templates/config/solrconfig.xml +0 -223
- data/sufia-models/lib/generators/sufia/models/templates/config/sufia.rb +0 -144
- data/sufia-models/lib/generators/sufia/models/templates/migrations/acts_as_follower_migration.rb +0 -17
- data/sufia-models/lib/generators/sufia/models/templates/migrations/add_avatars_to_users.rb +0 -15
- data/sufia-models/lib/generators/sufia/models/templates/migrations/add_external_key_to_content_blocks.rb +0 -6
- data/sufia-models/lib/generators/sufia/models/templates/migrations/add_groups_to_users.rb +0 -11
- data/sufia-models/lib/generators/sufia/models/templates/migrations/add_ldap_attrs_to_user.rb +0 -27
- data/sufia-models/lib/generators/sufia/models/templates/migrations/add_linkedin_to_users.rb +0 -5
- data/sufia-models/lib/generators/sufia/models/templates/migrations/add_orcid_to_users.rb +0 -5
- data/sufia-models/lib/generators/sufia/models/templates/migrations/add_social_to_users.rb +0 -13
- data/sufia-models/lib/generators/sufia/models/templates/migrations/change_audit_log_pid_to_generic_file_id.rb +0 -5
- data/sufia-models/lib/generators/sufia/models/templates/migrations/change_proxy_deposit_request_pid_to_generic_file_id.rb +0 -5
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_checksum_audit_logs.rb +0 -19
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_content_blocks.rb +0 -10
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_featured_works.rb +0 -12
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_file_download_stats.rb +0 -12
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_file_view_stats.rb +0 -12
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_local_authorities.rb +0 -50
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_proxy_deposit_requests.rb +0 -16
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_proxy_deposit_rights.rb +0 -11
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_single_use_links.rb +0 -12
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_tinymce_assets.rb +0 -8
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_trophies.rb +0 -10
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_user_stats.rb +0 -19
- data/sufia-models/lib/generators/sufia/models/templates/migrations/create_version_committers.rb +0 -15
- data/sufia-models/lib/generators/sufia/models/update_content_blocks_generator.rb +0 -18
- data/sufia-models/lib/generators/sufia/models/upgrade400_generator.rb +0 -54
- data/sufia-models/lib/generators/sufia/models/upgrade600_generator.rb +0 -21
- data/sufia-models/lib/generators/sufia/models/usagestats_generator.rb +0 -19
- data/sufia-models/lib/generators/sufia/models/user_stats_generator.rb +0 -31
- data/sufia-models/lib/sufia/messages.rb +0 -66
- data/sufia-models/lib/sufia/models.rb +0 -34
- data/sufia-models/lib/sufia/models/active_fedora/redis.rb +0 -43
- data/sufia-models/lib/sufia/models/active_record/redis.rb +0 -56
- data/sufia-models/lib/sufia/models/engine.rb +0 -79
- data/sufia-models/lib/sufia/models/file_content.rb +0 -6
- data/sufia-models/lib/sufia/models/file_content/versions.rb +0 -21
- data/sufia-models/lib/sufia/models/resque.rb +0 -36
- data/sufia-models/lib/sufia/models/stats/user_stat_importer.rb +0 -108
- data/sufia-models/lib/sufia/models/user_local_directory_behavior.rb +0 -29
- data/sufia-models/lib/sufia/models/utils.rb +0 -22
- data/sufia-models/lib/sufia/models/version.rb +0 -5
- data/sufia-models/lib/sufia/models/virus_found_error.rb +0 -4
- data/sufia-models/lib/sufia/permissions.rb +0 -9
- data/sufia-models/lib/sufia/permissions/readable.rb +0 -20
- data/sufia-models/lib/sufia/permissions/writable.rb +0 -74
- data/sufia-models/lib/tasks/batch_cleanup.rake +0 -19
- data/sufia-models/lib/tasks/migrate.rake +0 -21
- data/sufia-models/lib/tasks/resque.rake +0 -13
- data/sufia-models/lib/tasks/stats_tasks.rake +0 -12
- data/sufia-models/lib/tasks/sufia-models_tasks.rake +0 -80
- data/sufia-models/sufia-models.gemspec +0 -52
@@ -0,0 +1,20 @@
|
|
1
|
+
# Behavior for the my controller search builder to allow the my controller to only get access to
|
2
|
+
# items I have edit access to.
|
3
|
+
#
|
4
|
+
# Separating as a behavior allows for easier overriding of the gem behavior.
|
5
|
+
module Sufia::MySearchBuilderBehavior
|
6
|
+
extend ActiveSupport::Concern
|
7
|
+
|
8
|
+
included do
|
9
|
+
include Blacklight::Solr::SearchBuilderBehavior
|
10
|
+
end
|
11
|
+
|
12
|
+
include Hydra::AccessControlsEnforcement
|
13
|
+
include Sufia::SearchBuilder
|
14
|
+
|
15
|
+
# show only files with edit permissions in lib/hydra/access_controls_enforcement.rb apply_gated_discovery
|
16
|
+
def discovery_permissions
|
17
|
+
["edit"]
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
@@ -10,7 +10,7 @@ module Sufia::SearchBuilder
|
|
10
10
|
]
|
11
11
|
end
|
12
12
|
|
13
|
-
def
|
13
|
+
def show_only_resources_deposited_by_current_user(solr_parameters)
|
14
14
|
solr_parameters[:fq] ||= []
|
15
15
|
solr_parameters[:fq] += [
|
16
16
|
ActiveFedora::SolrQueryBuilder.construct_query_for_rel(depositor: scope.current_user.user_key)
|
@@ -0,0 +1,68 @@
|
|
1
|
+
<div class="stats">
|
2
|
+
<h1>Statistics for <%= application_name %>
|
3
|
+
<%= Sufia::VERSION %></h1>
|
4
|
+
<br/>
|
5
|
+
|
6
|
+
<h2>Total Files: <%= @files_count[:total] %> </h2>
|
7
|
+
<br/>
|
8
|
+
<h3>Totals by Visibility</h3>
|
9
|
+
<ul>
|
10
|
+
<li>Open Access <span class="count">(<%= @files_count[:public] %>)</span></li>
|
11
|
+
<li><%= t("sufia.admin.stats.registered") %> <span class="count">(<%= @files_count[:registered] %>)</span></li>
|
12
|
+
<li>Private <span class="count">(<%= @files_count[:private] %>)</span></li>
|
13
|
+
</ul>
|
14
|
+
|
15
|
+
<h3>Top File Formats</h3>
|
16
|
+
<ul>
|
17
|
+
<% @top_formats.each do |k, v| %>
|
18
|
+
<li><%= k %> <span class="count">(<%= v %>)</span></li>
|
19
|
+
<% end %>
|
20
|
+
</ul>
|
21
|
+
|
22
|
+
<br/>
|
23
|
+
|
24
|
+
<h2>Total <%= application_name %> Users: <%= @users_count %> </h2>
|
25
|
+
<br/>
|
26
|
+
|
27
|
+
<h3>Newest Users</h3>
|
28
|
+
<%= form_for "users_stats", url: sufia.admin_stats_path, method: "GET" do |f| %>
|
29
|
+
<%= f.label "Display users registered since" %>
|
30
|
+
<input type="date" name="users_stats[start_date]" value="<%= @users_stats[:start_date] %>"></input>
|
31
|
+
<%= f.submit "Load Stats" %>
|
32
|
+
<%- end %>
|
33
|
+
|
34
|
+
<%- if @users_stats[:start_date] %>
|
35
|
+
<div>Total: <%= @recent_users.count %></div>
|
36
|
+
<%- else %>
|
37
|
+
Five most recent users:
|
38
|
+
<%- end %>
|
39
|
+
|
40
|
+
<ul>
|
41
|
+
<% @recent_users.each do |usr| %>
|
42
|
+
<li>
|
43
|
+
<a href="<%= sufia.profile_path(usr.user_key) %>" title="View user's profile"><%= usr.name %></a>
|
44
|
+
<%- if usr.department %>
|
45
|
+
of <%= usr.department %>
|
46
|
+
<%- end %>
|
47
|
+
registered
|
48
|
+
<span class="date">
|
49
|
+
<%= usr.created_at.to_time.strftime("%m/%d/%Y") %>
|
50
|
+
</span>
|
51
|
+
</li>
|
52
|
+
<% end %>
|
53
|
+
</ul>
|
54
|
+
|
55
|
+
|
56
|
+
<br/>
|
57
|
+
<h3>Most Active Users (top <%= @active_users.count %>)</h3>
|
58
|
+
<ul>
|
59
|
+
<% @active_users.each do |k, v| %>
|
60
|
+
<li>
|
61
|
+
<%= link_to_profile(k) %> <span class="count">(<%= v %>)</span>
|
62
|
+
</li>
|
63
|
+
<% end %>
|
64
|
+
<% if !params[:dep_count] %>
|
65
|
+
<p><%= link_to "View top 20", sufia.admin_stats_path, controller: "stats", dep_count: "20" %> </p>
|
66
|
+
<% end %>
|
67
|
+
</ul>
|
68
|
+
</div>
|
@@ -1,23 +1,25 @@
|
|
1
1
|
<div class="btn-group">
|
2
|
-
<button class="btn btn-sm
|
3
|
-
<
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
2
|
+
<button class="btn btn-sm dropdown-toggle" data-toggle="dropdown">Select an action <span class="caret"></span></button>
|
3
|
+
<ul class="dropdown-menu dropdown-menu-right">
|
4
|
+
<li>
|
5
|
+
<%= button_for_remove_from_collection(gf, 'Remove from Collection') %>
|
6
|
+
</li>
|
7
|
+
<li>
|
8
|
+
<%= link_to raw('<i class="glyphicon glyphicon-link over"></i> Single-Use Link to File'), '#',
|
9
|
+
class: "copypaste itemicon itemcode", title: "Single-Use Link to File", id: "copy_link_#{id}" %>
|
10
|
+
</li>
|
11
|
+
<li>
|
12
|
+
<%= link_to raw('<i class="glyphicon glyphicon-pencil"></i> Edit File'), sufia.edit_generic_file_path(id),
|
13
|
+
class: 'itemicon itemedit', title: 'Edit File' %>
|
14
|
+
</li>
|
15
|
+
<li>
|
16
|
+
<%= link_to raw('<i class="glyphicon glyphicon-download-alt"></i> Download File'), sufia.download_path(id),
|
17
|
+
class: 'itemicon itemdownload', title: 'Download File', target: '_new' %>
|
18
|
+
</li>
|
19
|
+
<li>
|
20
|
+
<%= display_trophy_link(@user, id) do |text| %>
|
21
|
+
<i class='glyphicon glyphicon-star'></i> <%= text %>
|
22
|
+
<% end %>
|
23
|
+
</li>
|
22
24
|
</ul>
|
23
25
|
</div>
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<div class="row">
|
6
6
|
<div class="col-sm-3">
|
7
7
|
<%= link_to [collections, collection] do %>
|
8
|
-
|
8
|
+
<%= image_tag "site_images/collection-icon.svg", class: "collection-icon-search" %>
|
9
9
|
<% end %>
|
10
10
|
</div>
|
11
11
|
<div class="col-sm-9">
|
@@ -3,23 +3,25 @@
|
|
3
3
|
<div class="modal-content">
|
4
4
|
<div class="modal-header">
|
5
5
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
6
|
-
<
|
6
|
+
<span class="modal-title" id="col_add_title"><%= t("sufia.collection.select_form.title") %></span>
|
7
7
|
</div>
|
8
8
|
<div class="modal-body">
|
9
9
|
<% if user_collections.blank? %>
|
10
10
|
<em> <%= t("sufia.collection.select_form.no_collections") %></em><br><br><br><br>
|
11
11
|
<% else %>
|
12
|
-
<%= t("sufia.collection.select_form.select_heading") %>
|
13
12
|
<div class="collection-list">
|
13
|
+
<fieldset>
|
14
|
+
<legend><%= t("sufia.collection.select_form.select_heading") %></legend>
|
14
15
|
<ul>
|
15
16
|
<% user_collections.sort! { |c1,c2| c1['date_modified_dtsi'] <=> c2['date_modified_dtsi'] } %>
|
16
17
|
<% user_collections.each do |collection| %>
|
17
|
-
<li> <label for="<%= collection.id %>" class="sr-only">Add to <%=collection.title%></label>
|
18
|
+
<li> <label for="id_<%= collection.id %>" class="sr-only">Add to <%=collection.title%></label>
|
18
19
|
<%= radio_button_tag(:id, collection.id, true, class: "collection-selector") %>
|
19
20
|
<%= label_tag(:collection, collection.title, "aria-hidden" =>true) %>
|
20
21
|
</li>
|
21
22
|
<% end %>
|
22
23
|
</ul>
|
24
|
+
</fieldset>
|
23
25
|
</div><!-- collection-list -->
|
24
26
|
<% end %> <!-- else -->
|
25
27
|
</div>
|
@@ -1,4 +1,5 @@
|
|
1
|
-
|
1
|
+
<div id="show_actions">
|
2
|
+
<h2 class="non lower">Actions</h2>
|
2
3
|
<p>
|
3
4
|
<%= render_download_link %>
|
4
5
|
<% if Sufia.config.analytics %>
|
@@ -19,7 +20,7 @@
|
|
19
20
|
<%= link_to "Feature", sufia.featured_work_path(@generic_file, format: :json), data: {behavior: 'feature'} %>
|
20
21
|
<% elsif @generic_file.featured? %>
|
21
22
|
|
|
22
|
-
|
23
|
+
<%= link_to "Unfeature", sufia.featured_work_path(@generic_file, format: :json), data: {behavior: 'unfeature-page'} %>
|
23
24
|
<% end %>
|
24
25
|
<% end %>
|
25
26
|
</p>
|
@@ -43,3 +44,4 @@
|
|
43
44
|
|
44
45
|
<!-- COinS hook for Zotero -->
|
45
46
|
<span class="Z3988" title="<%= @generic_file.export_as_openurl_ctx_kev %>"></span>
|
47
|
+
</div>
|
@@ -34,7 +34,7 @@
|
|
34
34
|
<%= javascript_include_tag 'https://s7.addthis.com/js/250/addthis_widget.js#pubid=ra-4ff1d986721ebb24' %>
|
35
35
|
|
36
36
|
<%= javascript_tag do %>
|
37
|
-
var addthis_config = {"data_track_addressbar":
|
37
|
+
var addthis_config = {"data_track_addressbar":false};
|
38
38
|
initialize_audio();
|
39
39
|
<% end %>
|
40
40
|
|
@@ -5,19 +5,20 @@
|
|
5
5
|
<div id="wrapper">
|
6
6
|
<div class="container-fluid">
|
7
7
|
<div id="page-positioner">
|
8
|
-
|
8
|
+
<a href="#skip_to_content" class="sr-only">Skip to Content</a>
|
9
9
|
<%= render partial: '/masthead' %>
|
10
10
|
<%= render partial: '/controls' %>
|
11
11
|
<%= render partial: '/flash_msg' %>
|
12
12
|
|
13
|
-
<div id="content-wrapper" class="dashboard">
|
13
|
+
<div id="content-wrapper" class="dashboard" role="main">
|
14
|
+
<a name="skip_to_content"></a>
|
14
15
|
<div class="container-fluid">
|
15
16
|
<div id="content-header" class="row"><%= yield :heading %></div>
|
16
17
|
</div>
|
17
18
|
<div class="container-fluid">
|
18
19
|
<div id="content" class="row">
|
19
|
-
<div
|
20
|
-
<div class="col-xs-12 col-sm-9"><%= yield %></div>
|
20
|
+
<div class="col-xs-12 col-sm-9 col-sm-push-3"><%= yield %></div>
|
21
|
+
<div id="sidebar" class="col-xs-12 col-sm-3 col-sm-pull-9"><%= yield :sidebar %></div>
|
21
22
|
</div>
|
22
23
|
</div>
|
23
24
|
</div>
|
@@ -8,10 +8,12 @@
|
|
8
8
|
<div id="wrapper">
|
9
9
|
<div class="container-fluid">
|
10
10
|
<div id="page-positioner">
|
11
|
+
<a href="#skip_to_content" class="sr-only">Skip to Content</a>
|
11
12
|
<%= render partial: '/masthead' %>
|
12
13
|
<%= render partial: '/controls' %>
|
13
14
|
<%= render partial: '/flash_msg' %>
|
14
15
|
<div id="content-wrapper" class="container-fluid">
|
16
|
+
<a name="skip_to_content"></a>
|
15
17
|
<div id="content" class="row">
|
16
18
|
<div class="col-xs-12">
|
17
19
|
<%= yield %>
|
@@ -8,17 +8,19 @@
|
|
8
8
|
<div id="wrapper">
|
9
9
|
<div class="container-fluid">
|
10
10
|
<div id="page-positioner">
|
11
|
+
<a href="#skip_to_content" class="sr-only">Skip to Content</a>
|
11
12
|
<%= render partial: '/masthead' %>
|
12
13
|
<%= render partial: '/controls' %>
|
13
14
|
<%= render partial: '/flash_msg' %>
|
14
15
|
<div id="content-wrapper" class="container-fluid">
|
16
|
+
<a name="skip_to_content"></a>
|
15
17
|
<div class="row">
|
16
|
-
<div id="
|
17
|
-
<%= yield :sidebar %>
|
18
|
-
</div>
|
19
|
-
<div id="content" class="col-xs-12 col-sm-9">
|
18
|
+
<div id="content" class="col-xs-12 col-sm-9 col-sm-push-3">
|
20
19
|
<%= yield %>
|
21
20
|
</div>
|
21
|
+
<div id="sidebar" class="col-xs-12 col-sm-3 col-sm-push-9">
|
22
|
+
<%= yield :sidebar %>
|
23
|
+
</div>
|
22
24
|
</div><!-- /#content -->
|
23
25
|
</div><!-- /#content-wrapper -->
|
24
26
|
<%= render partial: '/footer' %>
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<div class="panel panel-default facet_limit blacklight-<%= facet_field.field.parameterize %> <%= 'facet_limit-active' if facet_field_in_params?(facet_field.field) %>">
|
2
2
|
<div class="<%= "collapsed" if should_collapse_facet?(facet_field) %> collapse-toggle panel-heading" data-toggle="collapse" data-target="#<%= facet_field_id(facet_field) %>">
|
3
|
-
<
|
3
|
+
<h4 class="panel-title">
|
4
4
|
<%= link_to facet_field_label(facet_field.field), "#", :"data-no-turbolink" => true %>
|
5
|
-
</
|
5
|
+
</h4>
|
6
6
|
</div>
|
7
7
|
<div id="<%= facet_field_id(facet_field) %>" class="panel-collapse facet-content <%= should_collapse_facet?(facet_field) ? 'collapse' : 'in' %>">
|
8
8
|
<div class="panel-body">
|
@@ -8,13 +8,11 @@
|
|
8
8
|
<span class="fa fa-bars"></span>
|
9
9
|
</button>
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
</h4>
|
14
|
-
</div>
|
11
|
+
<h3><%= t("sufia.dashboard.my.facet_label.#{current_tab}") %></h3>
|
12
|
+
</div>
|
15
13
|
|
16
14
|
<div id="facet-panel-collapse" class="collapse panel-group">
|
17
|
-
|
18
|
-
</div>
|
15
|
+
<%= render_facet_partials %>
|
16
|
+
</div>
|
19
17
|
</div>
|
20
18
|
<% end %>
|
data/app/views/my/index.html.erb
CHANGED
@@ -10,8 +10,8 @@
|
|
10
10
|
|
11
11
|
<% @page_title = "#{current_tab.capitalize} listing" %>
|
12
12
|
|
13
|
-
<
|
14
|
-
|
13
|
+
<h1 class="sr-only">My Files, Collections, Highlights, and Files Shared with Me</h1>
|
14
|
+
<ul class="nav nav-tabs" id="my_nav" role="navigation">
|
15
15
|
<span class="sr-only">You are currently listing your <%= current_tab.pluralize %> . You have <%= @response.docs.count %> <%= current_tab.pluralize(@response.docs.count)%> </span>
|
16
16
|
<li class="<%= "active" if @selected_tab == :files %>">
|
17
17
|
<%= link_to t('sufia.dashboard.my.files'), sufia.dashboard_files_path %>
|
@@ -29,10 +29,11 @@
|
|
29
29
|
|
30
30
|
<%= render 'search_header' %>
|
31
31
|
|
32
|
-
<
|
32
|
+
<h2 class="sr-only"><%=@page_title %></h2>
|
33
33
|
<%= render partial: 'document_list' %>
|
34
34
|
|
35
35
|
<% content_for :sidebar do %>
|
36
|
+
<span class="sr-only">Upload Files or Create Collection</span>
|
36
37
|
<%= link_to t('sufia.dashboard.upload_html'), sufia.new_generic_file_path, class: "btn btn-primary" %>
|
37
38
|
<%= link_to t('sufia.dashboard.create_collection_html'), collections.new_collection_path, id: "hydra-collection-add", class: "btn btn-primary" %>
|
38
39
|
<%= render partial: 'facets', locals: {current_tab: current_tab} %>
|
@@ -7,25 +7,27 @@
|
|
7
7
|
<%= f.file_field :avatar %>
|
8
8
|
<%= f.hidden_field :avatar_cache %>
|
9
9
|
<span class="help-block">JPG, GIF, or PNG (less than 2MB)</span>
|
10
|
+
|
11
|
+
<div class="checkbox">
|
12
|
+
<%= f.label :remove_avatar do %>
|
13
|
+
<%= f.check_box :remove_avatar %>
|
14
|
+
Delete picture
|
15
|
+
<a href="#" id="delete_picture_help" rel="popover" data-content="If you would like to remove your picture entirely, check the box and save your profile." data-original-title="Delete Picture"><i class="glyphicon glyphicon-question-sign"></i></a>
|
16
|
+
<% end %>
|
17
|
+
</div>
|
18
|
+
<div class="checkbox">
|
19
|
+
<%= f.label :update_directory do %>
|
20
|
+
<%= f.check_box :update_directory %>
|
21
|
+
Refresh directory info
|
22
|
+
<a href="#" id="refresh_directory_help" rel="popover" data-content="The information displayed in your profile comes from <%=t('sufia.institution_name') %>'s central directory (LDAP) and is cached by <%=t('sufia.product_name') %>. If you have updated that information and don't see those changes in your <%=t('sufia.product_name') %> profile, check the box and save your profile." data-original-title="Refresh Directory Info"><i class="glyphicon glyphicon-question-sign"></i></a>
|
23
|
+
<% end %>
|
24
|
+
</div>
|
10
25
|
</div>
|
11
26
|
</div><!-- .form-group -->
|
12
27
|
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
<%= f.check_box :remove_avatar %>
|
17
|
-
Delete picture
|
18
|
-
<a href="#" id="delete_picture_help" rel="popover" data-content="If you would like to remove your picture entirely, check the box and save your profile." data-original-title="Delete Picture"><i class="glyphicon glyphicon-question-sign"></i></a>
|
19
|
-
<% end %>
|
20
|
-
</div>
|
21
|
-
<div class="checkbox">
|
22
|
-
<%= f.label :update_directory do %>
|
23
|
-
<%= f.check_box :update_directory %>
|
24
|
-
Refresh directory info
|
25
|
-
<a href="#" id="refresh_directory_help" rel="popover" data-content="The information displayed in your profile comes from <%=t('sufia.institution_name') %>'s central directory (LDAP) and is cached by <%=t('sufia.product_name') %>. If you have updated that information and don't see those changes in your <%=t('sufia.product_name') %> profile, check the box and save your profile." data-original-title="Refresh Directory Info"><i class="glyphicon glyphicon-question-sign"></i></a>
|
26
|
-
<% end %>
|
27
|
-
</div>
|
28
|
-
</div>
|
28
|
+
<% if Sufia.config.arkivo_api %>
|
29
|
+
<%= render partial: 'zotero', locals: { f: f, user: @user } %>
|
30
|
+
<% end %>
|
29
31
|
|
30
32
|
<div class="form-group">
|
31
33
|
<%= f.label :orcid, class: 'col-xs-4 control-label' do %>
|
@@ -65,4 +67,3 @@
|
|
65
67
|
<div class="well">
|
66
68
|
<%= render 'dashboard/_index_partials/proxy_rights' %>
|
67
69
|
</div>
|
68
|
-
|
@@ -18,7 +18,11 @@
|
|
18
18
|
<% end %>
|
19
19
|
</ul>
|
20
20
|
<% else %>
|
21
|
-
|
21
|
+
<% if current_user and @user.id == current_user.id %>
|
22
|
+
<h3> <%= t("sufia.user_profile.no_followers") %></h3>
|
23
|
+
<% else %>
|
24
|
+
<h3> <%= t("sufia.user_profile.no_followers_other") %></h3>
|
25
|
+
<% end %>
|
22
26
|
<% end %>
|
23
27
|
</div>
|
24
28
|
<div class="modal-footer">
|
@@ -18,7 +18,11 @@
|
|
18
18
|
<% end %>
|
19
19
|
</ul>
|
20
20
|
<% else %>
|
21
|
-
|
21
|
+
<% if current_user and @user.id == current_user.id %>
|
22
|
+
<h3> <%= t("sufia.user_profile.no_following") %></h3>
|
23
|
+
<% else %>
|
24
|
+
<h3> <%= t("sufia.user_profile.no_following_other") %></h3>
|
25
|
+
<% end %>
|
22
26
|
<% end %>
|
23
27
|
</div>
|
24
28
|
<div class="modal-footer">
|
@@ -1,10 +1,15 @@
|
|
1
1
|
<dl id="user_info" class="row">
|
2
2
|
|
3
3
|
<% if user.orcid.present? %>
|
4
|
-
<dt class="col-xs-5"><%= orcid_label('
|
4
|
+
<dt class="col-xs-5"><%= orcid_label('profile') %></dt>
|
5
5
|
<dd class="col-xs-7"><%= link_to user.orcid, user.orcid, { target: '_blank' } %></dd>
|
6
6
|
<% end %>
|
7
7
|
|
8
|
+
<% if user.zotero_userid.present? %>
|
9
|
+
<dt class="col-xs-5"><%= zotero_label(html_class: 'profile') %></dt>
|
10
|
+
<dd class="col-xs-7"><%= link_to zotero_profile_url(user.zotero_userid), zotero_profile_url(user.zotero_userid), { target: '_blank' } %></dd>
|
11
|
+
<% end %>
|
12
|
+
|
8
13
|
<% if user.facebook_handle.present? %>
|
9
14
|
<dt class="col-xs-5"><i class="fa fa-facebook"></i> Facebook Handle</dt>
|
10
15
|
<dd class="col-xs-7"><%= link_to user.facebook_handle, "http://facebook.com/#{user.facebook_handle}", {target:'_blank'} %></dd>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
<div class="form-group">
|
2
|
+
<%= f.label :zotero, class: 'col-xs-4 control-label' do %>
|
3
|
+
<%= zotero_label %>
|
4
|
+
<% end %>
|
5
|
+
<div class="col-xs-8">
|
6
|
+
<% if user.zotero_userid.present? %>
|
7
|
+
<%= link_to t('sufia.user_profile.zotero.connected'), zotero_profile_url(user.zotero_userid), class: "form-control" %>
|
8
|
+
<% else %>
|
9
|
+
<%= link_to t('sufia.user_profile.zotero.unlinked'), sufia.api_zotero_initiate_path, id: "zotero", class: "btn btn-mini btn-primary" %>
|
10
|
+
<% end %>
|
11
|
+
</div>
|
12
|
+
</div><!-- .form-group -->
|