curation_concerns 1.6.3 → 1.7.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (236) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +4 -0
  3. data/.travis.yml +2 -8
  4. data/README.md +27 -1
  5. data/app/actors/curation_concerns/actors/base_actor.rb +2 -3
  6. data/app/actors/curation_concerns/actors/file_set_actor.rb +1 -1
  7. data/app/actors/curation_concerns/actors/grant_edit_to_depositor_actor.rb +19 -0
  8. data/app/actors/curation_concerns/actors/initialize_workflow_actor.rb +19 -0
  9. data/app/assets/javascripts/curation_concerns/charts.js +47 -0
  10. data/app/assets/javascripts/curation_concerns/curation_concerns.js +2 -0
  11. data/app/assets/javascripts/curation_concerns/workflow_actions_affix.js +11 -0
  12. data/app/assets/stylesheets/curation_concerns/_admin.scss +18 -0
  13. data/app/assets/stylesheets/curation_concerns/_curation_concerns.scss +1 -0
  14. data/app/assets/stylesheets/curation_concerns/_positioning.scss +11 -0
  15. data/app/controllers/concerns/curation_concerns/act_as_admin_controller.rb +25 -0
  16. data/app/controllers/concerns/curation_concerns/admin_controller_behavior.rb +38 -0
  17. data/app/controllers/concerns/curation_concerns/admin_page.rb +18 -0
  18. data/app/controllers/concerns/curation_concerns/collections_controller_behavior.rb +3 -2
  19. data/app/controllers/concerns/curation_concerns/curation_concern_controller.rb +158 -159
  20. data/app/controllers/concerns/curation_concerns/embargoes_controller_behavior.rb +4 -6
  21. data/app/controllers/concerns/curation_concerns/file_sets_controller_behavior.rb +2 -1
  22. data/app/controllers/concerns/curation_concerns/leases_controller_behavior.rb +4 -6
  23. data/app/controllers/concerns/curation_concerns/single_use_links_viewer_controller_behavior.rb +2 -1
  24. data/app/controllers/curation_concerns/admin/workflow_roles_controller.rb +36 -0
  25. data/app/controllers/curation_concerns/workflow_actions_controller.rb +25 -0
  26. data/app/conversions/power_converters/polymorphic_type.rb +7 -0
  27. data/app/conversions/power_converters/sipity_action.rb +9 -0
  28. data/app/conversions/power_converters/sipity_action_name.rb +8 -0
  29. data/app/conversions/power_converters/sipity_agent.rb +6 -0
  30. data/app/conversions/power_converters/sipity_entity.rb +12 -0
  31. data/app/conversions/power_converters/sipity_role.rb +8 -0
  32. data/app/conversions/power_converters/sipity_workflow_id.rb +16 -0
  33. data/app/conversions/power_converters/sipity_workflow_state.rb +10 -0
  34. data/app/conversions/power_converters.rb +6 -0
  35. data/app/forms/curation_concerns/forms/workflow_action_form.rb +62 -0
  36. data/app/forms/curation_concerns/forms/workflow_responsibility_form.rb +42 -0
  37. data/app/helpers/curation_concerns/charts_helper.rb +23 -0
  38. data/app/helpers/curation_concerns/main_app_helpers.rb +1 -0
  39. data/app/helpers/curation_concerns/url_helper.rb +2 -5
  40. data/app/indexers/curation_concerns/indexes_workflow.rb +44 -0
  41. data/app/indexers/curation_concerns/work_indexer.rb +1 -2
  42. data/app/jobs/import_export_job.rb +46 -0
  43. data/app/models/concerns/curation_concerns/ability.rb +2 -0
  44. data/app/models/concerns/curation_concerns/permissions/writable.rb +7 -8
  45. data/app/models/concerns/curation_concerns/publishable.rb +6 -0
  46. data/app/models/concerns/curation_concerns/solr_document_behavior.rb +8 -0
  47. data/app/models/concerns/curation_concerns/user.rb +5 -0
  48. data/app/models/curation_concerns/group.rb +23 -0
  49. data/app/models/curation_concerns/workflow_action_info.rb +13 -0
  50. data/app/models/sipity/agent.rb +21 -0
  51. data/app/models/sipity/comment.rb +13 -0
  52. data/app/models/sipity/entity.rb +32 -0
  53. data/app/models/sipity/entity_specific_responsibility.rb +21 -0
  54. data/app/models/sipity/method.rb +5 -0
  55. data/app/models/sipity/notifiable_context.rb +26 -0
  56. data/app/models/sipity/notification.rb +28 -0
  57. data/app/models/sipity/notification_recipient.rb +17 -0
  58. data/app/models/sipity/role.rb +43 -0
  59. data/app/models/sipity/workflow.rb +19 -0
  60. data/app/models/sipity/workflow_action.rb +25 -0
  61. data/app/models/sipity/workflow_responsibility.rb +23 -0
  62. data/app/models/sipity/workflow_role.rb +13 -0
  63. data/app/models/sipity/workflow_state.rb +26 -0
  64. data/app/models/sipity/workflow_state_action.rb +9 -0
  65. data/app/models/sipity/workflow_state_action_permission.rb +8 -0
  66. data/app/models/vocab/fedora_resource_status.rb +4 -1
  67. data/app/presenters/curation_concerns/admin/workflow_role_presenter.rb +40 -0
  68. data/app/presenters/curation_concerns/work_show_presenter.rb +4 -0
  69. data/app/presenters/curation_concerns/workflow_presenter.rb +43 -0
  70. data/app/renderers/curation_concerns/renderers/rights_attribute_renderer.rb +1 -1
  71. data/app/search_builders/curation_concerns/search_filters.rb +0 -1
  72. data/app/services/curation_concerns/actors/actor_factory.rb +3 -1
  73. data/app/services/curation_concerns/admin_set_service.rb +13 -4
  74. data/app/services/curation_concerns/work_form_service.rb +11 -0
  75. data/app/services/curation_concerns/workflow/action_taken_service.rb +57 -0
  76. data/app/services/curation_concerns/workflow/activate_object.rb +9 -0
  77. data/app/services/curation_concerns/workflow/deactivate_object.rb +11 -0
  78. data/app/services/curation_concerns/workflow/default_workflow_strategy.rb +13 -0
  79. data/app/services/curation_concerns/workflow/method_generator.rb +55 -0
  80. data/app/services/curation_concerns/workflow/notification_configuration_parameter.rb +42 -0
  81. data/app/services/curation_concerns/workflow/notification_generator.rb +64 -0
  82. data/app/services/curation_concerns/workflow/notification_service.rb +66 -0
  83. data/app/services/curation_concerns/workflow/permission_generator.rb +95 -0
  84. data/app/services/curation_concerns/workflow/permission_query.rb +432 -0
  85. data/app/services/curation_concerns/workflow/remove_depositor_permissions.rb +11 -0
  86. data/app/services/curation_concerns/workflow/sipity_actions_generator.rb +49 -0
  87. data/app/services/curation_concerns/workflow/state_machine_generator.rb +102 -0
  88. data/app/services/curation_concerns/workflow/status_list_service.rb +52 -0
  89. data/app/services/curation_concerns/workflow/workflow_action_service.rb +56 -0
  90. data/app/services/curation_concerns/workflow/workflow_by_model_name_strategy.rb +14 -0
  91. data/app/services/curation_concerns/workflow/workflow_factory.rb +64 -0
  92. data/app/services/curation_concerns/workflow/workflow_importer.rb +103 -0
  93. data/app/services/curation_concerns/workflow/workflow_permissions_generator.rb +49 -0
  94. data/app/services/curation_concerns/workflow/workflow_schema.rb +56 -0
  95. data/app/services/rights_service.rb +1 -1
  96. data/app/services/sipity.rb +2 -0
  97. data/app/sources/curation_concerns/resource_statistics_source.rb +101 -0
  98. data/app/values/curation_concerns/chart_data.rb +61 -0
  99. data/app/views/curation_concerns/admin/_admin_menu.html.erb +5 -0
  100. data/app/views/curation_concerns/admin/_resource_stats.html.erb +43 -0
  101. data/app/views/curation_concerns/admin/_sidebar.html.erb +3 -0
  102. data/app/views/curation_concerns/admin/_total_embargo_visibility.html.erb +21 -0
  103. data/app/views/curation_concerns/admin/_total_objects.html.erb +1 -0
  104. data/app/views/curation_concerns/admin/_total_objects_charts.html.erb +12 -0
  105. data/app/views/curation_concerns/admin/index.html.erb +11 -0
  106. data/app/views/curation_concerns/admin/widgets/_pie.html.erb +1 -0
  107. data/app/views/curation_concerns/admin/workflow.html.erb +31 -0
  108. data/app/views/curation_concerns/admin/workflow_roles/index.html.erb +45 -0
  109. data/app/views/curation_concerns/base/_form_rights.html.erb +1 -1
  110. data/app/views/curation_concerns/base/_workflow_actions.html.erb +39 -0
  111. data/app/views/curation_concerns/base/show.html.erb +2 -0
  112. data/app/views/curation_concerns/file_sets/media_display/_office_document.html.erb +0 -1
  113. data/app/views/layouts/_head_tag_content.html.erb +13 -0
  114. data/app/views/layouts/admin.html.erb +10 -0
  115. data/app/views/shared/_my_actions.html.erb +4 -1
  116. data/config/initializers/precompile_assets.rb +1 -0
  117. data/config/locales/curation_concerns.en.yml +97 -56
  118. data/config/routes.rb +7 -0
  119. data/curation_concerns.gemspec +9 -3
  120. data/db/migrate/20160919151348_create_sipity.rb +163 -0
  121. data/db/migrate/20161012182404_create_sipity_workflow_methods.rb +10 -0
  122. data/lib/curation_concerns/configuration.rb +68 -0
  123. data/lib/curation_concerns/engine.rb +9 -1
  124. data/lib/curation_concerns/rails/routes.rb +1 -0
  125. data/lib/curation_concerns/version.rb +1 -1
  126. data/lib/curation_concerns.rb +1 -1
  127. data/lib/generators/curation_concerns/admin_dashboard_generator.rb +15 -0
  128. data/lib/generators/curation_concerns/install_generator.rb +7 -0
  129. data/lib/generators/curation_concerns/sample_data_generator.rb +12 -0
  130. data/lib/generators/curation_concerns/templates/app/controllers/curation_concerns/admin_controller.rb +61 -0
  131. data/lib/generators/curation_concerns/templates/catalog_controller.rb +1 -3
  132. data/lib/generators/curation_concerns/templates/config/curation_concerns.rb +39 -0
  133. data/lib/generators/curation_concerns/templates/db/seeds.rb +94 -0
  134. data/lib/generators/curation_concerns/templates/spec/models/collection_spec.rb +1 -1
  135. data/lib/generators/curation_concerns/templates/spec/models/file_set_spec.rb +1 -1
  136. data/lib/generators/curation_concerns/templates/workflow.json.erb +19 -0
  137. data/lib/generators/curation_concerns/work/USAGE +1 -0
  138. data/lib/generators/curation_concerns/work/templates/actor_spec.rb.erb +1 -1
  139. data/lib/generators/curation_concerns/work/templates/controller_spec.rb.erb +1 -1
  140. data/lib/generators/curation_concerns/work/templates/feature_spec.rb.erb +1 -1
  141. data/lib/generators/curation_concerns/work/templates/form_spec.rb.erb +1 -1
  142. data/lib/generators/curation_concerns/work/templates/model_spec.rb.erb +1 -1
  143. data/spec/abilities/admin_ability_spec.rb +15 -0
  144. data/spec/actors/curation_concerns/file_set_actor_spec.rb +24 -0
  145. data/spec/actors/curation_concerns/grant_edit_to_depositor_actor_spec.rb +32 -0
  146. data/spec/actors/curation_concerns/initialize_workflow_actor_spec.rb +33 -0
  147. data/spec/actors/curation_concerns/interpret_visibility_actor_spec.rb +1 -0
  148. data/spec/actors/curation_concerns/work_actor_spec.rb +10 -5
  149. data/spec/controllers/curation_concerns/acts_as_admin_controller_spec.rb +22 -0
  150. data/spec/controllers/curation_concerns/admin/workflow_roles_controller_spec.rb +26 -0
  151. data/spec/controllers/curation_concerns/admin_controller_spec.rb +64 -0
  152. data/spec/controllers/curation_concerns/generic_works_controller_json_spec.rb +11 -3
  153. data/spec/controllers/curation_concerns/generic_works_controller_spec.rb +4 -4
  154. data/spec/controllers/curation_concerns/workflow_actions_controller_spec.rb +36 -0
  155. data/spec/conversions/power_converters/polymorphic_type_spec.rb +22 -0
  156. data/spec/conversions/power_converters/sipity_action_name_spec.rb +32 -0
  157. data/spec/conversions/power_converters/sipity_action_spec.rb +43 -0
  158. data/spec/conversions/power_converters/sipity_agent_spec.rb +20 -0
  159. data/spec/conversions/power_converters/sipity_entity_spec.rb +46 -0
  160. data/spec/conversions/power_converters/sipity_role_spec.rb +33 -0
  161. data/spec/conversions/power_converters/sipity_workflow_id_spec.rb +28 -0
  162. data/spec/conversions/power_converters/sipity_workflow_state_spec.rb +22 -0
  163. data/spec/factories/generic_works.rb +19 -6
  164. data/spec/factories/sipity_entities.rb +7 -0
  165. data/spec/factories/workflow_actions.rb +6 -0
  166. data/spec/factories/workflow_states.rb +6 -0
  167. data/spec/factories/workflows.rb +5 -0
  168. data/spec/features/admin_spec.rb +14 -0
  169. data/spec/features/create_child_work_spec.rb +1 -1
  170. data/spec/features/create_work_spec.rb +1 -1
  171. data/spec/features/embargo_spec.rb +1 -1
  172. data/spec/features/lease_spec.rb +1 -1
  173. data/spec/features/work_generator_spec.rb +2 -2
  174. data/spec/features/workflow_roles_spec.rb +48 -0
  175. data/spec/forms/curation_concerns/forms/workflow_action_form_spec.rb +111 -0
  176. data/spec/forms/curation_concerns/forms/workflow_responsibility_form_spec.rb +33 -0
  177. data/spec/helpers/curation_concerns/charts_helper_spec.rb +62 -0
  178. data/spec/helpers/url_helper_spec.rb +11 -11
  179. data/spec/indexers/work_indexer_spec.rb +13 -1
  180. data/spec/javascripts/charts_spec.coffee +10 -0
  181. data/spec/javascripts/fixtures/chart_example.html +1 -0
  182. data/spec/jobs/import_export_job_spec.rb +28 -0
  183. data/spec/models/curation_concerns/group_spec.rb +15 -0
  184. data/spec/models/file_set_spec.rb +6 -2
  185. data/spec/models/generic_work_spec.rb +12 -0
  186. data/spec/models/sipity/agent_spec.rb +9 -0
  187. data/spec/models/sipity/comment_spec.rb +16 -0
  188. data/spec/models/sipity/entity_spec.rb +27 -0
  189. data/spec/models/sipity/entity_specific_responsibility_spec.rb +8 -0
  190. data/spec/models/sipity/notifiable_context_spec.rb +8 -0
  191. data/spec/models/sipity/notification_recipient_spec.rb +10 -0
  192. data/spec/models/sipity/notification_spec.rb +15 -0
  193. data/spec/models/sipity/role_spec.rb +30 -0
  194. data/spec/models/sipity/workflow_action_spec.rb +10 -0
  195. data/spec/models/sipity/workflow_responsibility_spec.rb +7 -0
  196. data/spec/models/sipity/workflow_role_spec.rb +7 -0
  197. data/spec/models/sipity/workflow_spec.rb +15 -0
  198. data/spec/models/sipity/workflow_state_action_permission_spec.rb +7 -0
  199. data/spec/models/sipity/workflow_state_action_spec.rb +7 -0
  200. data/spec/models/sipity/workflow_state_spec.rb +7 -0
  201. data/spec/models/user_spec.rb +12 -1
  202. data/spec/presenters/curation_concerns/work_show_presenter_spec.rb +12 -1
  203. data/spec/presenters/curation_concerns/workflow_presenter_spec.rb +39 -0
  204. data/spec/routing/route_spec.rb +13 -0
  205. data/spec/services/curation_concerns/admin_set_service_spec.rb +13 -0
  206. data/spec/services/curation_concerns/qa_select_service_spec.rb +75 -0
  207. data/spec/services/curation_concerns/workflow/action_taken_service_spec.rb +76 -0
  208. data/spec/services/curation_concerns/workflow/activate_object_spec.rb +20 -0
  209. data/spec/services/curation_concerns/workflow/deactivate_object_spec.rb +20 -0
  210. data/spec/services/curation_concerns/workflow/method_generator_spec.rb +43 -0
  211. data/spec/services/curation_concerns/workflow/notification_configuration_parameter_spec.rb +25 -0
  212. data/spec/services/curation_concerns/workflow/notification_generator_spec.rb +27 -0
  213. data/spec/services/curation_concerns/workflow/notification_service_spec.rb +81 -0
  214. data/spec/services/curation_concerns/workflow/permission_generator_spec.rb +52 -0
  215. data/spec/services/curation_concerns/workflow/permission_query_spec.rb +179 -0
  216. data/spec/services/curation_concerns/workflow/remove_depositor_permissions_spec.rb +21 -0
  217. data/spec/services/curation_concerns/workflow/sipity_actions_generator_spec.rb +30 -0
  218. data/spec/services/curation_concerns/workflow/state_machine_generator_spec.rb +46 -0
  219. data/spec/services/curation_concerns/workflow/status_list_service_spec.rb +46 -0
  220. data/spec/services/curation_concerns/workflow/workflow_importer_spec.rb +50 -0
  221. data/spec/services/curation_concerns/workflow/workflow_permissions_generator_spec.rb +37 -0
  222. data/spec/services/curation_concerns/workflow/workflow_schema_spec.rb +85 -0
  223. data/spec/sources/curation_concerns/resource_statistics_source_spec.rb +137 -0
  224. data/spec/spec_helper.rb +8 -1
  225. data/spec/test_app_templates/lib/generators/test_app_generator.rb +11 -0
  226. data/spec/views/curation_concerns/admin/_admin_menu.html.erb_spec.rb +23 -0
  227. data/spec/views/curation_concerns/admin/_resource_stats.html.erb_spec.rb +33 -0
  228. data/spec/views/curation_concerns/admin/_total_objects_charts.html.erb_spec.rb +28 -0
  229. data/spec/views/curation_concerns/admin/index.html.erb_spec.rb +26 -0
  230. data/spec/views/curation_concerns/admin/widgets/_pie.html.erb_spec.rb +17 -0
  231. data/spec/views/curation_concerns/base/file_manager.html.erb_spec.rb +1 -1
  232. data/spec/views/curation_concerns/base/show.html.erb_spec.rb +33 -0
  233. data/spec/views/curation_concerns/permissions/confirm.html.erb_spec.rb +1 -1
  234. data/spec/views/shared/_my_actions.html.erb_spec.rb +1 -0
  235. data/tasks/workflow.rake +8 -0
  236. metadata +335 -21
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: curation_concerns
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.3
4
+ version: 1.7.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Zumwalt
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-10-21 00:00:00.000000000 Z
13
+ date: 2016-11-16 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: hydra-head
@@ -128,20 +128,6 @@ dependencies:
128
128
  - - "<"
