sufia 7.1.0 → 7.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (393) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +49 -0
  3. data/.engine_cart.yml +1 -0
  4. data/.eslintignore +1 -0
  5. data/.eslintrc +213 -0
  6. data/.gitignore +2 -0
  7. data/.hound.yml +5 -0
  8. data/.rubocop.yml +27 -17
  9. data/.rubocop_todo.yml +6 -3
  10. data/.scss-lint.yml +253 -0
  11. data/.travis.yml +3 -2
  12. data/Gemfile +5 -1
  13. data/README.md +30 -16
  14. data/app/assets/javascripts/sufia.js +6 -0
  15. data/app/assets/javascripts/sufia/app.js +13 -5
  16. data/app/assets/javascripts/sufia/fileupload.js.erb +12 -0
  17. data/app/assets/javascripts/sufia/initialize.js +3 -0
  18. data/app/assets/javascripts/sufia/save_work/required_fields.es6 +5 -1
  19. data/app/assets/javascripts/sufia/save_work/save_work_control.es6 +12 -0
  20. data/app/assets/javascripts/sufia/trophy.js +14 -14
  21. data/app/assets/javascripts/sufia/uploader.js +32 -3
  22. data/app/assets/stylesheets/fileupload/jquery.fileupload-ui.scss +29 -35
  23. data/app/assets/stylesheets/sufia/_batch-edit.scss +0 -5
  24. data/app/assets/stylesheets/sufia/_browse_everything_overrides.scss +1 -1
  25. data/app/assets/stylesheets/sufia/_buttons.scss +6 -1
  26. data/app/assets/stylesheets/sufia/_catalog.scss +6 -0
  27. data/app/assets/stylesheets/sufia/_collections.scss +29 -13
  28. data/app/assets/stylesheets/sufia/_dashboard.scss +27 -19
  29. data/app/assets/stylesheets/sufia/_file-listing.scss +7 -0
  30. data/app/assets/stylesheets/sufia/_file_upload.scss +20 -0
  31. data/app/assets/stylesheets/sufia/_form.scss +30 -0
  32. data/app/assets/stylesheets/sufia/_home-page.scss +87 -33
  33. data/app/assets/stylesheets/sufia/_representative-media.scss +4 -0
  34. data/app/assets/stylesheets/sufia/_styles.scss +0 -23
  35. data/app/assets/stylesheets/sufia/_sufia.scss +10 -7
  36. data/app/assets/stylesheets/sufia/_variables.scss +14 -0
  37. data/app/assets/stylesheets/sufia/_work-show.scss +1 -1
  38. data/app/assets/stylesheets/sufia/admin.scss +203 -0
  39. data/app/assets/stylesheets/sufia/widgets.css +288 -0
  40. data/app/controllers/api/items_controller.rb +1 -1
  41. data/app/controllers/concerns/sufia/admin/stats_behavior.rb +7 -1
  42. data/app/controllers/concerns/sufia/batch_edits_controller_behavior.rb +1 -1
  43. data/app/controllers/concerns/sufia/batch_uploads_controller_behavior.rb +0 -1
  44. data/app/controllers/concerns/sufia/collections_controller_behavior.rb +1 -1
  45. data/app/controllers/concerns/sufia/contact_form_controller_behavior.rb +19 -5
  46. data/app/controllers/concerns/sufia/deny_access_override_behavior.rb +13 -0
  47. data/app/controllers/concerns/sufia/depositors_controller_behavior.rb +1 -10
  48. data/app/controllers/concerns/sufia/file_sets_controller_behavior.rb +1 -1
  49. data/app/controllers/concerns/sufia/homepage_controller_behavior.rb +11 -2
  50. data/app/controllers/concerns/sufia/my_controller_behavior.rb +7 -16
  51. data/app/controllers/concerns/sufia/singular_subresource_controller.rb +1 -10
  52. data/app/controllers/concerns/sufia/transfers_controller_behavior.rb +1 -1
  53. data/app/controllers/concerns/sufia/users_controller_behavior.rb +2 -25
  54. data/app/controllers/concerns/sufia/works_controller_behavior.rb +27 -3
  55. data/app/controllers/content_blocks_controller.rb +12 -2
  56. data/app/controllers/curation_concerns/file_sets_controller.rb +0 -1
  57. data/app/controllers/curation_concerns/permissions_controller.rb +8 -16
  58. data/app/controllers/my/highlights_controller.rb +1 -1
  59. data/app/controllers/stats_controller.rb +2 -2
  60. data/app/controllers/sufia/admin/admin_sets_controller.rb +114 -0
  61. data/app/controllers/sufia/admin/features_controller.rb +13 -0
  62. data/app/controllers/sufia/admin/stats_controller.rb +5 -0
  63. data/app/controllers/sufia/admin/strategies_controller.rb +14 -0
  64. data/app/controllers/sufia/admin_controller.rb +11 -0
  65. data/app/controllers/sufia/admin_sets_controller.rb +25 -0
  66. data/app/controllers/sufia/resource_sync_controller.rb +11 -15
  67. data/app/forms/sufia/forms/admin_set_form.rb +30 -0
  68. data/app/forms/sufia/forms/batch_edit_form.rb +1 -1
  69. data/app/forms/sufia/forms/work_form.rb +2 -2
  70. data/app/helpers/sufia/citations_behaviors/title_behavior.rb +1 -1
  71. data/app/helpers/sufia/dashboard_helper_behavior.rb +6 -0
  72. data/app/helpers/sufia/permissions_helper.rb +19 -0
  73. data/app/helpers/sufia/sufia_helper_behavior.rb +13 -6
  74. data/app/indexers/sufia/work_indexer.rb +4 -0
  75. data/app/jobs/attach_files_to_work_job.rb +3 -1
  76. data/app/jobs/content_depositor_change_event_job.rb +0 -7
  77. data/app/jobs/content_event_job.rb +0 -7
  78. data/app/jobs/event_job.rb +1 -11
  79. data/app/jobs/inherit_permissions_job.rb +24 -0
  80. data/app/mailers/sufia/contact_mailer.rb +11 -0
  81. data/app/models/concerns/sufia/ability.rb +12 -1
  82. data/app/models/concerns/sufia/content_block_behavior.rb +47 -0
  83. data/app/models/concerns/sufia/solr_document/export.rb +6 -0
  84. data/app/models/concerns/sufia/solr_document_behavior.rb +4 -0
  85. data/app/models/concerns/sufia/user.rb +7 -8
  86. data/app/models/concerns/sufia/with_events.rb +5 -1
  87. data/app/models/concerns/sufia/works/featured.rb +1 -1
  88. data/app/models/concerns/sufia/works/trophies.rb +1 -1
  89. data/app/models/content_block.rb +1 -39
  90. data/app/models/featured_work_list.rb +0 -1
  91. data/app/models/file_download_stat.rb +18 -7
  92. data/app/models/file_view_stat.rb +5 -2
  93. data/app/models/sufia/contact_form.rb +33 -0
  94. data/app/models/sufia/feature.rb +5 -0
  95. data/app/models/sufia/statistic.rb +6 -5
  96. data/app/presenters/sufia/admin_dashboard_presenter.rb +8 -0
  97. data/app/presenters/sufia/admin_set_presenter.rb +7 -0
  98. data/app/presenters/sufia/admin_stats_presenter.rb +0 -4
  99. data/app/presenters/sufia/collection_presenter.rb +5 -4
  100. data/app/presenters/sufia/file_set_presenter.rb +16 -3
  101. data/app/presenters/sufia/file_usage.rb +37 -0
  102. data/app/presenters/sufia/stats_usage_presenter.rb +43 -0
  103. data/app/presenters/sufia/trophy_presenter.rb +2 -0
  104. data/app/presenters/sufia/work_show_presenter.rb +3 -1
  105. data/app/presenters/sufia/work_usage.rb +30 -0
  106. data/app/search_builders/collection_search_builder.rb +1 -1
  107. data/app/search_builders/sufia/admin_set_member_search_builder.rb +12 -0
  108. data/app/search_builders/sufia/single_admin_set_search_builder.rb +9 -0
  109. data/app/services/sufia/admin_set_service.rb +22 -0
  110. data/app/services/sufia/analytics.rb +51 -26
  111. data/app/services/sufia/collection_size_service.rb +1 -1
  112. data/app/services/sufia/file_set_csv_service.rb +1 -1
  113. data/app/services/sufia/statistics/system_stats.rb +0 -6
  114. data/app/views/_controls.html.erb +8 -4
  115. data/app/views/_logo.html.erb +1 -1
  116. data/app/views/_toolbar.html.erb +1 -1
  117. data/app/views/catalog/_facet_limit.html.erb +2 -2
  118. data/app/views/catalog/_search_form.html.erb +0 -4
  119. data/app/views/catalog/_thumbnail_list_collection.html.erb +1 -3
  120. data/app/views/catalog/index.html.erb +1 -1
  121. data/app/views/collections/_dashboard_document_list.html.erb +1 -3
  122. data/app/views/collections/_document_list.html.erb +0 -2
  123. data/app/views/collections/_form.html.erb +1 -1
  124. data/app/views/collections/_form_for_select_collection.html.erb +1 -1
  125. data/app/views/collections/_media_display.html.erb +1 -3
  126. data/app/views/collections/_show_descriptions.html.erb +1 -1
  127. data/app/views/collections/_show_document_list.html.erb +3 -1
  128. data/app/views/collections/_show_document_list_menu.html.erb +12 -12
  129. data/app/views/collections/_show_document_list_row.html.erb +6 -4
  130. data/app/views/contact_form/new.html.erb +1 -1
  131. data/app/views/curation_concerns/base/_attribute_rows.html.erb +12 -10
  132. data/app/views/curation_concerns/base/_citations.html.erb +2 -2
  133. data/app/views/curation_concerns/base/_form_files.html.erb +11 -3
  134. data/app/views/curation_concerns/base/_form_metadata.html.erb +1 -1
  135. data/app/views/curation_concerns/base/_form_progress.html.erb +2 -2
  136. data/app/views/curation_concerns/base/_form_relationships.html.erb +8 -0
  137. data/app/views/curation_concerns/base/_guts4form.html.erb +8 -4
  138. data/app/views/curation_concerns/base/_items.html.erb +7 -7
  139. data/app/views/curation_concerns/base/_relationships.html.erb +0 -1
  140. data/app/views/curation_concerns/base/_show_actions.html.erb +3 -0
  141. data/app/views/curation_concerns/base/_social_media.html.erb +49 -15
  142. data/app/views/curation_concerns/file_sets/_actions.html.erb +1 -9
  143. data/app/views/curation_concerns/file_sets/_groups_description.html.erb +1 -5
  144. data/app/views/curation_concerns/file_sets/media_display/_default.html.erb +3 -0
  145. data/app/views/curation_concerns/permissions/confirm_access.html.erb +12 -0
  146. data/app/views/dashboard/_index_partials/_heading_greetings.html.erb +1 -1
  147. data/app/views/layouts/admin.html.erb +71 -0
  148. data/app/views/layouts/{sufia-one-column.html.erb → curation_concerns/1_column.html.erb} +1 -1
  149. data/app/views/layouts/homepage.html.erb +35 -2
  150. data/app/views/layouts/sufia-dashboard.html.erb +1 -1
  151. data/app/views/my/_facet_pagination.html.erb +5 -5
  152. data/app/views/my/_index_partials/_list_collections.html.erb +1 -3
  153. data/app/views/my/_scripts.js.erb +1 -2
  154. data/app/views/my/index.html.erb +3 -3
  155. data/app/views/records/edit_fields/_description.html.erb +2 -2
  156. data/app/views/records/edit_fields/_rights.html.erb +3 -2
  157. data/app/views/records/show_fields/_rights.html.erb +2 -1
  158. data/app/views/shared/_footer.html.erb +1 -1
  159. data/app/views/sufia/admin/_menu.html.erb +5 -0
  160. data/app/views/sufia/admin/_sidebar.html.erb +23 -0
  161. data/app/views/sufia/admin/admin_sets/_form.html.erb +18 -0
  162. data/app/views/sufia/admin/admin_sets/_sort_and_per_page.html.erb +5 -0
  163. data/app/views/sufia/admin/admin_sets/edit.html.erb +9 -0
  164. data/app/views/sufia/admin/admin_sets/index.html.erb +46 -0
  165. data/app/views/sufia/admin/admin_sets/new.html.erb +9 -0
  166. data/app/views/sufia/admin/admin_sets/show.html.erb +43 -0
  167. data/app/views/sufia/admin/features/index.html.erb +57 -0
  168. data/app/views/sufia/admin/show.html.erb +36 -0
  169. data/app/views/{admin → sufia/admin}/stats/_date_form.html.erb +0 -0
  170. data/app/views/{admin → sufia/admin}/stats/_deposits.html.erb +0 -0
  171. data/app/views/{admin → sufia/admin}/stats/_new_users.html.erb +0 -0
  172. data/app/views/{admin → sufia/admin}/stats/_stats_by_date.html.erb +4 -4
  173. data/app/views/{admin → sufia/admin}/stats/_top_data.html.erb +2 -2
  174. data/app/views/{admin → sufia/admin}/stats/_works.html.erb +0 -0
  175. data/app/views/sufia/admin/stats/show.html.erb +7 -0
  176. data/app/views/sufia/admin_sets/_admin_set.html.erb +25 -0
  177. data/app/views/sufia/admin_sets/_document_list.html.erb +30 -0
  178. data/app/views/sufia/admin_sets/_member_document.html.erb +26 -0
  179. data/app/views/sufia/admin_sets/_search_form.html.erb +12 -0
  180. data/app/views/sufia/admin_sets/_sort_and_per_page.html.erb +5 -0
  181. data/app/views/sufia/admin_sets/index.html.erb +2 -0
  182. data/app/views/sufia/admin_sets/show.html.erb +33 -0
  183. data/app/views/sufia/contact_mailer/contact.html.erb +5 -0
  184. data/app/views/sufia/homepage/_explore_collections.html.erb +28 -0
  185. data/app/views/sufia/homepage/_featured_researcher.html.erb +7 -2
  186. data/app/views/sufia/homepage/_featured_works.html.erb +1 -1
  187. data/app/views/sufia/homepage/_home_content.html.erb +21 -3
  188. data/app/views/sufia/homepage/_marketing.html.erb +1 -1
  189. data/app/views/sufia/homepage/_recently_uploaded.html.erb +14 -16
  190. data/app/views/sufia/homepage/index.html.erb +14 -5
  191. data/app/views/users/_activity_log.html.erb +0 -1
  192. data/app/views/users/_contributions.html.erb +1 -1
  193. data/app/views/users/_profile_actions.html.erb +6 -16
  194. data/app/views/users/_vitals.html.erb +0 -5
  195. data/app/views/users/index.html.erb +16 -16
  196. data/config/features.rb +10 -0
  197. data/config/locales/sufia.en.yml +76 -25
  198. data/config/routes.rb +16 -17
  199. data/db/migrate/20160415212015_create_features.rb +10 -0
  200. data/lib/generators/sufia/install_generator.rb +10 -34
  201. data/lib/generators/sufia/templates/catalog_controller.rb +7 -6
  202. data/lib/generators/sufia/templates/config/sufia.rb +7 -0
  203. data/lib/generators/sufia/work_generator.rb +2 -2
  204. data/lib/sufia.rb +0 -1
  205. data/lib/sufia/arkivo/metadata_munger.rb +13 -2
  206. data/lib/sufia/configuration.rb +5 -0
  207. data/lib/sufia/controlled_vocabulary/importer/downloader.rb +17 -0
  208. data/lib/sufia/controlled_vocabulary/importer/language.rb +62 -0
  209. data/lib/sufia/engine.rb +7 -0
  210. data/lib/sufia/redis_event_store.rb +2 -2
  211. data/lib/sufia/resource_sync/resource_list_writer.rb +1 -1
  212. data/lib/sufia/version.rb +1 -1
  213. data/solr/config/solrconfig.xml +26 -15
  214. data/spec/actors/sufia/create_with_files_actor_spec.rb +6 -4
  215. data/spec/actors/sufia/create_with_remote_files_actor_spec.rb +26 -18
  216. data/spec/controllers/api/items_controller_spec.rb +32 -22
  217. data/spec/controllers/api/zotero_controller_spec.rb +2 -2
  218. data/spec/controllers/batch_edits_controller_spec.rb +5 -6
  219. data/spec/controllers/catalog_controller_spec.rb +11 -11
  220. data/spec/controllers/citations_controller_spec.rb +2 -2
  221. data/spec/controllers/collections_controller_spec.rb +57 -36
  222. data/spec/controllers/contact_form_controller_spec.rb +6 -6
  223. data/spec/controllers/content_blocks_controller_spec.rb +8 -8
  224. data/spec/controllers/curation_concerns/audits_controller_spec.rb +2 -2
  225. data/spec/controllers/curation_concerns/file_sets_controller_spec.rb +51 -43
  226. data/spec/controllers/curation_concerns/generic_works_controller_spec.rb +51 -27
  227. data/spec/controllers/curation_concerns/permissions_controller_spec.rb +24 -0
  228. data/spec/controllers/depositors_controller_spec.rb +5 -5
  229. data/spec/controllers/downloads_controller_spec.rb +4 -4
  230. data/spec/controllers/featured_work_lists_controller_spec.rb +5 -3
  231. data/spec/controllers/featured_works_controller_spec.rb +9 -9
  232. data/spec/controllers/mailbox_controller_spec.rb +1 -1
  233. data/spec/controllers/my/collections_controller_spec.rb +3 -7
  234. data/spec/controllers/my/highlights_controller_spec.rb +2 -2
  235. data/spec/controllers/my/shares_controller_spec.rb +2 -2
  236. data/spec/controllers/my/works_controller_spec.rb +5 -14
  237. data/spec/controllers/pages_controller_spec.rb +2 -2
  238. data/spec/controllers/static_controller_spec.rb +2 -2
  239. data/spec/controllers/stats_controller_spec.rb +8 -8
  240. data/spec/controllers/sufia/admin/admin_sets_controller_spec.rb +123 -0
  241. data/spec/controllers/sufia/admin/features_controller_spec.rb +29 -0
  242. data/spec/controllers/{admin → sufia/admin}/stats_controller_spec.rb +10 -6
  243. data/spec/controllers/sufia/admin/strategies_controller_spec.rb +30 -0
  244. data/spec/controllers/sufia/admin_controller_spec.rb +13 -0
  245. data/spec/controllers/sufia/admin_sets_controller_spec.rb +28 -0
  246. data/spec/controllers/sufia/batch_uploads_controller_spec.rb +48 -17
  247. data/spec/controllers/sufia/homepage_controller_spec.rb +21 -0
  248. data/spec/controllers/sufia/trophies_controller_spec.rb +2 -2
  249. data/spec/controllers/sufia/uploads_controller_spec.rb +5 -5
  250. data/spec/controllers/tinymce_assets_controller_spec.rb +5 -5
  251. data/spec/controllers/transfers_controller_spec.rb +23 -16
  252. data/spec/controllers/users_controller_spec.rb +21 -69
  253. data/spec/factories/admin_sets.rb +9 -0
  254. data/spec/factories/collections_factory.rb +5 -3
  255. data/spec/factories/generic_works.rb +3 -1
  256. data/spec/features/admin_admin_set_spec.rb +30 -0
  257. data/spec/features/browse_dashboard_files_spec.rb +3 -3
  258. data/spec/features/contact_form_spec.rb +5 -5
  259. data/spec/features/create_work_spec.rb +1 -1
  260. data/spec/features/display_dashboard_spec.rb +1 -1
  261. data/spec/features/ownership_transfer_spec.rb +29 -30
  262. data/spec/features/search_spec.rb +2 -1
  263. data/spec/features/user_admin_set_spec.rb +55 -0
  264. data/spec/features/work_show_spec.rb +13 -3
  265. data/spec/forms/curation_concerns/generic_work_form_spec.rb +30 -24
  266. data/spec/forms/sufia/forms/admin_set_form_spec.rb +20 -0
  267. data/spec/forms/sufia/forms/batch_edit_form_spec.rb +27 -25
  268. data/spec/forms/sufia/forms/batch_upload_form_spec.rb +29 -26
  269. data/spec/forms/sufia/forms/collection_form_spec.rb +36 -32
  270. data/spec/helpers/sufia_helper_spec.rb +17 -28
  271. data/spec/indexers/sufia/work_indexer_spec.rb +16 -0
  272. data/spec/javascripts/required_field_spec.js +41 -0
  273. data/spec/javascripts/save_work_spec.js +9 -0
  274. data/spec/jobs/attach_files_to_work_job_spec.rb +6 -1
  275. data/spec/jobs/batch_create_job_spec.rb +8 -6
  276. data/spec/jobs/content_delete_event_job_spec.rb +6 -18
  277. data/spec/jobs/content_deposit_event_job_spec.rb +3 -12
  278. data/spec/jobs/content_depositor_change_event_job_spec.rb +3 -8
  279. data/spec/jobs/content_new_version_event_job_spec.rb +3 -12
  280. data/spec/jobs/content_restored_version_event_job_spec.rb +3 -11
  281. data/spec/jobs/content_update_event_job_spec.rb +13 -79
  282. data/spec/jobs/file_set_attached_event_job_spec.rb +2 -10
  283. data/spec/jobs/inherit_permissions_job_spec.rb +96 -0
  284. data/spec/jobs/user_edit_profile_event_job_spec.rb +3 -7
  285. data/spec/lib/sufia/analytics_spec.rb +42 -11
  286. data/spec/lib/sufia/arkivo/actor_spec.rb +4 -4
  287. data/spec/lib/sufia/arkivo/schema_validator_spec.rb +18 -18
  288. data/spec/lib/sufia/controlled_vocabulary/importer/language_spec.rb +24 -0
  289. data/spec/lib/sufia/redis_event_store_spec.rb +8 -0
  290. data/spec/lib/sufia/resource_sync/capability_list_writer_spec.rb +4 -2
  291. data/spec/lib/sufia/resource_sync/resource_list_writer_spec.rb +10 -7
  292. data/spec/models/file_download_stat_spec.rb +35 -12
  293. data/spec/models/file_view_stat_spec.rb +12 -12
  294. data/spec/models/flipflop_spec.rb +8 -0
  295. data/spec/models/generic_work_spec.rb +3 -1
  296. data/spec/models/solr_document_spec.rb +20 -8
  297. data/spec/models/sufia/ability_spec.rb +5 -0
  298. data/spec/models/user_spec.rb +4 -28
  299. data/spec/models/work_view_stat_spec.rb +26 -17
  300. data/spec/presenters/sufia/admin_dashboard_presenter_spec.rb +14 -0
  301. data/spec/presenters/sufia/admin_set_presenter_spec.rb +28 -0
  302. data/spec/presenters/sufia/admin_stats_presenter_spec.rb +0 -8
  303. data/spec/presenters/sufia/collection_presenter_spec.rb +21 -16
  304. data/spec/presenters/sufia/file_set_presenter_spec.rb +44 -1
  305. data/spec/presenters/sufia/file_usage_spec.rb +49 -55
  306. data/spec/presenters/sufia/work_show_presenter_spec.rb +12 -2
  307. data/spec/presenters/sufia/work_usage_spec.rb +37 -36
  308. data/spec/routing/route_spec.rb +19 -21
  309. data/spec/search_builder/sufia/my_shares_search_builder_spec.rb +14 -7
  310. data/spec/search_builder/sufia/single_admin_set_search_builder_spec.rb +17 -0
  311. data/spec/services/sufia/actor_factory_spec.rb +11 -9
  312. data/spec/services/sufia/admin_set_service_spec.rb +27 -0
  313. data/spec/services/sufia/audit_failure_service_spec.rb +1 -1
  314. data/spec/services/sufia/file_set_csv_service_spec.rb +6 -7
  315. data/spec/services/sufia/statistics/system_stats_spec.rb +0 -10
  316. data/spec/services/sufia/user_stat_importer_spec.rb +306 -2
  317. data/spec/spec_helper.rb +43 -4
  318. data/spec/support/backport_test_helpers.rb +19 -0
  319. data/spec/support/selectors.rb +0 -19
  320. data/spec/test_app_templates/Gemfile.extra +1 -0
  321. data/spec/test_app_templates/lib/generators/test_app_generator.rb +0 -2
  322. data/spec/views/_toolbar.html.erb_spec.rb +6 -6
  323. data/spec/views/catalog/_index_list_default.html.erb_spec.rb +10 -1
  324. data/spec/views/catalog/_thumbnail_list_collection.html.erb_spec.rb +10 -0
  325. data/spec/views/citations/work.html.erb_spec.rb +2 -2
  326. data/spec/views/collections/_form_for_select_collection.html.erb_spec.rb +6 -4
  327. data/spec/views/collections/_show_document_list.html.erb_spec.rb +1 -0
  328. data/spec/views/collections/_show_document_list_menu.html.erb_spec.rb +14 -3
  329. data/spec/views/collections/show.html.erb_spec.rb +7 -2
  330. data/spec/views/curation_concerns/base/_attribute_rows.html.erb_spec.rb +19 -0
  331. data/spec/views/curation_concerns/base/_citations.html.erb_spec.rb +2 -2
  332. data/spec/views/curation_concerns/base/_form.html.erb_spec.rb +2 -0
  333. data/spec/views/curation_concerns/base/_form_relationships.html.erb_spec.rb +48 -0
  334. data/spec/views/curation_concerns/base/_items.html.erb_spec.rb +49 -0
  335. data/spec/views/curation_concerns/base/_relationships.html.erb_spec.rb +2 -30
  336. data/spec/views/curation_concerns/base/_show_actions.html.erb_spec.rb +69 -0
  337. data/spec/views/curation_concerns/base/_social_media.html.erb_spec.rb +18 -0
  338. data/spec/views/curation_concerns/file_sets/_permission_form.html.erb_spec.rb +2 -2
  339. data/spec/views/curation_concerns/file_sets/_show_actions.html.erb_spec.rb +18 -3
  340. data/spec/views/curation_concerns/file_sets/media_display/_default.html.erb_spec.rb +26 -0
  341. data/spec/views/dashboard/index_spec.rb +5 -9
  342. data/spec/views/my/_list_collections.html.erb_spec.rb +1 -0
  343. data/spec/views/records/edit_fields/_description.html.erb_spec.rb +66 -0
  344. data/spec/views/stats_file.html.erb_spec.rb +5 -5
  345. data/spec/views/sufia/admin/admin_sets/index.html.erb_spec.rb +27 -0
  346. data/spec/views/{admin/stats/index.html.erb_spec.rb → sufia/admin/stats/show.html.erb_spec.rb} +1 -1
  347. data/spec/views/sufia/batch_uploads/_form.html.erb_spec.rb +3 -1
  348. data/spec/views/sufia/homepage/_featured_works.html.erb_spec.rb +9 -7
  349. data/spec/views/sufia/homepage/{_home_header.html.erb_spec.rb → index.html.erb_spec.rb} +3 -3
  350. data/spec/views/users/_user_util_links.html.erb_spec.rb +1 -1
  351. data/spec/views/users/index.html.erb_spec.rb +2 -1
  352. data/spec/views/users/show.html.erb_spec.rb +5 -1
  353. data/sufia.gemspec +13 -8
  354. data/tasks/controlled_vocabularies.rake +9 -0
  355. data/vendor/assets/stylesheets/sharing_buttons.css +163 -0
  356. metadata +246 -124
  357. data/app/assets/images/old_main_tulips.jpg +0 -0
  358. data/app/assets/javascripts/sufia/fileupload.js +0 -6
  359. data/app/assets/stylesheets/sufia.scss +0 -10
  360. data/app/controllers/admin/stats_controller.rb +0 -3
  361. data/app/controllers/errors_controller.rb +0 -12
  362. data/app/jobs/user_follow_event_job.rb +0 -21
  363. data/app/jobs/user_unfollow_event_job.rb +0 -20
  364. data/app/models/contact_form.rb +0 -28
  365. data/app/models/follow.rb +0 -12
  366. data/app/presenters/file_usage.rb +0 -49
  367. data/app/presenters/sufia/characterization_behavior.rb +0 -80
  368. data/app/presenters/work_usage.rb +0 -51
  369. data/app/views/admin/_menu.html.erb +0 -8
  370. data/app/views/admin/stats/index.html.erb +0 -10
  371. data/app/views/advanced/_advanced_search_facets.html.erb +0 -1
  372. data/app/views/advanced/_advanced_search_fields.html.erb +0 -8
  373. data/app/views/advanced/_advanced_search_form.html.erb +0 -34
  374. data/app/views/advanced/_advanced_search_help.html.erb +0 -13
  375. data/app/views/advanced/_facet_layout.html.erb +0 -5
  376. data/app/views/advanced/_facet_limit.html.erb +0 -7
  377. data/app/views/advanced/index.html.erb +0 -21
  378. data/app/views/collections/_search_collection_dashboard_form.html.erb +0 -11
  379. data/app/views/curation_concerns/base/_relationships_member_rows.html.erb +0 -24
  380. data/app/views/errors/404.html.erb +0 -8
  381. data/app/views/layouts/error.html.erb +0 -27
  382. data/app/views/static/subject_libraries.html.erb +0 -32
  383. data/app/views/sufia/homepage/_home_header.html.erb +0 -13
  384. data/app/views/users/_follower_modal.html.erb +0 -32
  385. data/app/views/users/_following_modal.html.erb +0 -32
  386. data/db/migrate/20160328222155_acts_as_follower_migration.rb +0 -17
  387. data/spec/controllers/my_controller_spec.rb +0 -2
  388. data/spec/jobs/user_follow_event_job_spec.rb +0 -24
  389. data/spec/jobs/user_unfollow_event_job_spec.rb +0 -25
  390. data/spec/lib/sufia/user_stat_importer_spec.rb +0 -309
  391. data/spec/views/catalog/sort_and_per_page.html.erb_spec.rb +0 -33
  392. data/spec/views/users/_follower_modal.html.erb_spec.rb +0 -46
  393. data/spec/views/users/_following_modal.html.erb_spec.rb +0 -55