129
129
  - !ruby/object:Gem::Version
130
130
  version: '4'
131
- - !ruby/object:Gem::Dependency
132
- name: blacklight_advanced_search
133
- requirement: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - "~>"
136
- - !ruby/object:Gem::Version
137
- version: '6.0'
138
- type: :runtime
139
- prerelease: false
140
- version_requirements: !ruby/object:Gem::Requirement
141
- requirements:
142
- - - "~>"
143
- - !ruby/object:Gem::Version
144
- version: '6.0'
145
131
  - !ruby/object:Gem::Dependency
146
132
  name: rails_autolink
147
133
  requirement: !ruby/object:Gem::Requirement
@@ -218,14 +204,14 @@ dependencies:
218
204
  requirements:
219
205
  - - "~>"
220
206
  - !ruby/object:Gem::Version
221
- version: 2.0.0.beta1
207
+ version: 2.0.0.beta5
222
208
  type: :runtime
223
209
  prerelease: false
224
210
  version_requirements: !ruby/object:Gem::Requirement
225
211
  requirements:
226
212
  - - "~>"
227
213
  - !ruby/object:Gem::Version
228
- version: 2.0.0.beta1
214
+ version: 2.0.0.beta5
229
215
  - !ruby/object:Gem::Dependency
230
216
  name: qa