@@ -1,4 +1,4 @@
1
- describe "admin/stats/index.html.erb", type: :view do
1
+ describe "sufia/admin/stats/show.html.erb", type: :view do
2
2
  let(:presenter) do
3
3
  Sufia::AdminStatsPresenter.new({}, 5)
4
4
  end
@@ -14,7 +14,9 @@ describe 'sufia/batch_uploads/_form.html.erb', type: :view do
14
14
  assign(:form, form)
15
15
  allow(controller).to receive_messages(current_user: user,
16
16
  controller_name: 'batch_uploads',
17
- action_name: 'new')
17
+ action_name: 'new',
18
+ repository: CurationConcerns::GenericWorksController.new.repository,
19
+ blacklight_config: CurationConcerns::GenericWorksController.new.blacklight_config)
18
20
  end
19
21
 
20
22
  let(:page) do
@@ -5,16 +5,18 @@ describe "sufia/homepage/_featured_works.html.erb", type: :view do
5
5
 
6
6
  context "without featured works" do
7
7
  before { render }
8
- it {
8
+ it do
9
9
  is_expected.to have_content 'No works have been featured'
10
10
  is_expected.not_to have_selector('form')
11
- }
11
+ end
12
12
  end
13
13
 
14
14
  context "with featured works" do
15
- let(:doc) { SolrDocument.new(id: '12345678',
16
- title_tesim: ['Doc title'],
17
- has_model_ssim: ['GenericWork']) }
15
+ let(:doc) do
16
+ SolrDocument.new(id: '12345678',
17
+ title_tesim: ['Doc title'],
18
+ has_model_ssim: ['GenericWork'])
19
+ end
18
20
  let(:presenter) { Sufia::WorkShowPresenter.new(doc, nil) }