231
217
  requirement: !ruby/object:Gem::Requirement
@@ -338,6 +324,96 @@ dependencies:
338
324
  - - "~>"
339
325
  - !ruby/object:Gem::Version
340
326
  version: '1.5'
327
+ - !ruby/object:Gem::Dependency
328
+ name: power_converter
329
+ requirement: !ruby/object:Gem::Requirement
330
+ requirements:
331
+ - - "~>"
332
+ - !ruby/object:Gem::Version
333
+ version: '0.1'
334
+ - - ">="
335
+ - !ruby/object:Gem::Version
336
+ version: 0.1.2
337
+ type: :runtime
338
+ prerelease: false
339
+ version_requirements: !ruby/object:Gem::Requirement
340
+ requirements:
341
+ - - "~>"
342
+ - !ruby/object:Gem::Version
343
+ version: '0.1'
344
+ - - ">="
345
+ - !ruby/object:Gem::Version
346
+ version: 0.1.2
347
+ - !ruby/object:Gem::Dependency
348
+ name: dry-validation
349
+ requirement: !ruby/object:Gem::Requirement
350
+ requirements:
351
+ - - "~>"
352
+ - !ruby/object:Gem::Version
353
+ version: '0.9'
354
+ type: :runtime
355
+ prerelease: false
356
+ version_requirements: !ruby/object:Gem::Requirement
357
+ requirements:
358
+ - - "~>"
359
+ - !ruby/object:Gem::Version
360
+ version: '0.9'
361
+ - !ruby/object:Gem::Dependency
362
+ name: dry-equalizer
363
+ requirement: !ruby/object:Gem::Requirement
364
+ requirements:
365
+ - - "~>"
366
+ - !ruby/object:Gem::Version
367
+ version: '0.2'
368
+ type: :runtime
369
+ prerelease: false
370
+ version_requirements: !ruby/object:Gem::Requirement
371
+ requirements:
372
+ - - "~>"
373
+ - !ruby/object:Gem::Version
374
+ version: '0.2'
375
+ - !ruby/object:Gem::Dependency
376
+ name: dry-struct
377
+ requirement: !ruby/object:Gem::Requirement
378
+ requirements:
379
+ - - "~>"
380
+ - !ruby/object:Gem::Version
381
+ version: '0.1'
382
+ type: :runtime
383
+ prerelease: false
384
+ version_requirements: !ruby/object:Gem::Requirement
385
+ requirements:
386
+ - - "~>"
387
+ - !ruby/object:Gem::Version
388
+ version: '0.1'
389
+ - !ruby/object:Gem::Dependency
390
+ name: flot-rails
391
+ requirement: !ruby/object:Gem::Requirement
392
+ requirements:
393
+ - - "~>"
394
+ - !ruby/object:Gem::Version
395
+ version: 0.0.7
396
+ type: :runtime
397
+ prerelease: false
398
+ version_requirements: !ruby/object:Gem::Requirement
399
+ requirements:
400
+ - - "~>"
401
+ - !ruby/object:Gem::Version
402
+ version: 0.0.7
403
+ - !ruby/object:Gem::Dependency
404
+ name: highcharts-rails
405
+ requirement: !ruby/object:Gem::Requirement
406
+ requirements:
407
+ - - ">="
408
+ - !ruby/object:Gem::Version
409
+ version: '0'
410
+ type: :runtime
411
+ prerelease: false
412
+ version_requirements: !ruby/object:Gem::Requirement
413
+ requirements:
414
+ - - ">="
415
+ - !ruby/object:Gem::Version
416
+ version: '0'
341
417
  - !ruby/object:Gem::Dependency
342
418
  name: solr_wrapper
343
419
  requirement: !ruby/object:Gem::Requirement
@@ -458,6 +534,20 @@ dependencies:
458
534
  version: '0'
459
535
  - !ruby/object:Gem::Dependency
460
536
  name: rspec-rails
537
+ requirement: !ruby/object:Gem::Requirement
538
+ requirements:
539
+ - - "~>"
540
+ - !ruby/object:Gem::Version
541
+ version: '3.5'
542
+ type: :development
543
+ prerelease: false
544
+ version_requirements: !ruby/object:Gem::Requirement
545
+ requirements:
546
+ - - "~>"
547
+ - !ruby/object:Gem::Version
548
+ version: '3.5'
549
+ - !ruby/object:Gem::Dependency
550
+ name: rspec-html-matchers
461
551
  requirement: !ruby/object:Gem::Requirement
462
552
  requirements:
463
553
  - - ">="
@@ -471,7 +561,7 @@ dependencies:
471
561
  - !ruby/object:Gem::Version
472
562
  version: '0'
473
563
  - !ruby/object:Gem::Dependency
474
- name: rspec-html-matchers
564
+ name: shoulda-matchers
475
565
  requirement: !ruby/object:Gem::Requirement
476
566
  requirements:
477
567
  - - ">="
@@ -671,6 +761,8 @@ files:
671
761
  - app/actors/curation_concerns/actors/embargo_actor.rb
672
762
  - app/actors/curation_concerns/actors/file_actor.rb
673
763
  - app/actors/curation_concerns/actors/file_set_actor.rb
764
+ - app/actors/curation_concerns/actors/grant_edit_to_depositor_actor.rb
765
+ - app/actors/curation_concerns/actors/initialize_workflow_actor.rb
674
766
  - app/actors/curation_concerns/actors/interpret_visibility_actor.rb
675
767
  - app/actors/curation_concerns/actors/lease_actor.rb
676
768
  - app/actors/curation_concerns/actors/root_actor.rb
@@ -685,6 +777,7 @@ files:
685
777
  - app/assets/javascripts/curation_concerns/batch_select.js
686
778
  - app/assets/javascripts/curation_concerns/boot.es6
687
779
  - app/assets/javascripts/curation_concerns/browse_everything_implement.js
780
+ - app/assets/javascripts/curation_concerns/charts.js
688
781
  - app/assets/javascripts/curation_concerns/collections.js
689
782
  - app/assets/javascripts/curation_concerns/curation_concerns.js
690
783
  - app/assets/javascripts/curation_concerns/embargoes.js
@@ -696,8 +789,10 @@ files:
696
789
  - app/assets/javascripts/curation_concerns/fileupload.js
697
790
  - app/assets/javascripts/curation_concerns/single_use_links_manager.js
698
791
  - app/assets/javascripts/curation_concerns/uploader.js
792
+ - app/assets/javascripts/curation_concerns/workflow_actions_affix.js
699
793
  - app/assets/javascripts/modernizr.js
700
794
  - app/assets/stylesheets/curation_concerns.scss
795
+ - app/assets/stylesheets/curation_concerns/_admin.scss
701
796
  - app/assets/stylesheets/curation_concerns/_colors.scss
702
797
  - app/assets/stylesheets/curation_concerns/_curation_concerns.scss
703
798
  - app/assets/stylesheets/curation_concerns/_modules.scss
@@ -719,6 +814,9 @@ files:
719
814
  - app/assets/stylesheets/curation_concerns/modules/site_search.scss
720
815
  - app/connections/curation_concerns/clean_connection.rb
721
816
  - app/controllers/collections_controller.rb
817
+ - app/controllers/concerns/curation_concerns/act_as_admin_controller.rb
818
+ - app/controllers/concerns/curation_concerns/admin_controller_behavior.rb
819
+ - app/controllers/concerns/curation_concerns/admin_page.rb
722
820
  - app/controllers/concerns/curation_concerns/api.rb
723
821
  - app/controllers/concerns/curation_concerns/application_controller_behavior.rb
724
822
  - app/controllers/concerns/curation_concerns/catalog_controller.rb
@@ -736,6 +834,7 @@ files:
736
834
  - app/controllers/concerns/curation_concerns/single_use_links_viewer_controller_behavior.rb
737
835
  - app/controllers/concerns/curation_concerns/themed_layout_controller.rb
738
836
  - app/controllers/concerns/curation_concerns/welcome_controller_behavior.rb
837
+ - app/controllers/curation_concerns/admin/workflow_roles_controller.rb
739
838
  - app/controllers/curation_concerns/application_controller.rb
740
839
  - app/controllers/curation_concerns/classify_concerns_controller.rb
741
840
  - app/controllers/curation_concerns/file_sets_controller.rb
@@ -743,17 +842,30 @@ files:
743
842
  - app/controllers/curation_concerns/permissions_controller.rb
744
843
  - app/controllers/curation_concerns/single_use_links_controller.rb
745
844
  - app/controllers/curation_concerns/single_use_links_viewer_controller.rb
845
+ - app/controllers/curation_concerns/workflow_actions_controller.rb
746
846
  - app/controllers/downloads_controller.rb
747
847
  - app/controllers/embargoes_controller.rb
748
848
  - app/controllers/leases_controller.rb
749
849
  - app/controllers/welcome_controller.rb
850
+ - app/conversions/power_converters.rb
851
+ - app/conversions/power_converters/polymorphic_type.rb
852
+ - app/conversions/power_converters/sipity_action.rb
853
+ - app/conversions/power_converters/sipity_action_name.rb
854
+ - app/conversions/power_converters/sipity_agent.rb
855
+ - app/conversions/power_converters/sipity_entity.rb
856
+ - app/conversions/power_converters/sipity_role.rb
857
+ - app/conversions/power_converters/sipity_workflow_id.rb
858
+ - app/conversions/power_converters/sipity_workflow_state.rb
750
859
  - app/forms/curation_concerns/forms.rb
751
860
  - app/forms/curation_concerns/forms/collection_edit_form.rb
752
861
  - app/forms/curation_concerns/forms/file_set_edit_form.rb
753
862
  - app/forms/curation_concerns/forms/work_form.rb
863
+ - app/forms/curation_concerns/forms/workflow_action_form.rb
864
+ - app/forms/curation_concerns/forms/workflow_responsibility_form.rb
754
865
  - app/helpers/batch_select_helper.rb
755
866
  - app/helpers/curation_concerns/ability_helper.rb
756
867
  - app/helpers/curation_concerns/catalog_helper.rb
868
+ - app/helpers/curation_concerns/charts_helper.rb
757
869
  - app/helpers/curation_concerns/collections_helper.rb
758
870
  - app/helpers/curation_concerns/embargo_helper.rb
759
871
  - app/helpers/curation_concerns/file_set_helper.rb
@@ -767,12 +879,14 @@ files:
767
879
  - app/indexers/curation_concerns/admin_set_indexer.rb
768
880
  - app/indexers/curation_concerns/collection_indexer.rb
769
881
  - app/indexers/curation_concerns/file_set_indexer.rb
882
+ - app/indexers/curation_concerns/indexes_workflow.rb
770
883
  - app/indexers/curation_concerns/work_indexer.rb
771
884
  - app/inputs/multi_value_select_input.rb
772
885
  - app/inputs/multifile_input.rb
773
886
  - app/jobs/audit_job.rb
774
887
  - app/jobs/characterize_job.rb
775
888
  - app/jobs/create_derivatives_job.rb
889
+ - app/jobs/import_export_job.rb
776
890
  - app/jobs/import_url_job.rb
777
891
  - app/jobs/ingest_file_job.rb
778
892
  - app/jobs/ingest_local_file_job.rb
@@ -808,12 +922,31 @@ files:
808
922
  - app/models/concerns/curation_concerns/with_file_sets.rb
809
923
  - app/models/concerns/curation_concerns/work_behavior.rb
810
924
  - app/models/curation_concerns/classify_concern.rb
925
+ - app/models/curation_concerns/group.rb
811
926
  - app/models/curation_concerns/operation.rb
812
927
  - app/models/curation_concerns/quick_classification_query.rb
813
928
  - app/models/curation_concerns/state_workflow.rb
929
+ - app/models/curation_concerns/workflow_action_info.rb
814
930
  - app/models/single_use_link.rb
931
+ - app/models/sipity/agent.rb
932
+ - app/models/sipity/comment.rb
933
+ - app/models/sipity/entity.rb
934
+ - app/models/sipity/entity_specific_responsibility.rb
935
+ - app/models/sipity/method.rb
936
+ - app/models/sipity/notifiable_context.rb
937
+ - app/models/sipity/notification.rb
938
+ - app/models/sipity/notification_recipient.rb
939
+ - app/models/sipity/role.rb
940
+ - app/models/sipity/workflow.rb
941
+ - app/models/sipity/workflow_action.rb
942
+ - app/models/sipity/workflow_responsibility.rb
943
+ - app/models/sipity/workflow_role.rb
944
+ - app/models/sipity/workflow_state.rb
945
+ - app/models/sipity/workflow_state_action.rb
946
+ - app/models/sipity/workflow_state_action_permission.rb
815
947
  - app/models/version_committer.rb
816
948
  - app/models/vocab/fedora_resource_status.rb
949
+ - app/presenters/curation_concerns/admin/workflow_role_presenter.rb
817
950
  - app/presenters/curation_concerns/characterization_behavior.rb
818
951
  - app/presenters/curation_concerns/collection_presenter.rb
819
952
  - app/presenters/curation_concerns/composite_presenter_factory.rb
@@ -828,6 +961,7 @@ files:
828
961
  - app/presenters/curation_concerns/version_list_presenter.rb
829
962
  - app/presenters/curation_concerns/version_presenter.rb
830
963
  - app/presenters/curation_concerns/work_show_presenter.rb
964
+ - app/presenters/curation_concerns/workflow_presenter.rb
831
965
  - app/renderers/curation_concerns/renderers.rb
832
966
  - app/renderers/curation_concerns/renderers/attribute_renderer.rb
833
967
  - app/renderers/curation_concerns/renderers/configured_microdata.rb
@@ -880,10 +1014,34 @@ files:
880
1014
  - app/services/curation_concerns/thumbnail_path_service.rb
881
1015
  - app/services/curation_concerns/time_service.rb
882
1016
  - app/services/curation_concerns/versioning_service.rb