19
21
  let(:featured_work) { FeaturedWork.new }
20
22
  before do
@@ -26,10 +28,10 @@ describe "sufia/homepage/_featured_works.html.erb", type: :view do
26
28
  render
27
29
  end
28
30
 
29
- it {
31
+ it do
30
32
  is_expected.not_to have_content 'No works have been featured'
31
33
  is_expected.not_to have_selector('form')
32
34
  is_expected.to have_selector('ol#featured_works')
33
- }
35
+ end
34
36
  end
35
37
  end
@@ -1,7 +1,6 @@
1
-
2
- describe "sufia/homepage/_home_header.html.erb", type: :view do
1
+ describe "sufia/homepage/index.html.erb", type: :view do
3
2
  let(:groups) { [] }
4
- let(:ability) { instance_double("Ability") }
3
+ let(:ability) { instance_double("Ability", can?: false) }
5
4
  let(:presenter) { Sufia::HomepagePresenter.new(ability) }
6
5
 
7
6
  describe "share your work button" do
@@ -10,6 +9,7 @@ describe "sufia/homepage/_home_header.html.erb", type: :view do
10
9
  allow(controller).to receive(:current_ability).and_return(ability)
11
10
  allow(presenter).to receive(:display_share_button?).and_return(display_share_button)
12
11
  stub_template "sufia/homepage/_marketing.html.erb" => "marketing"
12
+ stub_template "sufia/homepage/_home_content.html.erb" => "home content"
13
13
  render
14
14
  end
15
15
  context "when the button always displays" do
@@ -17,7 +17,7 @@ describe '/_user_util_links.html.erb', type: :view do
17
17
 
18
18
  it 'shows the number of outstanding messages' do
19
19
  render
20
- expect(rendered).to have_link 'Notifications 0 unread notifications', sufia.notifications_path
20
+ expect(rendered).to have_link 'Notifications 0 unread notifications', href: sufia.notifications_path
21
21
  expect(rendered).to have_selector '.label-default', text: '0 unread notifications'
22
22
  end
23
23
  end
@@ -4,7 +4,7 @@ describe 'users/index.html.erb', type: :view do
4
4
  before do
5
5
  users = []
6
6
  (1..25).each { |i| users << stub_model(User, name: "name#{i}", user_key: "user#{i}", created_at: join_date) }
7
- allow(User).to receive_message_chain(:all).and_return(users)
7
+ allow(User).to receive(:all).and_return(users)
8
8
  relation = User.all
9
9
  allow(relation).to receive(:limit_value).and_return(10)
10
10
  allow(relation).to receive(:current_page).and_return(1)
@@ -17,6 +17,7 @@ describe 'users/index.html.erb', type: :view do
17
17
  render
18
18
  page = Capybara::Node::Simple.new(rendered)
19
19
  expect(page).to have_content("Sufia Users")
20
+ expect(page).to have_content("Works Created")
20
21
  (1..10).each do |i|
21
22
  expect(page).to have_content("user#{i}")
22
23
  end
@@ -29,7 +29,11 @@ describe 'users/show.html.erb', type: :view do
29
29
 
30
30
  context "with trophy" do
31
31
  let(:trophy_presenter) { Sufia::TrophyPresenter.new(solr_document) }
32
- let(:solr_document) { SolrDocument.new(id: 'abc123', has_model_ssim: 'GenericWork') }
32
+ let(:solr_document) do
33
+ SolrDocument.new(id: 'abc123',
34
+ has_model_ssim: 'GenericWork',
35
+ thumbnail_path_ss: '/foo/bar.png')
36
+ end
33
37
 
34
38
  before do
35
39
  allow(view).to receive(:search_session).and_return({})
data/sufia.gemspec CHANGED
@@ -18,25 +18,26 @@ Gem::Specification.new do |spec|
18
18
  spec.version = Sufia::VERSION
19
19
  spec.license = 'Apache2'
20
20
 
21
- spec.add_dependency 'curation_concerns', '~> 1.3', '>= 1.3.3'
21
+ spec.add_dependency 'curation_concerns', '~> 1.6', '>= 1.6.1'
22
+ # This is not required, but helps bundler resolve a bundle faster:
23
+ spec.add_dependency 'hydra-head', '>= 10.1'
22
24
  spec.add_dependency 'hydra-batch-edit', '~> 2.0'
23
25
  spec.add_dependency 'browse-everything', '>= 0.10.3'
26
+ spec.add_dependency 'blacklight', '~> 6.6'
24
27
  spec.add_dependency 'blacklight-gallery', '~> 0.1'
25
28
  spec.add_dependency 'tinymce-rails', '~> 4.1'
26
29
  spec.add_dependency 'tinymce-rails-imageupload', '~> 4.0.16.beta'
27
30
  spec.add_dependency 'daemons', '~> 1.1'
28
- spec.add_dependency 'mail_form', '~> 1.5'
29
31
  spec.add_dependency 'yaml_db', '~> 0.2'
30
32
  spec.add_dependency 'font-awesome-rails', '~> 4.2'
31
33
  spec.add_dependency 'select2-rails', '~> 3.5.9'
32
34
  spec.add_dependency 'json-schema'
33
- spec.add_dependency 'oauth'
34
35
  spec.add_dependency 'nest', '~> 2.0'
35
36
  spec.add_dependency 'mailboxer', '~> 0.12'
36
- spec.add_dependency 'acts_as_follower', '>= 0.1.1', '< 0.3'
37
37
  spec.add_dependency 'carrierwave', '~> 0.9'
38
- spec.add_dependency 'oauth2', '~> 0.9'
39
- spec.add_dependency 'google-api-client', '~> 0.7', '< 0.9'
38
+ spec.add_dependency 'oauth'
39
+ spec.add_dependency 'oauth2', '~> 1.2'
40
+ spec.add_dependency 'signet'
40
41
  spec.add_dependency 'legato', '~> 0.3'
41
42
  spec.add_dependency 'posix-spawn'
42
43
  spec.add_dependency 'jquery-ui-rails', '~> 5.0'
@@ -44,8 +45,11 @@ Gem::Specification.new do |spec|
44
45
  spec.add_dependency 'flot-rails', '~> 0.0.6'
45
46
  spec.add_dependency 'almond-rails', '~> 0.0.1'
46
47
  spec.add_dependency 'qa', '~> 0.8' # questioning_authority
48
+ spec.add_dependency 'flipflop', '~> 2.2'
49
+ spec.add_dependency 'jquery-datatables-rails', '~> 3.3.0'
50
+ spec.add_dependency 'rdf-rdfxml'
47
51
 
48
- spec.add_development_dependency 'engine_cart', '~> 0.8'
52
+ spec.add_development_dependency 'engine_cart', '~> 1.0'
49
53
  spec.add_development_dependency 'mida', '~> 0.3'
50
54
  spec.add_development_dependency 'database_cleaner', '~> 1.3'
51
55
  spec.add_development_dependency 'solr_wrapper', '~> 0.5'
@@ -58,7 +62,8 @@ Gem::Specification.new do |spec|
58
62
  spec.add_development_dependency "factory_girl_rails", '~> 4.4'
59
63
  spec.add_development_dependency "equivalent-xml", '~> 0.5'
60
64
  spec.add_development_dependency "jasmine", '~> 2.3'
61
- spec.add_development_dependency 'rubocop', '~> 0.40.0'
65
+ spec.add_development_dependency 'rubocop', '~> 0.42.0'
62
66
  spec.add_development_dependency 'rubocop-rspec', '~> 1.5'
63
67
  spec.add_development_dependency 'shoulda-matchers', '~> 3.1'
68
+ spec.add_development_dependency 'rails-controller-testing', '~> 0'
64
69
  end