1017
+ - app/services/curation_concerns/work_form_service.rb
1018
+ - app/services/curation_concerns/workflow/action_taken_service.rb
1019
+ - app/services/curation_concerns/workflow/activate_object.rb
1020
+ - app/services/curation_concerns/workflow/deactivate_object.rb
1021
+ - app/services/curation_concerns/workflow/default_workflow_strategy.rb
1022
+ - app/services/curation_concerns/workflow/method_generator.rb
1023
+ - app/services/curation_concerns/workflow/notification_configuration_parameter.rb
1024
+ - app/services/curation_concerns/workflow/notification_generator.rb
1025
+ - app/services/curation_concerns/workflow/notification_service.rb
1026
+ - app/services/curation_concerns/workflow/permission_generator.rb
1027
+ - app/services/curation_concerns/workflow/permission_query.rb
1028
+ - app/services/curation_concerns/workflow/remove_depositor_permissions.rb
1029
+ - app/services/curation_concerns/workflow/sipity_actions_generator.rb
1030
+ - app/services/curation_concerns/workflow/state_machine_generator.rb
1031
+ - app/services/curation_concerns/workflow/status_list_service.rb
1032
+ - app/services/curation_concerns/workflow/workflow_action_service.rb
1033
+ - app/services/curation_concerns/workflow/workflow_by_model_name_strategy.rb
1034
+ - app/services/curation_concerns/workflow/workflow_factory.rb
1035
+ - app/services/curation_concerns/workflow/workflow_importer.rb
1036
+ - app/services/curation_concerns/workflow/workflow_permissions_generator.rb
1037
+ - app/services/curation_concerns/workflow/workflow_schema.rb
883
1038
  - app/services/curation_concerns/working_directory.rb
884
1039
  - app/services/resource_types_service.rb
885
1040
  - app/services/rights_service.rb
1041
+ - app/services/sipity.rb
1042
+ - app/sources/curation_concerns/resource_statistics_source.rb
886
1043
  - app/validators/has_one_title_validator.rb
1044
+ - app/values/curation_concerns/chart_data.rb
887
1045
  - app/views/batch_select/_add_button.html.erb
888
1046
  - app/views/batch_select/_check_all.html.erb
889
1047
  - app/views/batch_select/_tools.html.erb
@@ -937,6 +1095,16 @@ files:
937
1095
  - app/views/collections/index.html.erb
938
1096
  - app/views/collections/new.html.erb
939
1097
  - app/views/collections/show.html.erb
1098
+ - app/views/curation_concerns/admin/_admin_menu.html.erb
1099
+ - app/views/curation_concerns/admin/_resource_stats.html.erb
1100
+ - app/views/curation_concerns/admin/_sidebar.html.erb
1101
+ - app/views/curation_concerns/admin/_total_embargo_visibility.html.erb
1102
+ - app/views/curation_concerns/admin/_total_objects.html.erb
1103
+ - app/views/curation_concerns/admin/_total_objects_charts.html.erb
1104
+ - app/views/curation_concerns/admin/index.html.erb
1105
+ - app/views/curation_concerns/admin/widgets/_pie.html.erb
1106
+ - app/views/curation_concerns/admin/workflow.html.erb
1107
+ - app/views/curation_concerns/admin/workflow_roles/index.html.erb
940
1108
  - app/views/curation_concerns/base/_actions.html.erb
941
1109
  - app/views/curation_concerns/base/_attribute_rows.html.erb
942
1110
  - app/views/curation_concerns/base/_attributes.html.erb
@@ -972,6 +1140,7 @@ files:
972
1140
  - app/views/curation_concerns/base/_representative_media.html.erb
973
1141
  - app/views/curation_concerns/base/_show_actions.html.erb
974
1142
  - app/views/curation_concerns/base/_versioning.html.erb
1143
+ - app/views/curation_concerns/base/_workflow_actions.html.erb
975
1144
  - app/views/curation_concerns/base/edit.html.erb
976
1145
  - app/views/curation_concerns/base/file_manager.html.erb
977
1146
  - app/views/curation_concerns/base/new.html.erb
@@ -1013,6 +1182,8 @@ files:
1013
1182
  - app/views/embargoes/_list_expired_active_embargoes.html.erb
1014
1183
  - app/views/embargoes/edit.html.erb
1015
1184
  - app/views/embargoes/index.html.erb
1185
+ - app/views/layouts/_head_tag_content.html.erb
1186
+ - app/views/layouts/admin.html.erb
1016
1187
  - app/views/layouts/boilerplate.html.erb
1017
1188
  - app/views/layouts/curation_concerns.html.erb
1018
1189
  - app/views/layouts/curation_concerns/1_column.html.erb
@@ -1038,6 +1209,7 @@ files:
1038
1209
  - app/views/shared/_site_search.html.erb
1039
1210
  - app/views/shared/_title_bar.html.erb
1040
1211
  - app/views/welcome/index.html.erb
1212
+ - config/initializers/precompile_assets.rb
1041
1213
  - config/initializers/simple_form.rb
1042
1214
  - config/locales/curation_concerns.en.yml
1043
1215
  - config/routes.rb
@@ -1046,6 +1218,8 @@ files:
1046
1218
  - db/migrate/20160328222153_create_checksum_audit_logs.rb
1047
1219
  - db/migrate/20160328222154_create_single_use_links.rb
1048
1220
  - db/migrate/20160427155928_create_operations.rb
1221
+ - db/migrate/20160919151348_create_sipity.rb
1222
+ - db/migrate/20161012182404_create_sipity_workflow_methods.rb
1049
1223
  - lib/curation_concerns.rb
1050
1224
  - lib/curation_concerns/callbacks.rb
1051
1225
  - lib/curation_concerns/callbacks/registry.rb
@@ -1061,11 +1235,14 @@ files:
1061
1235
  - lib/curation_concerns/single_use_error.rb
1062
1236
  - lib/curation_concerns/spec_support.rb
1063
1237
  - lib/curation_concerns/version.rb
1238
+ - lib/generators/curation_concerns/admin_dashboard_generator.rb
1064
1239
  - lib/generators/curation_concerns/assets_generator.rb
1065
1240
  - lib/generators/curation_concerns/clamav_generator.rb
1066
1241
  - lib/generators/curation_concerns/collection_generator.rb
1067
1242
  - lib/generators/curation_concerns/install_generator.rb
1068
1243
  - lib/generators/curation_concerns/models_generator.rb
1244
+ - lib/generators/curation_concerns/sample_data_generator.rb
1245
+ - lib/generators/curation_concerns/templates/app/controllers/curation_concerns/admin_controller.rb
1069
1246
  - lib/generators/curation_concerns/templates/app/models/collection.rb
1070
1247
  - lib/generators/curation_concerns/templates/app/models/file_set.rb
1071
1248
  - lib/generators/curation_concerns/templates/catalog_controller.rb
@@ -1082,8 +1259,10 @@ files:
1082
1259
  - lib/generators/curation_concerns/templates/curation_concerns.js
1083
1260
  - lib/generators/curation_concerns/templates/curation_concerns.scss
1084
1261
  - lib/generators/curation_concerns/templates/curation_concerns_helper.rb
1262
+ - lib/generators/curation_concerns/templates/db/seeds.rb
1085
1263
  - lib/generators/curation_concerns/templates/spec/models/collection_spec.rb
1086
1264
  - lib/generators/curation_concerns/templates/spec/models/file_set_spec.rb
1265
+ - lib/generators/curation_concerns/templates/workflow.json.erb
1087
1266
  - lib/generators/curation_concerns/work/USAGE
1088
1267
  - lib/generators/curation_concerns/work/templates/README
1089
1268
  - lib/generators/curation_concerns/work/templates/actor.rb.erb
@@ -1114,6 +1293,7 @@ files:
1114
1293
  - solr/config/xslt/example_atom.xsl
1115
1294
  - solr/config/xslt/example_rss.xsl
1116
1295
  - solr/config/xslt/luke.xsl
1296
+ - spec/abilities/admin_ability_spec.rb
1117
1297
  - spec/abilities/admin_set_abilities_spec.rb
1118
1298
  - spec/abilities/collection_abilities_spec.rb
1119
1299
  - spec/abilities/embargo_and_lease_ability_spec.rb
@@ -1125,11 +1305,16 @@ files:
1125
1305
  - spec/actors/curation_concerns/embargo_actor_spec.rb
1126
1306
  - spec/actors/curation_concerns/file_actor_spec.rb
1127
1307
  - spec/actors/curation_concerns/file_set_actor_spec.rb
1308
+ - spec/actors/curation_concerns/grant_edit_to_depositor_actor_spec.rb
1309
+ - spec/actors/curation_concerns/initialize_workflow_actor_spec.rb
1128
1310
  - spec/actors/curation_concerns/interpret_visibility_actor_spec.rb