@@ -0,0 +1,9 @@
1
+ namespace :sufia do
2
+ namespace :controlled_vocabularies do
3
+ desc "Load the lexvo vocabulary into the database"
4
+ task language: :environment do
5
+ require 'sufia/controlled_vocabulary/importer/language'
6
+ Sufia::ControlledVocabulary::Importer::Language.new.import
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,163 @@
1
+ .resp-sharing-button__link,
2
+ .resp-sharing-button__icon {
3
+ display: inline-block
4
+ }
5
+
6
+ .resp-sharing-button__link {
7
+ text-decoration: none;
8
+ color: #fff;
9
+ margin: 0.5em
10
+ }
11
+
12
+ .resp-sharing-button {
13
+ border-radius: 5px;
14
+ transition: 25ms ease-out;
15
+ padding: 0.5em 0.75em;
16
+ font-family: Helvetica Neue,Helvetica,Arial,sans-serif
17
+ }
18
+
19
+ .resp-sharing-button__icon svg {
20
+ width: 1em;
21
+ height: 1em
22
+ }
23
+
24
+ .resp-sharing-button span {
25
+ padding-left: 0.4em
26
+ }
27
+
28
+ /* Non solid icons get a stroke */
29
+ .resp-sharing-button__icon {
30
+ stroke: #fff;
31
+ fill: none
32
+ }
33
+
34
+ /* Solid icons get a fill */
35
+ .resp-sharing-button__icon--solid,
36
+ .resp-sharing-button__icon--solidcircle {
37
+ fill: #fff;
38
+ stroke: none
39
+ }
40
+
41
+ .resp-sharing-button--twitter {
42
+ background-color: #55acee
43
+ }
44
+
45
+ .resp-sharing-button--twitter:hover {
46
+ background-color: #2795e9
47
+ }
48
+
49
+ .resp-sharing-button--pinterest {
50
+ background-color: #bd081c
51
+ }
52
+
53
+ .resp-sharing-button--pinterest:hover {
54
+ background-color: #8c0615
55
+ }
56
+
57
+ .resp-sharing-button--facebook {
58
+ background-color: #3b5998
59
+ }
60
+
61
+ .resp-sharing-button--facebook:hover {
62
+ background-color: #2d4373
63
+ }
64
+
65
+ .resp-sharing-button--tumblr {
66
+ background-color: #35465C
67
+ }
68
+
69
+ .resp-sharing-button--tumblr:hover {
70
+ background-color: #222d3c
71
+ }
72
+
73
+ .resp-sharing-button--reddit {
74
+ background-color: #5f99cf
75
+ }
76
+
77
+ .resp-sharing-button--reddit:hover {
78
+ background-color: #3a80c1
79
+ }
80
+
81
+ .resp-sharing-button--google {
82
+ background-color: #dd4b39
83
+ }
84
+
85
+ .resp-sharing-button--google:hover {
86
+ background-color: #c23321
87
+ }
88
+
89
+ .resp-sharing-button--linkedin {
90
+ background-color: #0077b5
91
+ }
92
+
93
+ .resp-sharing-button--linkedin:hover {
94
+ background-color: #046293
95
+ }
96
+
97
+ .resp-sharing-button--email {
98
+ background-color: #777
99
+ }
100
+
101
+ .resp-sharing-button--email:hover {
102
+ background-color: #5e5e5e
103
+ }
104
+
105
+ .resp-sharing-button--xing {
106
+ background-color: #1a7576
107
+ }
108
+
109
+ .resp-sharing-button--xing:hover {
110
+ background-color: #114c4c
111
+ }
112
+
113
+ .resp-sharing-button--whatsapp {
114
+ background-color: #25D366
115
+ }
116
+
117
+ .resp-sharing-button--whatsapp:hover {
118
+ background-color: #1da851
119
+ }
120
+
121
+ .resp-sharing-button--facebook {
122
+ background-color: #3b5998;
123
+ border-color: #3b5998;
124
+ }
125
+
126
+ .resp-sharing-button--facebook:hover,
127
+ .resp-sharing-button--facebook:active {
128
+ background-color: #2d4373;
129
+ border-color: #2d4373;
130
+ }
131
+
132
+ .resp-sharing-button--twitter {
133
+ background-color: #55acee;
134
+ border-color: #55acee;
135
+ }
136
+
137
+ .resp-sharing-button--twitter:hover,
138
+ .resp-sharing-button--twitter:active {
139
+ background-color: #2795e9;
140
+ border-color: #2795e9;
141
+ }
142
+
143
+ .resp-sharing-button--google {
144
+ background-color: #dd4b39;
145
+ border-color: #dd4b39;
146
+ }
147
+
148
+ .resp-sharing-button--google:hover,
149
+ .resp-sharing-button--google:active {
150
+ background-color: #c23321;
151
+ border-color: #c23321;
152
+ }
153
+
154
+ .resp-sharing-button--tumblr {
155
+ background-color: #35465C;
156
+ border-color: #35465C;
157
+ }
158
+
159
+ .resp-sharing-button--tumblr:hover,
160
+ .resp-sharing-button--tumblr:active {
161
+ background-color: #222d3c;
162
+ border-color: #222d3c;
163
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sufia
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.1.0
4
+ version: 7.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Coyne
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2016-08-11 00:00:00.000000000 Z
15
+ date: 2016-10-01 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: curation_concerns
@@ -20,20 +20,34 @@ dependencies:
20
20
  requirements:
21
21
  - - "~>"
22
22
  - !ruby/object:Gem::Version
23
- version: '1.3'
23
+ version: '1.6'
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 1.3.3
26
+ version: 1.6.1
27
27
  type: :runtime
28
28
  prerelease: false
29
29
  version_requirements: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.3'
33
+ version: '1.6'
34
34
  - - ">="
35
35
  - !ruby/object:Gem::Version
36
- version: 1.3.3
36
+ version: 1.6.1
37
+ - !ruby/object:Gem::Dependency
38
+ name: hydra-head
39
+ requirement: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: '10.1'
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: !ruby/object:Gem::Requirement
47
+ requirements:
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: '10.1'
37
51
  - !ruby/object:Gem::Dependency
38
52
  name: hydra-batch-edit
39
53
  requirement: !ruby/object:Gem::Requirement
@@ -62,6 +76,20 @@ dependencies:
62
76
  - - ">="
63
77
  - !ruby/object:Gem::Version
64
78
  version: 0.10.3
79
+ - !ruby/object:Gem::Dependency
80
+ name: blacklight
81
+ requirement: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - "~>"
84
+ - !ruby/object:Gem::Version
85
+ version: '6.6'
86
+ type: :runtime
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - "~>"
91
+ - !ruby/object:Gem::Version
92
+ version: '6.6'
65
93
  - !ruby/object:Gem::Dependency
66
94
  name: blacklight-gallery
67
95
  requirement: !ruby/object:Gem::Requirement
@@ -118,20 +146,6 @@ dependencies:
118
146
  - - "~>"
119
147
  - !ruby/object:Gem::Version
120
148
  version: '1.1'
121
- - !ruby/object:Gem::Dependency
122
- name: mail_form
123
- requirement: !ruby/object:Gem::Requirement
124
- requirements:
125
- - - "~>"
126
- - !ruby/object:Gem::Version
127
- version: '1.5'
128
- type: :runtime
129
- prerelease: false
130
- version_requirements: !ruby/object:Gem::Requirement
131
- requirements:
132
- - - "~>"
133
- - !ruby/object:Gem::Version
134
- version: '1.5'
135
149
  - !ruby/object:Gem::Dependency
136
150
  name: yaml_db
137
151
  requirement: !ruby/object:Gem::Requirement
@@ -188,20 +202,6 @@ dependencies:
188
202
  - - ">="
189
203
  - !ruby/object:Gem::Version
190
204
  version: '0'
191
- - !ruby/object:Gem::Dependency
192
- name: oauth
193
- requirement: !ruby/object:Gem::Requirement
194
- requirements:
195
- - - ">="
196
- - !ruby/object:Gem::Version
197
- version: '0'
198
- type: :runtime
199
- prerelease: false
200
- version_requirements: !ruby/object:Gem::Requirement
201
- requirements:
202
- - - ">="
203
- - !ruby/object:Gem::Version
204
- version: '0'
205
205
  - !ruby/object:Gem::Dependency
206
206
  name: nest
207
207
  requirement: !ruby/object:Gem::Requirement
@@ -231,73 +231,61 @@ dependencies:
231
231
  - !ruby/object:Gem::Version
232
232
  version: '0.12'
233
233
  - !ruby/object:Gem::Dependency
234
- name: acts_as_follower
234
+ name: carrierwave
235
235
  requirement: !ruby/object:Gem::Requirement
236
236
  requirements:
237
- - - ">="
238
- - !ruby/object:Gem::Version
239
- version: 0.1.1
240
- - - "<"
237
+ - - "~>"
241
238
  - !ruby/object:Gem::Version
242
- version: '0.3'
239
+ version: '0.9'
243
240
  type: :runtime
244
241
  prerelease: false
245
242
  version_requirements: !ruby/object:Gem::Requirement
246
243
  requirements:
247
- - - ">="
248
- - !ruby/object:Gem::Version
249
- version: 0.1.1
250
- - - "<"
244
+ - - "~>"
251
245
  - !ruby/object:Gem::Version
252
- version: '0.3'
246
+ version: '0.9'
253
247
  - !ruby/object:Gem::Dependency
254
- name: carrierwave
248
+ name: oauth
255
249
  requirement: !ruby/object:Gem::Requirement
256
250
  requirements:
257
- - - "~>"
251
+ - - ">="
258
252
  - !ruby/object:Gem::Version
259
- version: '0.9'
253
+ version: '0'
260
254
  type: :runtime
261
255
  prerelease: false
262
256
  version_requirements: !ruby/object:Gem::Requirement
263
257
  requirements:
264
- - - "~>"
258
+ - - ">="
265
259
  - !ruby/object:Gem::Version
266
- version: '0.9'
260
+ version: '0'
267
261
  - !ruby/object:Gem::Dependency
268
262
  name: oauth2
269
263
  requirement: !ruby/object:Gem::Requirement
270
264
  requirements:
271
265
  - - "~>"
272
266
  - !ruby/object:Gem::Version
273
- version: '0.9'
267
+ version: '1.2'
274
268
  type: :runtime
275
269
  prerelease: false
276
270
  version_requirements: !ruby/object:Gem::Requirement
277
271
  requirements:
278
272
  - - "~>"
279
273
  - !ruby/object:Gem::Version
280
- version: '0.9'
274
+ version: '1.2'
281
275
  - !ruby/object:Gem::Dependency
282
- name: google-api-client
276
+ name: signet
283
277
  requirement: !ruby/object:Gem::Requirement
284
278
  requirements:
285
- - - "~>"
286
- - !ruby/object:Gem::Version
287
- version: '0.7'
288
- - - "<"
279
+ - - ">="
289
280
  - !ruby/object:Gem::Version
290
- version: '0.9'
281
+ version: '0'
291
282
  type: :runtime
292
283
  prerelease: false
293
284
  version_requirements: !ruby/object:Gem::Requirement
294
285
  requirements:
295
- - - "~>"
296
- - !ruby/object:Gem::Version
297
- version: '0.7'
298
- - - "<"
286
+ - - ">="
299
287
  - !ruby/object:Gem::Version
300
- version: '0.9'
288
+ version: '0'
301
289
  - !ruby/object:Gem::Dependency
302
290
  name: legato
303
291
  requirement: !ruby/object:Gem::Requirement
@@ -396,20 +384,62 @@ dependencies:
396
384
  - - "~>"
397
385
  - !ruby/object:Gem::Version
398
386
  version: '0.8'
387
+ - !ruby/object:Gem::Dependency
388
+ name: flipflop
389
+ requirement: !ruby/object:Gem::Requirement
390
+ requirements:
391
+ - - "~>"
392
+ - !ruby/object:Gem::Version
393
+ version: '2.2'
394
+ type: :runtime
395
+ prerelease: false
396
+ version_requirements: !ruby/object:Gem::Requirement
397
+ requirements:
398
+ - - "~>"
399
+ - !ruby/object:Gem::Version
400
+ version: '2.2'
401
+ - !ruby/object:Gem::Dependency
402
+ name: jquery-datatables-rails
403
+ requirement: !ruby/object:Gem::Requirement
404
+ requirements:
405
+ - - "~>"
406
+ - !ruby/object:Gem::Version
407
+ version: 3.3.0
408
+ type: :runtime
409
+ prerelease: false
410
+ version_requirements: !ruby/object:Gem::Requirement
411
+ requirements:
412
+ - - "~>"
413
+ - !ruby/object:Gem::Version
414
+ version: 3.3.0
415
+ - !ruby/object:Gem::Dependency
416
+ name: rdf-rdfxml
417
+ requirement: !ruby/object:Gem::Requirement
418
+ requirements:
419
+ - - ">="
420
+ - !ruby/object:Gem::Version
421
+ version: '0'
422
+ type: :runtime
423
+ prerelease: false
424
+ version_requirements: !ruby/object:Gem::Requirement
425
+ requirements:
426
+ - - ">="
427
+ - !ruby/object:Gem::Version
428
+ version: '0'
399
429
  - !ruby/object:Gem::Dependency
400
430
  name: engine_cart
401
431
  requirement: !ruby/object:Gem::Requirement
402
432
  requirements:
403
433
  - - "~>"
404
434
  - !ruby/object:Gem::Version
405
- version: '0.8'
435
+ version: '1.0'
406
436
  type: :development
407
437
  prerelease: false
408
438
  version_requirements: !ruby/object:Gem::Requirement
409
439
  requirements:
410
440
  - - "~>"
411
441
  - !ruby/object:Gem::Version
412
- version: '0.8'
442
+ version: '1.0'
413
443
  - !ruby/object:Gem::Dependency
414
444
  name: mida
415
445
  requirement: !ruby/object:Gem::Requirement
@@ -590,14 +620,14 @@ dependencies:
590
620
  requirements:
591
621
  - - "~>"
592
622
  - !ruby/object:Gem::Version
593
- version: 0.40.0
623
+ version: 0.42.0
594
624
  type: :development
595
625
  prerelease: false
596
626
  version_requirements: !ruby/object:Gem::Requirement
597
627
  requirements:
598
628
  - - "~>"
599
629
  - !ruby/object:Gem::Version
600
- version: 0.40.0
630
+ version: 0.42.0
601
631
  - !ruby/object:Gem::Dependency
602
632
  name: rubocop-rspec
603
633
  requirement: !ruby/object:Gem::Requirement
@@ -626,6 +656,20 @@ dependencies:
626
656
  - - "~>"
627
657
  - !ruby/object:Gem::Version
628
658
  version: '3.1'
659
+ - !ruby/object:Gem::Dependency
660
+ name: rails-controller-testing
661
+ requirement: !ruby/object:Gem::Requirement
662
+ requirements:
663
+ - - "~>"
664
+ - !ruby/object:Gem::Version
665
+ version: '0'
666
+ type: :development
667
+ prerelease: false
668
+ version_requirements: !ruby/object:Gem::Requirement
669
+ requirements:
670
+ - - "~>"
671
+ - !ruby/object:Gem::Version
672
+ version: '0'
629
673
  description: Sufia extends the robust Hydra framework to provide a user interface
630
674
  around common repository features and social features. Sufia offers self-deposit
631
675
  and proxy deposit workflows with plans to develop one or more mediated deposit workflows
@@ -639,13 +683,19 @@ executables: []
639
683
  extensions: []
640
684
  extra_rdoc_files: []
641
685
  files:
686
+ - ".codeclimate.yml"
687
+ - ".engine_cart.yml"
688
+ - ".eslintignore"
689
+ - ".eslintrc"
642
690
  - ".github/CONTRIBUTING.md"
643
691
  - ".github/ISSUE_TEMPLATE.md"
644
692
  - ".github/PULL_REQUEST_TEMPLATE.md"
645
693
  - ".gitignore"
694
+ - ".hound.yml"
646
695
  - ".rspec"
647
696
  - ".rubocop.yml"
648
697
  - ".rubocop_todo.yml"
698
+ - ".scss-lint.yml"
649
699
  - ".travis.yml"
650
700
  - Gemfile
651
701
  - LICENSE
@@ -658,7 +708,6 @@ files:
658
708
  - app/assets/images/favicon.ico
659
709
  - app/assets/images/hydra/powered_by_hydra.png
660
710
  - app/assets/images/loading.gif
661
- - app/assets/images/old_main_tulips.jpg
662
711
  - app/assets/images/orcid.png
663
712
  - app/assets/images/progressbar.gif
664
713
  - app/assets/images/work.png
@@ -678,9 +727,10 @@ files:
678
727
  - app/assets/javascripts/sufia/facets.js
679
728
  - app/assets/javascripts/sufia/featured_researcher.js
680
729
  - app/assets/javascripts/sufia/featured_works.js
681
- - app/assets/javascripts/sufia/fileupload.js
730
+ - app/assets/javascripts/sufia/fileupload.js.erb
682
731
  - app/assets/javascripts/sufia/flot_stats.js
683
732
  - app/assets/javascripts/sufia/ga_events.js
733
+ - app/assets/javascripts/sufia/initialize.js
684
734
  - app/assets/javascripts/sufia/notifications.es6
685
735
  - app/assets/javascripts/sufia/permissions.js
686
736
  - app/assets/javascripts/sufia/permissions/control.es6
@@ -710,7 +760,6 @@ files:
710
760
  - app/assets/javascripts/sufia/uploader.js
711
761
  - app/assets/javascripts/sufia/user_search.js
712
762
  - app/assets/stylesheets/fileupload/jquery.fileupload-ui.scss
713
- - app/assets/stylesheets/sufia.scss
714
763
  - app/assets/stylesheets/sufia/_batch-edit.scss
715
764
  - app/assets/stylesheets/sufia/_browse_everything_overrides.scss
716
765
  - app/assets/stylesheets/sufia/_buttons.scss
@@ -721,23 +770,28 @@ files:
721
770
  - app/assets/stylesheets/sufia/_file-listing.scss
722
771
  - app/assets/stylesheets/sufia/_file-show.scss
723
772
  - app/assets/stylesheets/sufia/_file_sets.scss
773
+ - app/assets/stylesheets/sufia/_file_upload.scss
724
774
  - app/assets/stylesheets/sufia/_fixedsticky.scss
725
775
  - app/assets/stylesheets/sufia/_form-progress.scss
776
+ - app/assets/stylesheets/sufia/_form.scss
726
777
  - app/assets/stylesheets/sufia/_header.scss
727
778
  - app/assets/stylesheets/sufia/_home-page.scss
728
779
  - app/assets/stylesheets/sufia/_modal.scss
729
780
  - app/assets/stylesheets/sufia/_multi_value_fields.css.scss
730
781
  - app/assets/stylesheets/sufia/_nestable.scss
731
782
  - app/assets/stylesheets/sufia/_proxy-rights.scss
783
+ - app/assets/stylesheets/sufia/_representative-media.scss
732
784
  - app/assets/stylesheets/sufia/_settings.scss
733
785
  - app/assets/stylesheets/sufia/_styles.scss
734
786
  - app/assets/stylesheets/sufia/_sufia.scss
735
787
  - app/assets/stylesheets/sufia/_tinymce.scss
736
788
  - app/assets/stylesheets/sufia/_usage-stats.scss
789
+ - app/assets/stylesheets/sufia/_variables.scss
737
790
  - app/assets/stylesheets/sufia/_work-show.scss
791
+ - app/assets/stylesheets/sufia/admin.scss
792
+ - app/assets/stylesheets/sufia/widgets.css
738
793
  - app/builders/sufia/bootstrap_breadcrumbs_builder.rb
739
794
  - app/builders/sufia/form_builder.rb
740
- - app/controllers/admin/stats_controller.rb
741
795
  - app/controllers/api/items_controller.rb
742
796
  - app/controllers/api/zotero_controller.rb
743
797
  - app/controllers/batch_edits_controller.rb
@@ -752,6 +806,7 @@ files:
752
806
  - app/controllers/concerns/sufia/contact_form_controller_behavior.rb
753
807
  - app/controllers/concerns/sufia/controller.rb
754
808
  - app/controllers/concerns/sufia/dashboard_controller_behavior.rb
809
+ - app/controllers/concerns/sufia/deny_access_override_behavior.rb
755
810
  - app/controllers/concerns/sufia/depositors_controller_behavior.rb
756
811
  - app/controllers/concerns/sufia/file_sets_controller_behavior.rb
757
812
  - app/controllers/concerns/sufia/homepage_controller_behavior.rb
@@ -768,7 +823,6 @@ files:
768
823
  - app/controllers/curation_concerns/permissions_controller.rb
769
824
  - app/controllers/dashboard_controller.rb
770
825
  - app/controllers/depositors_controller.rb
771
- - app/controllers/errors_controller.rb
772
826
  - app/controllers/featured_work_lists_controller.rb
773
827
  - app/controllers/featured_works_controller.rb
774
828
  - app/controllers/mailbox_controller.rb
@@ -780,6 +834,12 @@ files:
780
834
  - app/controllers/pages_controller.rb
781
835
  - app/controllers/static_controller.rb
782
836
  - app/controllers/stats_controller.rb
837
+ - app/controllers/sufia/admin/admin_sets_controller.rb
838
+ - app/controllers/sufia/admin/features_controller.rb
839
+ - app/controllers/sufia/admin/stats_controller.rb
840
+ - app/controllers/sufia/admin/strategies_controller.rb
841
+ - app/controllers/sufia/admin_controller.rb
842
+ - app/controllers/sufia/admin_sets_controller.rb
783
843
  - app/controllers/sufia/batch_uploads_controller.rb
784
844
  - app/controllers/sufia/homepage_controller.rb
785
845
  - app/controllers/sufia/resource_sync_controller.rb
@@ -788,6 +848,7 @@ files:
788
848
  - app/controllers/tinymce_assets_controller.rb
789
849
  - app/controllers/transfers_controller.rb
790
850
  - app/controllers/users_controller.rb
851
+ - app/forms/sufia/forms/admin_set_form.rb
791
852
  - app/forms/sufia/forms/batch_edit_form.rb
792
853
  - app/forms/sufia/forms/batch_upload_form.rb
793
854
  - app/forms/sufia/forms/collection_form.rb
@@ -813,6 +874,7 @@ files:
813
874
  - app/helpers/sufia/collections_helper.rb
814
875
  - app/helpers/sufia/content_block_helper_behavior.rb
815
876
  - app/helpers/sufia/dashboard_helper_behavior.rb
877
+ - app/helpers/sufia/permissions_helper.rb
816
878
  - app/helpers/sufia/sufia_helper_behavior.rb
817
879
  - app/helpers/trophy_helper.rb
818
880
  - app/indexers/sufia/work_indexer.rb
@@ -828,11 +890,12 @@ files:
828
890
  - app/jobs/create_work_job.rb
829
891
  - app/jobs/event_job.rb
830
892
  - app/jobs/file_set_attached_event_job.rb
893
+ - app/jobs/inherit_permissions_job.rb
831
894
  - app/jobs/user_edit_profile_event_job.rb
832
- - app/jobs/user_follow_event_job.rb
833
- - app/jobs/user_unfollow_event_job.rb
895
+ - app/mailers/sufia/contact_mailer.rb
834
896
  - app/models/batch_upload_item.rb
835
897
  - app/models/concerns/sufia/ability.rb
898
+ - app/models/concerns/sufia/content_block_behavior.rb
836
899
  - app/models/concerns/sufia/file_set_behavior.rb
837
900
  - app/models/concerns/sufia/proxy_deposit.rb
838
901
  - app/models/concerns/sufia/solr_document/characterization.rb
@@ -845,20 +908,20 @@ files:
845
908
  - app/models/concerns/sufia/works/featured.rb
846
909
  - app/models/concerns/sufia/works/metadata.rb
847
910
  - app/models/concerns/sufia/works/trophies.rb
848
- - app/models/contact_form.rb
849
911
  - app/models/content_block.rb
850
912
  - app/models/domain_term.rb
851
913
  - app/models/featured_work.rb
852
914
  - app/models/featured_work_list.rb
853
915
  - app/models/file_download_stat.rb
854
916
  - app/models/file_view_stat.rb
855
- - app/models/follow.rb
856
917
  - app/models/proxy_deposit_request.rb
857
918
  - app/models/proxy_deposit_rights.rb
858
919
  - app/models/sufia/avatar_validator.rb
859
920
  - app/models/sufia/batch_create_operation.rb
921
+ - app/models/sufia/contact_form.rb
860
922
  - app/models/sufia/download.rb
861
923
  - app/models/sufia/event.rb
924
+ - app/models/sufia/feature.rb
862
925
  - app/models/sufia/orcid_validator.rb
863
926
  - app/models/sufia/pageview.rb
864
927
  - app/models/sufia/statistic.rb
@@ -868,20 +931,23 @@ files:
868
931
  - app/models/user_mailbox.rb
869
932
  - app/models/user_stat.rb
870
933
  - app/models/work_view_stat.rb
871
- - app/presenters/file_usage.rb
934
+ - app/presenters/sufia/admin_dashboard_presenter.rb
935
+ - app/presenters/sufia/admin_set_presenter.rb
872
936
  - app/presenters/sufia/admin_stats_presenter.rb
873
- - app/presenters/sufia/characterization_behavior.rb
874
937
  - app/presenters/sufia/collection_presenter.rb
875
938
  - app/presenters/sufia/file_set_presenter.rb
939
+ - app/presenters/sufia/file_usage.rb
876
940
  - app/presenters/sufia/homepage_presenter.rb
877
941
  - app/presenters/sufia/presenter_renderer.rb
942
+ - app/presenters/sufia/stats_usage_presenter.rb
878
943
  - app/presenters/sufia/trophy_presenter.rb
879
944
  - app/presenters/sufia/user_profile_presenter.rb
880
945
  - app/presenters/sufia/work_show_presenter.rb
881
- - app/presenters/work_usage.rb
946
+ - app/presenters/sufia/work_usage.rb
882
947
  - app/search_builders/collection_search_builder.rb
883
948
  - app/search_builders/deposit_search_builder.rb
884
949
  - app/search_builders/parent_collection_search_builder.rb
950
+ - app/search_builders/sufia/admin_set_member_search_builder.rb
885
951
  - app/search_builders/sufia/catalog_search_builder.rb
886
952
  - app/search_builders/sufia/homepage_search_builder.rb
887
953
  - app/search_builders/sufia/my_collections_search_builder.rb
@@ -890,7 +956,9 @@ files:
890
956
  - app/search_builders/sufia/my_shares_search_builder.rb
891
957
  - app/search_builders/sufia/my_works_search_builder.rb
892
958
  - app/search_builders/sufia/search_builder.rb
959
+ - app/search_builders/sufia/single_admin_set_search_builder.rb
893
960
  - app/services/sufia/actor_factory.rb
961
+ - app/services/sufia/admin_set_service.rb
894
962
  - app/services/sufia/analytics.rb
895
963
  - app/services/sufia/audit_failure_service.rb
896
964
  - app/services/sufia/batch_create_failure_service.rb
@@ -927,21 +995,6 @@ files:
927
995
  - app/views/_masthead.html.erb
928
996
  - app/views/_toolbar.html.erb
929
997
  - app/views/_user_util_links.html.erb
930
- - app/views/admin/_menu.html.erb
931
- - app/views/admin/stats/_date_form.html.erb
932
- - app/views/admin/stats/_deposits.html.erb
933
- - app/views/admin/stats/_new_users.html.erb
934
- - app/views/admin/stats/_stats_by_date.html.erb
935
- - app/views/admin/stats/_top_data.html.erb
936
- - app/views/admin/stats/_works.html.erb
937
- - app/views/admin/stats/index.html.erb
938
- - app/views/advanced/_advanced_search_facets.html.erb
939
- - app/views/advanced/_advanced_search_fields.html.erb
940
- - app/views/advanced/_advanced_search_form.html.erb
941
- - app/views/advanced/_advanced_search_help.html.erb
942
- - app/views/advanced/_facet_layout.html.erb
943
- - app/views/advanced/_facet_limit.html.erb
944
- - app/views/advanced/index.html.erb
945
998
  - app/views/batch_edits/_check_all.html.erb
946
999
  - app/views/batch_edits/_delete_selected.html.erb
947
1000
  - app/views/batch_edits/edit.html.erb
@@ -972,7 +1025,6 @@ files:
972
1025
  - app/views/collections/_form.html.erb
973
1026
  - app/views/collections/_form_for_select_collection.html.erb
974
1027
  - app/views/collections/_media_display.html.erb
975
- - app/views/collections/_search_collection_dashboard_form.html.erb
976
1028
  - app/views/collections/_show_actions.html.erb
977
1029
  - app/views/collections/_show_descriptions.html.erb
978
1030
  - app/views/collections/_show_document_list.html.erb
@@ -1005,7 +1057,6 @@ files:
1005
1057
  - app/views/curation_concerns/base/_items.html.erb
1006
1058
  - app/views/curation_concerns/base/_metadata.html.erb
1007
1059
  - app/views/curation_concerns/base/_relationships.html.erb
1008
- - app/views/curation_concerns/base/_relationships_member_rows.html.erb
1009
1060
  - app/views/curation_concerns/base/_relationships_parent_row.html.erb
1010
1061
  - app/views/curation_concerns/base/_relationships_parent_row_empty.html.erb
1011
1062
  - app/views/curation_concerns/base/_relationships_parent_rows.html.erb
@@ -1041,13 +1092,13 @@ files:
1041
1092
  - app/views/curation_concerns/file_sets/proxy.html.erb
1042
1093
  - app/views/curation_concerns/file_sets/show.html.erb
1043
1094
  - app/views/curation_concerns/permissions/confirm.html.erb
1095
+ - app/views/curation_concerns/permissions/confirm_access.html.erb
1044
1096
  - app/views/dashboard/_index_partials/_contents.html.erb
1045
1097
  - app/views/dashboard/_index_partials/_heading_actions.html.erb
1046
1098
  - app/views/dashboard/_index_partials/_heading_greetings.html.erb
1047
1099
  - app/views/dashboard/_index_partials/_proxy_rights.html.erb
1048
1100
  - app/views/dashboard/_index_partials/_transfers.html.erb
1049
1101
  - app/views/dashboard/index.html.erb
1050
- - app/views/errors/404.html.erb
1051
1102
  - app/views/kaminari/blacklight/_first_page.html.erb
1052
1103
  - app/views/kaminari/blacklight/_gap.html.erb
1053
1104
  - app/views/kaminari/blacklight/_last_page.html.erb
@@ -1057,10 +1108,10 @@ files:
1057
1108
  - app/views/kaminari/blacklight/_prev_page.html.erb
1058
1109
  - app/views/kaminari/blacklight_compact/_paginator.html.erb
1059
1110
  - app/views/layouts/_head_tag_content.html.erb
1060
- - app/views/layouts/error.html.erb
1111
+ - app/views/layouts/admin.html.erb
1112
+ - app/views/layouts/curation_concerns/1_column.html.erb
1061
1113
  - app/views/layouts/homepage.html.erb
1062
1114
  - app/views/layouts/sufia-dashboard.html.erb
1063
- - app/views/layouts/sufia-one-column.html.erb
1064
1115
  - app/views/mailbox/_notifications.html.erb
1065
1116
  - app/views/mailbox/index.html.erb
1066
1117
  - app/views/my/_batch_edits_actions.html.erb
@@ -1113,19 +1164,43 @@ files:
1113
1164
  - app/views/static/agreement.html.erb
1114
1165
  - app/views/static/help.html.erb
1115
1166
  - app/views/static/mendeley.html.erb
1116
- - app/views/static/subject_libraries.html.erb
1117
1167
  - app/views/static/terms.html.erb
1118
1168
  - app/views/static/zotero.html.erb
1119
1169
  - app/views/stats/file.html.erb
1120
1170
  - app/views/stats/work.html.erb
1171
+ - app/views/sufia/admin/_menu.html.erb
1172
+ - app/views/sufia/admin/_sidebar.html.erb
1173
+ - app/views/sufia/admin/admin_sets/_form.html.erb
1174
+ - app/views/sufia/admin/admin_sets/_sort_and_per_page.html.erb
1175
+ - app/views/sufia/admin/admin_sets/edit.html.erb
1176
+ - app/views/sufia/admin/admin_sets/index.html.erb
1177
+ - app/views/sufia/admin/admin_sets/new.html.erb
1178
+ - app/views/sufia/admin/admin_sets/show.html.erb
1179
+ - app/views/sufia/admin/features/index.html.erb
1180
+ - app/views/sufia/admin/show.html.erb
1181
+ - app/views/sufia/admin/stats/_date_form.html.erb
1182
+ - app/views/sufia/admin/stats/_deposits.html.erb
1183
+ - app/views/sufia/admin/stats/_new_users.html.erb
1184
+ - app/views/sufia/admin/stats/_stats_by_date.html.erb
1185
+ - app/views/sufia/admin/stats/_top_data.html.erb
1186
+ - app/views/sufia/admin/stats/_works.html.erb
1187
+ - app/views/sufia/admin/stats/show.html.erb
1188
+ - app/views/sufia/admin_sets/_admin_set.html.erb
1189
+ - app/views/sufia/admin_sets/_document_list.html.erb
1190
+ - app/views/sufia/admin_sets/_member_document.html.erb
1191
+ - app/views/sufia/admin_sets/_search_form.html.erb
1192
+ - app/views/sufia/admin_sets/_sort_and_per_page.html.erb
1193
+ - app/views/sufia/admin_sets/index.html.erb
1194
+ - app/views/sufia/admin_sets/show.html.erb
1121
1195
  - app/views/sufia/batch_uploads/_form.html.erb
1196
+ - app/views/sufia/contact_mailer/contact.html.erb
1122
1197
  - app/views/sufia/homepage/_announcement.html.erb
1198
+ - app/views/sufia/homepage/_explore_collections.html.erb
1123
1199
  - app/views/sufia/homepage/_featured.html.erb
1124
1200
  - app/views/sufia/homepage/_featured_fields.html.erb
1125
1201
  - app/views/sufia/homepage/_featured_researcher.html.erb
1126
1202
  - app/views/sufia/homepage/_featured_works.html.erb
1127
1203
  - app/views/sufia/homepage/_home_content.html.erb
1128
- - app/views/sufia/homepage/_home_header.html.erb
1129
1204
  - app/views/sufia/homepage/_marketing.html.erb
1130
1205
  - app/views/sufia/homepage/_recent_document.html.erb
1131
1206
  - app/views/sufia/homepage/_recently_uploaded.html.erb
@@ -1142,8 +1217,6 @@ files:
1142
1217
  - app/views/users/_contributions.html.erb
1143
1218
  - app/views/users/_edit_primary.html.erb
1144
1219
  - app/views/users/_edit_secondary.html.erb
1145
- - app/views/users/_follower_modal.html.erb
1146
- - app/views/users/_following_modal.html.erb
1147
1220
  - app/views/users/_left_sidebar.html.erb
1148
1221
  - app/views/users/_notify_number.html.erb
1149
1222
  - app/views/users/_profile_actions.html.erb
@@ -1160,11 +1233,11 @@ files:
1160
1233
  - app/views/users/index.html.erb
1161
1234
  - app/views/users/notifications_number.json.jbuilder
1162
1235
  - app/views/users/show.html.erb
1236
+ - config/features.rb
1163
1237
  - config/initializers/curation_concern_events.rb
1164
1238
  - config/locales/simple_form.en.yml
1165
1239
  - config/locales/sufia.en.yml
1166
1240
  - config/routes.rb
1167
- - db/migrate/20160328222155_acts_as_follower_migration.rb
1168
1241
  - db/migrate/20160328222156_add_social_to_users.rb
1169
1242
  - db/migrate/20160328222157_add_ldap_attrs_to_user.rb
1170
1243
  - db/migrate/20160328222158_add_avatars_to_users.rb
@@ -1188,6 +1261,7 @@ files:
1188
1261
  - db/migrate/20160328222238_change_audit_log_generic_file_id_to_file_set_id.rb
1189
1262
  - db/migrate/20160328222239_change_proxy_deposit_request_generic_file_id_to_work_id.rb
1190
1263
  - db/migrate/20160401142419_create_uploaded_files.rb
1264
+ - db/migrate/20160415212015_create_features.rb
1191
1265
  - db/migrate/20160510000007_change_featured_work_generic_file_id_to_work_id.rb
1192
1266
  - db/migrate/20160516190435_add_arkivo_to_users.rb
1193
1267
  - lib/generators/sufia/arkivo_api_generator.rb
@@ -1216,6 +1290,8 @@ files:
1216
1290
  - lib/sufia/arkivo/metadata_munger.rb
1217
1291
  - lib/sufia/arkivo/schema_validator.rb
1218
1292
  - lib/sufia/configuration.rb
1293
+ - lib/sufia/controlled_vocabulary/importer/downloader.rb
1294
+ - lib/sufia/controlled_vocabulary/importer/language.rb
1219
1295
  - lib/sufia/engine.rb
1220
1296
  - lib/sufia/inflections.rb
1221
1297
  - lib/sufia/redis_event_store.rb
@@ -1246,7 +1322,6 @@ files:
1246
1322
  - spec/actors/sufia/create_with_files_actor_spec.rb
1247
1323
  - spec/actors/sufia/create_with_remote_files_actor_spec.rb
1248
1324
  - spec/config/sufia_events_spec.rb
1249
- - spec/controllers/admin/stats_controller_spec.rb
1250
1325
  - spec/controllers/api/items_controller_spec.rb
1251
1326
  - spec/controllers/api/zotero_controller_spec.rb
1252
1327
  - spec/controllers/batch_edits_controller_spec.rb
@@ -1258,6 +1333,7 @@ files:
1258
1333
  - spec/controllers/curation_concerns/audits_controller_spec.rb
1259
1334
  - spec/controllers/curation_concerns/file_sets_controller_spec.rb
1260
1335
  - spec/controllers/curation_concerns/generic_works_controller_spec.rb
1336
+ - spec/controllers/curation_concerns/permissions_controller_spec.rb
1261
1337
  - spec/controllers/dashboard_controller_spec.rb
1262
1338
  - spec/controllers/depositors_controller_spec.rb
1263
1339
  - spec/controllers/downloads_controller_spec.rb
@@ -1268,10 +1344,15 @@ files:
1268
1344
  - spec/controllers/my/highlights_controller_spec.rb
1269
1345
  - spec/controllers/my/shares_controller_spec.rb
1270
1346
  - spec/controllers/my/works_controller_spec.rb
1271
- - spec/controllers/my_controller_spec.rb
1272
1347
  - spec/controllers/pages_controller_spec.rb
1273
1348
  - spec/controllers/static_controller_spec.rb
1274
1349
  - spec/controllers/stats_controller_spec.rb
1350
+ - spec/controllers/sufia/admin/admin_sets_controller_spec.rb
1351
+ - spec/controllers/sufia/admin/features_controller_spec.rb
1352
+ - spec/controllers/sufia/admin/stats_controller_spec.rb
1353
+ - spec/controllers/sufia/admin/strategies_controller_spec.rb
1354
+ - spec/controllers/sufia/admin_controller_spec.rb
1355
+ - spec/controllers/sufia/admin_sets_controller_spec.rb
1275
1356
  - spec/controllers/sufia/batch_uploads_controller_spec.rb
1276
1357
  - spec/controllers/sufia/homepage_controller_spec.rb
1277
1358
  - spec/controllers/sufia/resource_sync_controller_spec.rb
@@ -1280,6 +1361,7 @@ files:
1280
1361
  - spec/controllers/tinymce_assets_controller_spec.rb
1281
1362
  - spec/controllers/transfers_controller_spec.rb
1282
1363
  - spec/controllers/users_controller_spec.rb
1364
+ - spec/factories/admin_sets.rb
1283
1365
  - spec/factories/api_items.rb
1284
1366
  - spec/factories/collections_factory.rb
1285
1367
  - spec/factories/content_blocks.rb
@@ -1289,6 +1371,7 @@ files:
1289
1371
  - spec/factories/operations.rb
1290
1372
  - spec/factories/proxy_deposit_requests.rb
1291
1373
  - spec/factories/users.rb
1374
+ - spec/features/admin_admin_set_spec.rb
1292
1375
  - spec/features/batch_create_spec.rb
1293
1376
  - spec/features/batch_edit_spec.rb
1294
1377
  - spec/features/browse_catalog_spec.rb
@@ -1305,6 +1388,7 @@ files:
1305
1388
  - spec/features/ownership_transfer_spec.rb
1306
1389
  - spec/features/proxy_spec.rb
1307
1390
  - spec/features/search_spec.rb
1391
+ - spec/features/user_admin_set_spec.rb
1308
1392
  - spec/features/users_spec.rb
1309
1393
  - spec/features/work_show_spec.rb
1310
1394
  - spec/fixtures/1.5mb-avatar.jpg
@@ -1335,6 +1419,7 @@ files:
1335
1419
  - spec/fixtures/xls_fits.xml
1336
1420
  - spec/fixtures/xml_fits.xml
1337
1421
  - spec/forms/curation_concerns/generic_work_form_spec.rb
1422
+ - spec/forms/sufia/forms/admin_set_form_spec.rb
1338
1423
  - spec/forms/sufia/forms/batch_edit_form_spec.rb
1339
1424
  - spec/forms/sufia/forms/batch_upload_form_spec.rb
1340
1425
  - spec/forms/sufia/forms/collection_form_spec.rb
@@ -1346,6 +1431,7 @@ files:
1346
1431
  - spec/helpers/sufia/collections_helper_spec.rb
1347
1432
  - spec/helpers/sufia_helper_spec.rb
1348
1433
  - spec/helpers/trophy_helper_spec.rb
1434
+ - spec/indexers/sufia/work_indexer_spec.rb
1349
1435
  - spec/javascripts/autocomplete_spec.js.coffee
1350
1436
  - spec/javascripts/checklist_item_spec.js
1351
1437
  - spec/javascripts/deposit_agreement_spec.js
@@ -1356,6 +1442,7 @@ files:
1356
1442
  - spec/javascripts/helpers/test_responses.js
1357
1443
  - spec/javascripts/jasmine_spec.rb
1358
1444
  - spec/javascripts/relationships_table_spec.js.coffee
1445
+ - spec/javascripts/required_field_spec.js
1359
1446
  - spec/javascripts/save_work_spec.js
1360
1447
  - spec/javascripts/support/jasmine.yml
1361
1448
  - spec/javascripts/support/jasmine_helper.rb
@@ -1370,20 +1457,19 @@ files:
1370
1457
  - spec/jobs/content_restored_version_event_job_spec.rb
1371
1458
  - spec/jobs/content_update_event_job_spec.rb
1372
1459
  - spec/jobs/file_set_attached_event_job_spec.rb
1460
+ - spec/jobs/inherit_permissions_job_spec.rb
1373
1461
  - spec/jobs/user_edit_profile_event_job_spec.rb
1374
- - spec/jobs/user_follow_event_job_spec.rb
1375
- - spec/jobs/user_unfollow_event_job_spec.rb
1376
1462
  - spec/lib/sufia/analytics_spec.rb
1377
1463
  - spec/lib/sufia/arkivo/actor_spec.rb
1378
1464
  - spec/lib/sufia/arkivo/create_subscription_job_spec.rb
1379
1465
  - spec/lib/sufia/arkivo/metadata_munger_spec.rb
1380
1466
  - spec/lib/sufia/arkivo/schema_validator_spec.rb
1381
1467
  - spec/lib/sufia/configuration_spec.rb
1468
+ - spec/lib/sufia/controlled_vocabulary/importer/language_spec.rb
1382
1469
  - spec/lib/sufia/redis_event_store_spec.rb
1383
1470
  - spec/lib/sufia/resource_sync/capability_list_writer_spec.rb
1384
1471
  - spec/lib/sufia/resource_sync/resource_list_writer_spec.rb
1385
1472
  - spec/lib/sufia/resource_sync/source_description_writer_spec.rb
1386
- - spec/lib/sufia/user_stat_importer_spec.rb
1387
1473
  - spec/lib/sufia/zotero/config_spec.rb
1388
1474
  - spec/models/collection_spec.rb
1389
1475
  - spec/models/content_block_spec.rb
@@ -1391,6 +1477,7 @@ files:
1391
1477
  - spec/models/featured_work_spec.rb
1392
1478
  - spec/models/file_download_stat_spec.rb
1393
1479
  - spec/models/file_view_stat_spec.rb
1480
+ - spec/models/flipflop_spec.rb
1394
1481
  - spec/models/generic_work_spec.rb
1395
1482
  - spec/models/proxy_deposit_request_spec.rb
1396
1483
  - spec/models/solr_document_spec.rb
@@ -1403,6 +1490,8 @@ files:
1403
1490
  - spec/models/user_mailbox_spec.rb
1404
1491
  - spec/models/user_spec.rb
1405
1492
  - spec/models/work_view_stat_spec.rb
1493
+ - spec/presenters/sufia/admin_dashboard_presenter_spec.rb
1494
+ - spec/presenters/sufia/admin_set_presenter_spec.rb
1406
1495
  - spec/presenters/sufia/admin_stats_presenter_spec.rb
1407
1496
  - spec/presenters/sufia/collection_presenter_spec.rb
1408
1497
  - spec/presenters/sufia/file_set_presenter_spec.rb
@@ -1423,7 +1512,9 @@ files:
1423
1512
  - spec/routing/stats_route_spec.rb
1424
1513
  - spec/search_builder/sufia/catalog_search_builder_spec.rb
1425
1514
  - spec/search_builder/sufia/my_shares_search_builder_spec.rb
1515
+ - spec/search_builder/sufia/single_admin_set_search_builder_spec.rb
1426
1516
  - spec/services/sufia/actor_factory_spec.rb
1517
+ - spec/services/sufia/admin_set_service_spec.rb
1427
1518
  - spec/services/sufia/audit_failure_service_spec.rb
1428
1519
  - spec/services/sufia/batch_create_failure_service_spec.rb
1429
1520
  - spec/services/sufia/batch_create_success_service_spec.rb
@@ -1445,6 +1536,7 @@ files:
1445
1536
  - spec/services/sufia/statistics/works/over_time_spec.rb
1446
1537
  - spec/services/sufia/user_stat_importer_spec.rb
1447
1538
  - spec/spec_helper.rb
1539
+ - spec/support/backport_test_helpers.rb
1448
1540
  - spec/support/features.rb
1449
1541
  - spec/support/features/session_helpers.rb
1450
1542
  - spec/support/locations.rb
@@ -1457,12 +1549,11 @@ files:
1457
1549
  - spec/test_app_templates/Gemfile.extra
1458
1550
  - spec/test_app_templates/lib/generators/test_app_generator.rb
1459
1551
  - spec/views/_toolbar.html.erb_spec.rb
1460
- - spec/views/admin/stats/index.html.erb_spec.rb
1461
1552
  - spec/views/batch_edits/check_all_spec.rb
1462
1553
  - spec/views/batch_edits/edit.html.erb_spec.rb
1463
1554
  - spec/views/catalog/_index_list_default.html.erb_spec.rb
1555
+ - spec/views/catalog/_thumbnail_list_collection.html.erb_spec.rb
1464
1556
  - spec/views/catalog/index.html.erb_spec.rb
1465
- - spec/views/catalog/sort_and_per_page.html.erb_spec.rb
1466
1557
  - spec/views/citations/work.html.erb_spec.rb
1467
1558
  - spec/views/collections/_form.html.erb_spec.rb
1468
1559
  - spec/views/collections/_form_for_select_collection.html.erb_spec.rb
@@ -1472,12 +1563,17 @@ files:
1472
1563
  - spec/views/collections/_show_document_list_row.html.erb_spec.rb
1473
1564
  - spec/views/collections/edit.html.erb_spec.rb
1474
1565
  - spec/views/collections/show.html.erb_spec.rb
1566
+ - spec/views/curation_concerns/base/_attribute_rows.html.erb_spec.rb
1475
1567
  - spec/views/curation_concerns/base/_browse_everything.html.erb_spec.rb
1476
1568
  - spec/views/curation_concerns/base/_citations.html.erb_spec.rb
1477
1569
  - spec/views/curation_concerns/base/_form.html.erb_spec.rb
1478
1570
  - spec/views/curation_concerns/base/_form_child_work_relationships.html.erb_spec.rb
1479
1571
  - spec/views/curation_concerns/base/_form_progress.html.erb_spec.rb
1572
+ - spec/views/curation_concerns/base/_form_relationships.html.erb_spec.rb
1573
+ - spec/views/curation_concerns/base/_items.html.erb_spec.rb
1480
1574
  - spec/views/curation_concerns/base/_relationships.html.erb_spec.rb
1575
+ - spec/views/curation_concerns/base/_show_actions.html.erb_spec.rb
1576
+ - spec/views/curation_concerns/base/_social_media.html.erb_spec.rb
1481
1577
  - spec/views/curation_concerns/base/edit.html.erb_spec.rb
1482
1578
  - spec/views/curation_concerns/base/show.html.erb_spec.rb
1483
1579
  - spec/views/curation_concerns/file_sets/_permission.html.erb_spec.rb
@@ -1486,6 +1582,7 @@ files:
1486
1582
  - spec/views/curation_concerns/file_sets/_show_characterization_details.html.erb_spec.rb
1487
1583
  - spec/views/curation_concerns/file_sets/_single_use_links.html.erb_spec.rb
1488
1584
  - spec/views/curation_concerns/file_sets/_versioning.html.erb_spec.rb
1585
+ - spec/views/curation_concerns/file_sets/media_display/_default.html.erb_spec.rb
1489
1586
  - spec/views/curation_concerns/file_sets/show.html.erb_spec.rb
1490
1587
  - spec/views/curation_concerns/permissions/confirm.html.erb_spec.rb
1491
1588
  - spec/views/dashboard/index_spec.rb
@@ -1493,23 +1590,25 @@ files:
1493
1590
  - spec/views/my/_list_works.html.erb_spec.rb
1494
1591
  - spec/views/my/facet.html.erb_spec.rb
1495
1592
  - spec/views/records/edit_fields/_based_near.html.erb_spec.rb
1593
+ - spec/views/records/edit_fields/_description.html.erb_spec.rb
1496
1594
  - spec/views/records/edit_fields/_in_works_ids.html.erb_spec.rb
1497
1595
  - spec/views/records/edit_fields/_language.html.erb_spec.rb
1498
1596
  - spec/views/records/edit_fields/_subject.html.erb_spec.rb
1499
1597
  - spec/views/stats_file.html.erb_spec.rb
1598
+ - spec/views/sufia/admin/admin_sets/index.html.erb_spec.rb
1599
+ - spec/views/sufia/admin/stats/show.html.erb_spec.rb
1500
1600
  - spec/views/sufia/batch_uploads/_form.html.erb_spec.rb
1501
1601
  - spec/views/sufia/homepage/_announcement.html.erb_spec.rb
1502
1602
  - spec/views/sufia/homepage/_featured_works.html.erb_spec.rb
1503
- - spec/views/sufia/homepage/_home_header.html.erb_spec.rb
1504
1603
  - spec/views/sufia/homepage/_sortable_featured.html.erb_spec.rb
1505
- - spec/views/users/_follower_modal.html.erb_spec.rb
1506
- - spec/views/users/_following_modal.html.erb_spec.rb
1604
+ - spec/views/sufia/homepage/index.html.erb_spec.rb
1507
1605
  - spec/views/users/_user_info.html.erb_spec.rb
1508
1606
  - spec/views/users/_user_util_links.html.erb_spec.rb
1509
1607
  - spec/views/users/edit.html.erb_spec.rb
1510
1608
  - spec/views/users/index.html.erb_spec.rb
1511
1609
  - spec/views/users/show.html.erb_spec.rb
1512
1610
  - sufia.gemspec
1611
+ - tasks/controlled_vocabularies.rake
1513
1612
  - tasks/noid.rake
1514
1613
  - tasks/reindex.rake
1515
1614
  - tasks/stats_tasks.rake
@@ -1527,6 +1626,7 @@ files:
1527
1626
  - vendor/assets/javascripts/fixedsticky.js
1528
1627
  - vendor/assets/javascripts/jquery.validate.js
1529
1628
  - vendor/assets/javascripts/nestable.js
1629
+ - vendor/assets/stylesheets/sharing_buttons.css
1530
1630
  homepage: http://sufia.io/
1531
1631
  licenses:
1532
1632
  - Apache2
@@ -1557,7 +1657,6 @@ test_files:
1557
1657
  - spec/actors/sufia/create_with_files_actor_spec.rb
1558
1658
  - spec/actors/sufia/create_with_remote_files_actor_spec.rb
1559
1659
  - spec/config/sufia_events_spec.rb
1560
- - spec/controllers/admin/stats_controller_spec.rb
1561
1660
  - spec/controllers/api/items_controller_spec.rb
1562
1661
  - spec/controllers/api/zotero_controller_spec.rb
1563
1662
  - spec/controllers/batch_edits_controller_spec.rb
@@ -1569,6 +1668,7 @@ test_files:
1569
1668
  - spec/controllers/curation_concerns/audits_controller_spec.rb
1570
1669
  - spec/controllers/curation_concerns/file_sets_controller_spec.rb
1571
1670
  - spec/controllers/curation_concerns/generic_works_controller_spec.rb
1671
+ - spec/controllers/curation_concerns/permissions_controller_spec.rb
1572
1672
  - spec/controllers/dashboard_controller_spec.rb
1573
1673
  - spec/controllers/depositors_controller_spec.rb
1574
1674
  - spec/controllers/downloads_controller_spec.rb
@@ -1579,10 +1679,15 @@ test_files:
1579
1679
  - spec/controllers/my/highlights_controller_spec.rb
1580
1680
  - spec/controllers/my/shares_controller_spec.rb
1581
1681
  - spec/controllers/my/works_controller_spec.rb
1582
- - spec/controllers/my_controller_spec.rb
1583
1682
  - spec/controllers/pages_controller_spec.rb
1584
1683
  - spec/controllers/static_controller_spec.rb
1585
1684
  - spec/controllers/stats_controller_spec.rb
1685
+ - spec/controllers/sufia/admin/admin_sets_controller_spec.rb
1686
+ - spec/controllers/sufia/admin/features_controller_spec.rb
1687
+ - spec/controllers/sufia/admin/stats_controller_spec.rb
1688
+ - spec/controllers/sufia/admin/strategies_controller_spec.rb
1689
+ - spec/controllers/sufia/admin_controller_spec.rb
1690
+ - spec/controllers/sufia/admin_sets_controller_spec.rb
1586
1691
  - spec/controllers/sufia/batch_uploads_controller_spec.rb
1587
1692
  - spec/controllers/sufia/homepage_controller_spec.rb
1588
1693
  - spec/controllers/sufia/resource_sync_controller_spec.rb
@@ -1591,6 +1696,7 @@ test_files:
1591
1696
  - spec/controllers/tinymce_assets_controller_spec.rb
1592
1697
  - spec/controllers/transfers_controller_spec.rb
1593
1698
  - spec/controllers/users_controller_spec.rb
1699
+ - spec/factories/admin_sets.rb
1594
1700
  - spec/factories/api_items.rb
1595
1701
  - spec/factories/collections_factory.rb
1596
1702
  - spec/factories/content_blocks.rb
@@ -1600,6 +1706,7 @@ test_files:
1600
1706
  - spec/factories/operations.rb
1601
1707
  - spec/factories/proxy_deposit_requests.rb
1602
1708
  - spec/factories/users.rb
1709
+ - spec/features/admin_admin_set_spec.rb
1603
1710
  - spec/features/batch_create_spec.rb
1604
1711
  - spec/features/batch_edit_spec.rb
1605
1712
  - spec/features/browse_catalog_spec.rb
@@ -1616,6 +1723,7 @@ test_files:
1616
1723
  - spec/features/ownership_transfer_spec.rb
1617
1724
  - spec/features/proxy_spec.rb
1618
1725
  - spec/features/search_spec.rb
1726
+ - spec/features/user_admin_set_spec.rb
1619
1727
  - spec/features/users_spec.rb
1620
1728
  - spec/features/work_show_spec.rb
1621
1729
  - spec/fixtures/1.5mb-avatar.jpg
@@ -1646,6 +1754,7 @@ test_files:
1646
1754
  - spec/fixtures/xls_fits.xml
1647
1755
  - spec/fixtures/xml_fits.xml
1648
1756
  - spec/forms/curation_concerns/generic_work_form_spec.rb
1757
+ - spec/forms/sufia/forms/admin_set_form_spec.rb
1649
1758
  - spec/forms/sufia/forms/batch_edit_form_spec.rb
1650
1759
  - spec/forms/sufia/forms/batch_upload_form_spec.rb
1651
1760
  - spec/forms/sufia/forms/collection_form_spec.rb
@@ -1657,6 +1766,7 @@ test_files:
1657
1766
  - spec/helpers/sufia/collections_helper_spec.rb
1658
1767
  - spec/helpers/sufia_helper_spec.rb
1659
1768
  - spec/helpers/trophy_helper_spec.rb
1769
+ - spec/indexers/sufia/work_indexer_spec.rb
1660
1770
  - spec/javascripts/autocomplete_spec.js.coffee
1661
1771
  - spec/javascripts/checklist_item_spec.js
1662
1772
  - spec/javascripts/deposit_agreement_spec.js
@@ -1667,6 +1777,7 @@ test_files:
1667
1777
  - spec/javascripts/helpers/test_responses.js
1668
1778
  - spec/javascripts/jasmine_spec.rb
1669
1779
  - spec/javascripts/relationships_table_spec.js.coffee
1780
+ - spec/javascripts/required_field_spec.js
1670
1781
  - spec/javascripts/save_work_spec.js
1671
1782
  - spec/javascripts/support/jasmine.yml
1672
1783
  - spec/javascripts/support/jasmine_helper.rb
@@ -1681,20 +1792,19 @@ test_files:
1681
1792
  - spec/jobs/content_restored_version_event_job_spec.rb
1682
1793
  - spec/jobs/content_update_event_job_spec.rb
1683
1794
  - spec/jobs/file_set_attached_event_job_spec.rb
1795
+ - spec/jobs/inherit_permissions_job_spec.rb
1684
1796
  - spec/jobs/user_edit_profile_event_job_spec.rb
1685
- - spec/jobs/user_follow_event_job_spec.rb
1686
- - spec/jobs/user_unfollow_event_job_spec.rb
1687
1797
  - spec/lib/sufia/analytics_spec.rb
1688
1798
  - spec/lib/sufia/arkivo/actor_spec.rb
1689
1799
  - spec/lib/sufia/arkivo/create_subscription_job_spec.rb
1690
1800
  - spec/lib/sufia/arkivo/metadata_munger_spec.rb
1691
1801
  - spec/lib/sufia/arkivo/schema_validator_spec.rb
1692
1802
  - spec/lib/sufia/configuration_spec.rb
1803
+ - spec/lib/sufia/controlled_vocabulary/importer/language_spec.rb
1693
1804
  - spec/lib/sufia/redis_event_store_spec.rb
1694
1805
  - spec/lib/sufia/resource_sync/capability_list_writer_spec.rb
1695
1806
  - spec/lib/sufia/resource_sync/resource_list_writer_spec.rb
1696
1807
  - spec/lib/sufia/resource_sync/source_description_writer_spec.rb
1697
- - spec/lib/sufia/user_stat_importer_spec.rb
1698
1808
  - spec/lib/sufia/zotero/config_spec.rb
1699
1809
  - spec/models/collection_spec.rb
1700
1810
  - spec/models/content_block_spec.rb
@@ -1702,6 +1812,7 @@ test_files:
1702
1812
  - spec/models/featured_work_spec.rb
1703
1813
  - spec/models/file_download_stat_spec.rb
1704
1814
  - spec/models/file_view_stat_spec.rb
1815
+ - spec/models/flipflop_spec.rb
1705
1816
  - spec/models/generic_work_spec.rb
1706
1817
  - spec/models/proxy_deposit_request_spec.rb
1707
1818
  - spec/models/solr_document_spec.rb
@@ -1714,6 +1825,8 @@ test_files:
1714
1825
  - spec/models/user_mailbox_spec.rb
1715
1826
  - spec/models/user_spec.rb
1716
1827
  - spec/models/work_view_stat_spec.rb
1828
+ - spec/presenters/sufia/admin_dashboard_presenter_spec.rb
1829
+ - spec/presenters/sufia/admin_set_presenter_spec.rb
1717
1830
  - spec/presenters/sufia/admin_stats_presenter_spec.rb
1718
1831
  - spec/presenters/sufia/collection_presenter_spec.rb
1719
1832
  - spec/presenters/sufia/file_set_presenter_spec.rb
@@ -1734,7 +1847,9 @@ test_files:
1734
1847
  - spec/routing/stats_route_spec.rb
1735
1848
  - spec/search_builder/sufia/catalog_search_builder_spec.rb
1736
1849
  - spec/search_builder/sufia/my_shares_search_builder_spec.rb
1850
+ - spec/search_builder/sufia/single_admin_set_search_builder_spec.rb
1737
1851
  - spec/services/sufia/actor_factory_spec.rb
1852
+ - spec/services/sufia/admin_set_service_spec.rb
1738
1853
  - spec/services/sufia/audit_failure_service_spec.rb
1739
1854
  - spec/services/sufia/batch_create_failure_service_spec.rb
1740
1855
  - spec/services/sufia/batch_create_success_service_spec.rb
@@ -1756,6 +1871,7 @@ test_files:
1756
1871
  - spec/services/sufia/statistics/works/over_time_spec.rb
1757
1872
  - spec/services/sufia/user_stat_importer_spec.rb
1758
1873
  - spec/spec_helper.rb
1874
+ - spec/support/backport_test_helpers.rb
1759
1875
  - spec/support/features.rb
1760
1876
  - spec/support/features/session_helpers.rb
1761
1877
  - spec/support/locations.rb
@@ -1768,12 +1884,11 @@ test_files:
1768
1884
  - spec/test_app_templates/Gemfile.extra
1769
1885
  - spec/test_app_templates/lib/generators/test_app_generator.rb
1770
1886
  - spec/views/_toolbar.html.erb_spec.rb
1771
- - spec/views/admin/stats/index.html.erb_spec.rb
1772
1887
  - spec/views/batch_edits/check_all_spec.rb
1773
1888
  - spec/views/batch_edits/edit.html.erb_spec.rb
1774
1889
  - spec/views/catalog/_index_list_default.html.erb_spec.rb
1890
+ - spec/views/catalog/_thumbnail_list_collection.html.erb_spec.rb
1775
1891
  - spec/views/catalog/index.html.erb_spec.rb
1776
- - spec/views/catalog/sort_and_per_page.html.erb_spec.rb
1777
1892
  - spec/views/citations/work.html.erb_spec.rb
1778
1893
  - spec/views/collections/_form.html.erb_spec.rb
1779
1894
  - spec/views/collections/_form_for_select_collection.html.erb_spec.rb
@@ -1783,12 +1898,17 @@ test_files:
1783
1898
  - spec/views/collections/_show_document_list_row.html.erb_spec.rb
1784
1899
  - spec/views/collections/edit.html.erb_spec.rb
1785
1900
  - spec/views/collections/show.html.erb_spec.rb
1901
+ - spec/views/curation_concerns/base/_attribute_rows.html.erb_spec.rb
1786
1902
  - spec/views/curation_concerns/base/_browse_everything.html.erb_spec.rb
1787
1903
  - spec/views/curation_concerns/base/_citations.html.erb_spec.rb
1788
1904
  - spec/views/curation_concerns/base/_form.html.erb_spec.rb
1789
1905
  - spec/views/curation_concerns/base/_form_child_work_relationships.html.erb_spec.rb
1790
1906
  - spec/views/curation_concerns/base/_form_progress.html.erb_spec.rb
1907
+ - spec/views/curation_concerns/base/_form_relationships.html.erb_spec.rb
1908
+ - spec/views/curation_concerns/base/_items.html.erb_spec.rb
1791
1909
  - spec/views/curation_concerns/base/_relationships.html.erb_spec.rb
1910
+ - spec/views/curation_concerns/base/_show_actions.html.erb_spec.rb
1911
+ - spec/views/curation_concerns/base/_social_media.html.erb_spec.rb
1792
1912
  - spec/views/curation_concerns/base/edit.html.erb_spec.rb
1793
1913
  - spec/views/curation_concerns/base/show.html.erb_spec.rb
1794
1914
  - spec/views/curation_concerns/file_sets/_permission.html.erb_spec.rb
@@ -1797,6 +1917,7 @@ test_files:
1797
1917
  - spec/views/curation_concerns/file_sets/_show_characterization_details.html.erb_spec.rb
1798
1918
  - spec/views/curation_concerns/file_sets/_single_use_links.html.erb_spec.rb
1799
1919
  - spec/views/curation_concerns/file_sets/_versioning.html.erb_spec.rb
1920
+ - spec/views/curation_concerns/file_sets/media_display/_default.html.erb_spec.rb
1800
1921
  - spec/views/curation_concerns/file_sets/show.html.erb_spec.rb
1801
1922
  - spec/views/curation_concerns/permissions/confirm.html.erb_spec.rb
1802
1923
  - spec/views/dashboard/index_spec.rb
@@ -1804,17 +1925,18 @@ test_files:
1804
1925
  - spec/views/my/_list_works.html.erb_spec.rb
1805
1926
  - spec/views/my/facet.html.erb_spec.rb
1806
1927
  - spec/views/records/edit_fields/_based_near.html.erb_spec.rb
1928
+ - spec/views/records/edit_fields/_description.html.erb_spec.rb
1807
1929
  - spec/views/records/edit_fields/_in_works_ids.html.erb_spec.rb
1808
1930
  - spec/views/records/edit_fields/_language.html.erb_spec.rb
1809
1931
  - spec/views/records/edit_fields/_subject.html.erb_spec.rb
1810
1932
  - spec/views/stats_file.html.erb_spec.rb
1933
+ - spec/views/sufia/admin/admin_sets/index.html.erb_spec.rb
1934
+ - spec/views/sufia/admin/stats/show.html.erb_spec.rb
1811
1935
  - spec/views/sufia/batch_uploads/_form.html.erb_spec.rb
1812
1936
  - spec/views/sufia/homepage/_announcement.html.erb_spec.rb
1813
1937
  - spec/views/sufia/homepage/_featured_works.html.erb_spec.rb
1814
- - spec/views/sufia/homepage/_home_header.html.erb_spec.rb
1815
1938
  - spec/views/sufia/homepage/_sortable_featured.html.erb_spec.rb
1816
- - spec/views/users/_follower_modal.html.erb_spec.rb
1817
- - spec/views/users/_following_modal.html.erb_spec.rb
1939
+ - spec/views/sufia/homepage/index.html.erb_spec.rb
1818
1940
  - spec/views/users/_user_info.html.erb_spec.rb
1819
1941
  - spec/views/users/_user_util_links.html.erb_spec.rb
1820
1942
  - spec/views/users/edit.html.erb_spec.rb