1129
1311
  - spec/actors/curation_concerns/lease_actor_spec.rb
1130
1312
  - spec/actors/curation_concerns/work_actor_spec.rb
1131
1313
  - spec/controllers/accepts_batches_controller_spec.rb
1132
1314
  - spec/controllers/catalog_controller_spec.rb
1315
+ - spec/controllers/curation_concerns/acts_as_admin_controller_spec.rb
1316
+ - spec/controllers/curation_concerns/admin/workflow_roles_controller_spec.rb
1317
+ - spec/controllers/curation_concerns/admin_controller_spec.rb
1133
1318
  - spec/controllers/curation_concerns/classify_concerns_controller_spec.rb
1134
1319
  - spec/controllers/curation_concerns/collections_controller_spec.rb
1135
1320
  - spec/controllers/curation_concerns/file_sets_controller_json_spec.rb
@@ -1140,11 +1325,20 @@ files:
1140
1325
  - spec/controllers/curation_concerns/permissions_controller_spec.rb
1141
1326
  - spec/controllers/curation_concerns/single_use_links_controller_spec.rb
1142
1327
  - spec/controllers/curation_concerns/single_use_links_viewer_controller_spec.rb
1328
+ - spec/controllers/curation_concerns/workflow_actions_controller_spec.rb
1143
1329
  - spec/controllers/downloads_controller_spec.rb
1144
1330
  - spec/controllers/embargoes_controller_spec.rb
1145
1331
  - spec/controllers/leases_controller_spec.rb
1146
1332
  - spec/controllers/selects_collections_controller_spec.rb
1147
1333
  - spec/controllers/welcome_controller_spec.rb
1334
+ - spec/conversions/power_converters/polymorphic_type_spec.rb
1335
+ - spec/conversions/power_converters/sipity_action_name_spec.rb
1336
+ - spec/conversions/power_converters/sipity_action_spec.rb
1337
+ - spec/conversions/power_converters/sipity_agent_spec.rb
1338
+ - spec/conversions/power_converters/sipity_entity_spec.rb
1339
+ - spec/conversions/power_converters/sipity_role_spec.rb
1340
+ - spec/conversions/power_converters/sipity_workflow_id_spec.rb
1341
+ - spec/conversions/power_converters/sipity_workflow_state_spec.rb
1148
1342
  - spec/factories/admin_sets.rb
1149
1343
  - spec/factories/collections.rb
1150
1344
  - spec/factories/create_curation_concern.rb
@@ -1152,8 +1346,13 @@ files:
1152
1346
  - spec/factories/generic_works.rb
1153
1347
  - spec/factories/operations.rb
1154
1348
  - spec/factories/single_use_links.rb
1349
+ - spec/factories/sipity_entities.rb
1155
1350
  - spec/factories/users.rb
1351
+ - spec/factories/workflow_actions.rb
1352
+ - spec/factories/workflow_states.rb
1353
+ - spec/factories/workflows.rb
1156
1354
  - spec/features/add_file_spec.rb
1355
+ - spec/features/admin_spec.rb
1157
1356
  - spec/features/catalog_search_spec.rb
1158
1357
  - spec/features/collection_spec.rb
1159
1358
  - spec/features/create_child_work_spec.rb
@@ -1162,12 +1361,16 @@ files:
1162
1361
  - spec/features/lease_spec.rb
1163
1362
  - spec/features/update_file_spec.rb
1164
1363
  - spec/features/work_generator_spec.rb
1364
+ - spec/features/workflow_roles_spec.rb
1165
1365
  - spec/forms/collection_edit_form_spec.rb
1366
+ - spec/forms/curation_concerns/forms/workflow_action_form_spec.rb
1367
+ - spec/forms/curation_concerns/forms/workflow_responsibility_form_spec.rb
1166
1368
  - spec/forms/file_set_edit_form_spec.rb
1167
1369
  - spec/forms/work_form_spec.rb
1168
1370
  - spec/helpers/catalog_helper_spec.rb
1169
1371
  - spec/helpers/configuration_helper_spec.rb
1170
1372
  - spec/helpers/curation_concerns/ability_helper_spec.rb
1373
+ - spec/helpers/curation_concerns/charts_helper_spec.rb
1171
1374
  - spec/helpers/curation_concerns/collections_helper_spec.rb
1172
1375
  - spec/helpers/curation_concerns/file_set_helper_spec.rb
1173
1376
  - spec/helpers/render_constraints_helper_spec.rb
@@ -1177,9 +1380,11 @@ files:
1177
1380
  - spec/indexers/work_indexer_spec.rb
1178
1381
  - spec/inputs/multi_value_with_help_input_spec.rb
1179
1382
  - spec/inputs/multifile_input_spec.rb
1383
+ - spec/javascripts/charts_spec.coffee
1180
1384
  - spec/javascripts/file_manager_member_spec.coffee
1181
1385
  - spec/javascripts/file_manager_sorting_spec.coffee
1182
1386
  - spec/javascripts/fixtures/.gitkeep
1387
+ - spec/javascripts/fixtures/chart_example.html
1183
1388
  - spec/javascripts/fixtures/file_manager_member.html
1184
1389
  - spec/javascripts/fixtures/save_button.html
1185
1390
  - spec/javascripts/fixtures/sortable.html
@@ -1195,6 +1400,7 @@ files:
1195
1400
  - spec/jobs/audit_job_spec.rb
1196
1401
  - spec/jobs/characterize_job_spec.rb
1197
1402
  - spec/jobs/create_derivatives_job_spec.rb
1403
+ - spec/jobs/import_export_job_spec.rb
1198
1404
  - spec/jobs/import_url_job_spec.rb
1199
1405
  - spec/jobs/ingest_file_job_spec.rb
1200
1406
  - spec/jobs/ingest_local_file_job_spec.rb
@@ -1215,12 +1421,28 @@ files:
1215
1421
  - spec/models/curation_concerns/collection_behavior_spec.rb
1216
1422
  - spec/models/curation_concerns/file_set/characterization_spec.rb
1217
1423
  - spec/models/curation_concerns/file_set/derivatives_spec.rb
1424
+ - spec/models/curation_concerns/group_spec.rb
1218
1425
  - spec/models/curation_concerns/operation_spec.rb
1219
1426
  - spec/models/curation_concerns/work_behavior_spec.rb
1220
1427
  - spec/models/file_set_spec.rb
1221
1428
  - spec/models/generic_work_spec.rb
1222
1429
  - spec/models/quick_classification_query_spec.rb
1223
1430
  - spec/models/single_use_link_spec.rb
1431
+ - spec/models/sipity/agent_spec.rb
1432
+ - spec/models/sipity/comment_spec.rb
1433
+ - spec/models/sipity/entity_spec.rb
1434
+ - spec/models/sipity/entity_specific_responsibility_spec.rb
1435
+ - spec/models/sipity/notifiable_context_spec.rb
1436
+ - spec/models/sipity/notification_recipient_spec.rb
1437
+ - spec/models/sipity/notification_spec.rb
1438
+ - spec/models/sipity/role_spec.rb
1439
+ - spec/models/sipity/workflow_action_spec.rb
1440
+ - spec/models/sipity/workflow_responsibility_spec.rb
1441
+ - spec/models/sipity/workflow_role_spec.rb
1442
+ - spec/models/sipity/workflow_spec.rb
1443
+ - spec/models/sipity/workflow_state_action_permission_spec.rb
1444
+ - spec/models/sipity/workflow_state_action_spec.rb
1445
+ - spec/models/sipity/workflow_state_spec.rb
1224
1446
  - spec/models/solr_document_spec.rb
1225
1447
  - spec/models/user_spec.rb
1226
1448
  - spec/presenters/curation_concerns/collection_presenter_spec.rb
@@ -1231,6 +1453,7 @@ files:
1231
1453
  - spec/presenters/curation_concerns/version_list_presenter_spec.rb
1232
1454
  - spec/presenters/curation_concerns/version_presenter_spec.rb
1233
1455
  - spec/presenters/curation_concerns/work_show_presenter_spec.rb
1456
+ - spec/presenters/curation_concerns/workflow_presenter_spec.rb
1234
1457
  - spec/presenters/embargo_presenter_spec.rb
1235
1458
  - spec/presenters/lease_presenter_spec.rb
1236
1459
  - spec/renderers/curation_concerns/renderers/attribute_renderer_spec.rb
@@ -1251,7 +1474,24 @@ files:
1251
1474
  - spec/services/curation_concerns/admin_set_service_spec.rb
1252
1475
  - spec/services/curation_concerns/collections_service_spec.rb
1253
1476
  - spec/services/curation_concerns/license_service_spec.rb
1477
+ - spec/services/curation_concerns/qa_select_service_spec.rb
1254
1478
  - spec/services/curation_concerns/rights_statements_spec.rb
1479
+ - spec/services/curation_concerns/workflow/action_taken_service_spec.rb
1480
+ - spec/services/curation_concerns/workflow/activate_object_spec.rb
1481
+ - spec/services/curation_concerns/workflow/deactivate_object_spec.rb
1482
+ - spec/services/curation_concerns/workflow/method_generator_spec.rb
1483
+ - spec/services/curation_concerns/workflow/notification_configuration_parameter_spec.rb
1484
+ - spec/services/curation_concerns/workflow/notification_generator_spec.rb
1485
+ - spec/services/curation_concerns/workflow/notification_service_spec.rb
1486
+ - spec/services/curation_concerns/workflow/permission_generator_spec.rb
1487
+ - spec/services/curation_concerns/workflow/permission_query_spec.rb
1488
+ - spec/services/curation_concerns/workflow/remove_depositor_permissions_spec.rb
1489
+ - spec/services/curation_concerns/workflow/sipity_actions_generator_spec.rb
1490
+ - spec/services/curation_concerns/workflow/state_machine_generator_spec.rb
1491
+ - spec/services/curation_concerns/workflow/status_list_service_spec.rb
1492
+ - spec/services/curation_concerns/workflow/workflow_importer_spec.rb
1493
+ - spec/services/curation_concerns/workflow/workflow_permissions_generator_spec.rb
1494
+ - spec/services/curation_concerns/workflow/workflow_schema_spec.rb
1255
1495
  - spec/services/derivative_path_spec.rb
1256
1496
  - spec/services/embargo_service_spec.rb
1257
1497
  - spec/services/file_set_audit_service_spec.rb
@@ -1265,6 +1505,7 @@ files:
1265
1505
  - spec/services/rights_service_spec.rb
1266
1506
  - spec/services/thumbnail_path_service_spec.rb
1267
1507
  - spec/services/versioning_service_spec.rb
1508
+ - spec/sources/curation_concerns/resource_statistics_source_spec.rb
1268
1509
  - spec/spec_helper.rb
1269
1510
  - spec/support/backport_test.rb
1270
1511
  - spec/support/controllers/engine_helpers.rb
@@ -1285,6 +1526,11 @@ files:
1285
1526
  - spec/views/catalog/_action_menu_partials/_default.html.erb_spec.rb
1286
1527
  - spec/views/catalog/index.html.erb_spec.rb
1287
1528
  - spec/views/collections/_sort_and_per_page.html.erb_spec.rb
1529
+ - spec/views/curation_concerns/admin/_admin_menu.html.erb_spec.rb
1530
+ - spec/views/curation_concerns/admin/_resource_stats.html.erb_spec.rb
1531
+ - spec/views/curation_concerns/admin/_total_objects_charts.html.erb_spec.rb
1532
+ - spec/views/curation_concerns/admin/index.html.erb_spec.rb
1533
+ - spec/views/curation_concerns/admin/widgets/_pie.html.erb_spec.rb
1288
1534
  - spec/views/curation_concerns/base/_attributes.html.erb_spec.rb
1289
1535
  - spec/views/curation_concerns/base/_form_rights_spec.rb
1290
1536
  - spec/views/curation_concerns/base/_member.html.erb_spec.rb
@@ -1303,6 +1549,7 @@ files:
1303
1549
  - spec/views/single_use_links_viewer/show.html.erb_spec.rb
1304
1550
  - spec/views/single_use_links_viewer/single_use_error.html.erb_spec.rb
1305
1551
  - tasks/jasmine.rake
1552
+ - tasks/workflow.rake
1306
1553
  - vendor/assets/images/ui-bg_glass_100_fdf5ce_1x400.png
1307
1554
  - vendor/assets/images/ui-bg_highlight-soft_100_eeeeee_1x100.png
1308
1555
  - vendor/assets/javascripts/fileupload/jquery.fileupload-process.js
@@ -1326,9 +1573,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
1326
1573
  version: '0'
1327
1574
  required_rubygems_version: !ruby/object:Gem::Requirement
1328
1575
  requirements:
1329
- - - ">="
1576
+ - - ">"
1330
1577
  - !ruby/object:Gem::Version
1331
- version: '0'
1578
+ version: 1.3.1
1332
1579
  requirements: []
1333
1580
  rubyforge_project:
1334
1581
  rubygems_version: 2.5.1
@@ -1337,6 +1584,7 @@ specification_version: 4
1337
1584
  summary: A Rails Engine that allows an application to CRUD CurationConcern objects
1338
1585
  (a.k.a. "Works")
1339
1586
  test_files:
1587
+ - spec/abilities/admin_ability_spec.rb
1340
1588
  - spec/abilities/admin_set_abilities_spec.rb
1341
1589
  - spec/abilities/collection_abilities_spec.rb
1342
1590
  - spec/abilities/embargo_and_lease_ability_spec.rb
@@ -1348,11 +1596,16 @@ test_files:
1348
1596
  - spec/actors/curation_concerns/embargo_actor_spec.rb
1349
1597
  - spec/actors/curation_concerns/file_actor_spec.rb
1350
1598
  - spec/actors/curation_concerns/file_set_actor_spec.rb
1599
+ - spec/actors/curation_concerns/grant_edit_to_depositor_actor_spec.rb
1600
+ - spec/actors/curation_concerns/initialize_workflow_actor_spec.rb
1351
1601
  - spec/actors/curation_concerns/interpret_visibility_actor_spec.rb
1352
1602
  - spec/actors/curation_concerns/lease_actor_spec.rb
1353
1603
  - spec/actors/curation_concerns/work_actor_spec.rb
1354
1604
  - spec/controllers/accepts_batches_controller_spec.rb
1355
1605
  - spec/controllers/catalog_controller_spec.rb
1606
+ - spec/controllers/curation_concerns/acts_as_admin_controller_spec.rb
1607
+ - spec/controllers/curation_concerns/admin/workflow_roles_controller_spec.rb
1608
+ - spec/controllers/curation_concerns/admin_controller_spec.rb
1356
1609
  - spec/controllers/curation_concerns/classify_concerns_controller_spec.rb
1357
1610
  - spec/controllers/curation_concerns/collections_controller_spec.rb
1358
1611
  - spec/controllers/curation_concerns/file_sets_controller_json_spec.rb
@@ -1363,11 +1616,20 @@ test_files:
1363
1616
  - spec/controllers/curation_concerns/permissions_controller_spec.rb
1364
1617
  - spec/controllers/curation_concerns/single_use_links_controller_spec.rb
1365
1618
  - spec/controllers/curation_concerns/single_use_links_viewer_controller_spec.rb
1619
+ - spec/controllers/curation_concerns/workflow_actions_controller_spec.rb
1366
1620
  - spec/controllers/downloads_controller_spec.rb
1367
1621
  - spec/controllers/embargoes_controller_spec.rb
1368
1622
  - spec/controllers/leases_controller_spec.rb
1369
1623
  - spec/controllers/selects_collections_controller_spec.rb
1370
1624
  - spec/controllers/welcome_controller_spec.rb
1625
+ - spec/conversions/power_converters/polymorphic_type_spec.rb
1626
+ - spec/conversions/power_converters/sipity_action_name_spec.rb
1627
+ - spec/conversions/power_converters/sipity_action_spec.rb
1628
+ - spec/conversions/power_converters/sipity_agent_spec.rb
1629
+ - spec/conversions/power_converters/sipity_entity_spec.rb
1630
+ - spec/conversions/power_converters/sipity_role_spec.rb
1631
+ - spec/conversions/power_converters/sipity_workflow_id_spec.rb
1632
+ - spec/conversions/power_converters/sipity_workflow_state_spec.rb
1371
1633
  - spec/factories/admin_sets.rb
1372
1634
  - spec/factories/collections.rb
1373
1635
  - spec/factories/create_curation_concern.rb
@@ -1375,8 +1637,13 @@ test_files:
1375
1637
  - spec/factories/generic_works.rb
1376
1638
  - spec/factories/operations.rb
1377
1639
  - spec/factories/single_use_links.rb
1640
+ - spec/factories/sipity_entities.rb
1378
1641
  - spec/factories/users.rb
1642
+ - spec/factories/workflow_actions.rb
1643
+ - spec/factories/workflow_states.rb
1644
+ - spec/factories/workflows.rb
1379
1645
  - spec/features/add_file_spec.rb
1646
+ - spec/features/admin_spec.rb
1380
1647
  - spec/features/catalog_search_spec.rb
1381
1648
  - spec/features/collection_spec.rb
1382
1649
  - spec/features/create_child_work_spec.rb
@@ -1385,12 +1652,16 @@ test_files:
1385
1652
  - spec/features/lease_spec.rb
1386
1653
  - spec/features/update_file_spec.rb
1387
1654
  - spec/features/work_generator_spec.rb
1655
+ - spec/features/workflow_roles_spec.rb
1388
1656
  - spec/forms/collection_edit_form_spec.rb
1657
+ - spec/forms/curation_concerns/forms/workflow_action_form_spec.rb
1658
+ - spec/forms/curation_concerns/forms/workflow_responsibility_form_spec.rb
1389
1659
  - spec/forms/file_set_edit_form_spec.rb
1390
1660
  - spec/forms/work_form_spec.rb
1391
1661
  - spec/helpers/catalog_helper_spec.rb
1392
1662
  - spec/helpers/configuration_helper_spec.rb
1393
1663
  - spec/helpers/curation_concerns/ability_helper_spec.rb
1664
+ - spec/helpers/curation_concerns/charts_helper_spec.rb
1394
1665
  - spec/helpers/curation_concerns/collections_helper_spec.rb
1395
1666
  - spec/helpers/curation_concerns/file_set_helper_spec.rb
1396
1667
  - spec/helpers/render_constraints_helper_spec.rb
@@ -1400,9 +1671,11 @@ test_files:
1400
1671
  - spec/indexers/work_indexer_spec.rb
1401
1672
  - spec/inputs/multi_value_with_help_input_spec.rb
1402
1673
  - spec/inputs/multifile_input_spec.rb
1674
+ - spec/javascripts/charts_spec.coffee
1403
1675
  - spec/javascripts/file_manager_member_spec.coffee
1404
1676
  - spec/javascripts/file_manager_sorting_spec.coffee
1405
1677
  - spec/javascripts/fixtures/.gitkeep
1678
+ - spec/javascripts/fixtures/chart_example.html
1406
1679
  - spec/javascripts/fixtures/file_manager_member.html
1407
1680
  - spec/javascripts/fixtures/save_button.html
1408
1681
  - spec/javascripts/fixtures/sortable.html
@@ -1418,6 +1691,7 @@ test_files:
1418
1691
  - spec/jobs/audit_job_spec.rb
1419
1692
  - spec/jobs/characterize_job_spec.rb
1420
1693
  - spec/jobs/create_derivatives_job_spec.rb
1694
+ - spec/jobs/import_export_job_spec.rb
1421
1695
  - spec/jobs/import_url_job_spec.rb
1422
1696
  - spec/jobs/ingest_file_job_spec.rb
1423
1697
  - spec/jobs/ingest_local_file_job_spec.rb
@@ -1438,12 +1712,28 @@ test_files:
1438
1712
  - spec/models/curation_concerns/collection_behavior_spec.rb
1439
1713
  - spec/models/curation_concerns/file_set/characterization_spec.rb
1440
1714
  - spec/models/curation_concerns/file_set/derivatives_spec.rb
1715
+ - spec/models/curation_concerns/group_spec.rb
1441
1716
  - spec/models/curation_concerns/operation_spec.rb
1442
1717
  - spec/models/curation_concerns/work_behavior_spec.rb
1443
1718
  - spec/models/file_set_spec.rb
1444
1719
  - spec/models/generic_work_spec.rb
1445
1720
  - spec/models/quick_classification_query_spec.rb
1446
1721
  - spec/models/single_use_link_spec.rb
1722
+ - spec/models/sipity/agent_spec.rb
1723
+ - spec/models/sipity/comment_spec.rb
1724
+ - spec/models/sipity/entity_spec.rb
1725
+ - spec/models/sipity/entity_specific_responsibility_spec.rb
1726
+ - spec/models/sipity/notifiable_context_spec.rb
1727
+ - spec/models/sipity/notification_recipient_spec.rb
1728
+ - spec/models/sipity/notification_spec.rb
1729
+ - spec/models/sipity/role_spec.rb
1730
+ - spec/models/sipity/workflow_action_spec.rb
1731
+ - spec/models/sipity/workflow_responsibility_spec.rb
1732
+ - spec/models/sipity/workflow_role_spec.rb
1733
+ - spec/models/sipity/workflow_spec.rb
1734
+ - spec/models/sipity/workflow_state_action_permission_spec.rb
1735
+ - spec/models/sipity/workflow_state_action_spec.rb
1736
+ - spec/models/sipity/workflow_state_spec.rb
1447
1737
  - spec/models/solr_document_spec.rb
1448
1738
  - spec/models/user_spec.rb
1449
1739
  - spec/presenters/curation_concerns/collection_presenter_spec.rb
@@ -1454,6 +1744,7 @@ test_files:
1454
1744
  - spec/presenters/curation_concerns/version_list_presenter_spec.rb
1455
1745
  - spec/presenters/curation_concerns/version_presenter_spec.rb
1456
1746
  - spec/presenters/curation_concerns/work_show_presenter_spec.rb
1747
+ - spec/presenters/curation_concerns/workflow_presenter_spec.rb
1457
1748
  - spec/presenters/embargo_presenter_spec.rb
1458
1749
  - spec/presenters/lease_presenter_spec.rb
1459
1750
  - spec/renderers/curation_concerns/renderers/attribute_renderer_spec.rb
@@ -1474,7 +1765,24 @@ test_files:
1474
1765
  - spec/services/curation_concerns/admin_set_service_spec.rb
1475
1766
  - spec/services/curation_concerns/collections_service_spec.rb
1476
1767
  - spec/services/curation_concerns/license_service_spec.rb
1768
+ - spec/services/curation_concerns/qa_select_service_spec.rb
1477
1769
  - spec/services/curation_concerns/rights_statements_spec.rb
1770
+ - spec/services/curation_concerns/workflow/action_taken_service_spec.rb
1771
+ - spec/services/curation_concerns/workflow/activate_object_spec.rb
1772
+ - spec/services/curation_concerns/workflow/deactivate_object_spec.rb
1773
+ - spec/services/curation_concerns/workflow/method_generator_spec.rb
1774
+ - spec/services/curation_concerns/workflow/notification_configuration_parameter_spec.rb
1775
+ - spec/services/curation_concerns/workflow/notification_generator_spec.rb
1776
+ - spec/services/curation_concerns/workflow/notification_service_spec.rb
1777
+ - spec/services/curation_concerns/workflow/permission_generator_spec.rb
1778
+ - spec/services/curation_concerns/workflow/permission_query_spec.rb
1779
+ - spec/services/curation_concerns/workflow/remove_depositor_permissions_spec.rb
1780
+ - spec/services/curation_concerns/workflow/sipity_actions_generator_spec.rb
1781
+ - spec/services/curation_concerns/workflow/state_machine_generator_spec.rb
1782
+ - spec/services/curation_concerns/workflow/status_list_service_spec.rb
1783
+ - spec/services/curation_concerns/workflow/workflow_importer_spec.rb
1784
+ - spec/services/curation_concerns/workflow/workflow_permissions_generator_spec.rb
1785
+ - spec/services/curation_concerns/workflow/workflow_schema_spec.rb
1478
1786
  - spec/services/derivative_path_spec.rb
1479
1787
  - spec/services/embargo_service_spec.rb
1480
1788
  - spec/services/file_set_audit_service_spec.rb
@@ -1488,6 +1796,7 @@ test_files:
1488
1796
  - spec/services/rights_service_spec.rb
1489
1797
  - spec/services/thumbnail_path_service_spec.rb
1490
1798
  - spec/services/versioning_service_spec.rb
1799
+ - spec/sources/curation_concerns/resource_statistics_source_spec.rb
1491
1800
  - spec/spec_helper.rb
1492
1801
  - spec/support/backport_test.rb
1493
1802
  - spec/support/controllers/engine_helpers.rb
@@ -1508,6 +1817,11 @@ test_files:
1508
1817
  - spec/views/catalog/_action_menu_partials/_default.html.erb_spec.rb
1509
1818
  - spec/views/catalog/index.html.erb_spec.rb
1510
1819
  - spec/views/collections/_sort_and_per_page.html.erb_spec.rb
1820
+ - spec/views/curation_concerns/admin/_admin_menu.html.erb_spec.rb
1821
+ - spec/views/curation_concerns/admin/_resource_stats.html.erb_spec.rb
1822
+ - spec/views/curation_concerns/admin/_total_objects_charts.html.erb_spec.rb
1823
+ - spec/views/curation_concerns/admin/index.html.erb_spec.rb
1824
+ - spec/views/curation_concerns/admin/widgets/_pie.html.erb_spec.rb
1511
1825
  - spec/views/curation_concerns/base/_attributes.html.erb_spec.rb
1512
1826
  - spec/views/curation_concerns/base/_form_rights_spec.rb
1513
1827
  - spec/views/curation_concerns/base/_member.html.erb_spec.rb