hydra-head 4.1.3 → 5.0.0.pre1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (412) hide show
  1. metadata +28 -617
  2. data/.gitignore +0 -73
  3. data/.gitmodules +0 -4
  4. data/Gemfile +0 -14
  5. data/HISTORY.textile +0 -99
  6. data/INSTALL_PREREQ.textile +0 -3
  7. data/LICENSE +0 -14
  8. data/README.textile +0 -129
  9. data/Rakefile +0 -5
  10. data/app/assets/images/hydra/powered_by_hydra.png +0 -0
  11. data/app/assets/images/hydra/search-button.png +0 -0
  12. data/app/assets/javascripts/date-picker/booking/index.html +0 -368
  13. data/app/assets/javascripts/date-picker/calendarHTML.txt +0 -84
  14. data/app/assets/javascripts/date-picker/css/datepicker.css +0 -511
  15. data/app/assets/javascripts/date-picker/css/demo.css +0 -229
  16. data/app/assets/javascripts/date-picker/index.html +0 -798
  17. data/app/assets/javascripts/date-picker/js/datepicker.js +0 -2898
  18. data/app/assets/javascripts/date-picker/js/datepicker.packed.js +0 -1
  19. data/app/assets/javascripts/date-picker/js/lang/ar.js +0 -9
  20. data/app/assets/javascripts/date-picker/js/lang/cs.js +0 -9
  21. data/app/assets/javascripts/date-picker/js/lang/da.js +0 -10
  22. data/app/assets/javascripts/date-picker/js/lang/de.js +0 -10
  23. data/app/assets/javascripts/date-picker/js/lang/en.js +0 -9
  24. data/app/assets/javascripts/date-picker/js/lang/eo.js +0 -13
  25. data/app/assets/javascripts/date-picker/js/lang/es.js +0 -9
  26. data/app/assets/javascripts/date-picker/js/lang/et.js +0 -23
  27. data/app/assets/javascripts/date-picker/js/lang/fi.js +0 -7
  28. data/app/assets/javascripts/date-picker/js/lang/fr.js +0 -69
  29. data/app/assets/javascripts/date-picker/js/lang/he.js +0 -9
  30. data/app/assets/javascripts/date-picker/js/lang/hu.js +0 -9
  31. data/app/assets/javascripts/date-picker/js/lang/id.js +0 -9
  32. data/app/assets/javascripts/date-picker/js/lang/it.js +0 -11
  33. data/app/assets/javascripts/date-picker/js/lang/kr.js +0 -9
  34. data/app/assets/javascripts/date-picker/js/lang/lt.js +0 -8
  35. data/app/assets/javascripts/date-picker/js/lang/lv.js +0 -9
  36. data/app/assets/javascripts/date-picker/js/lang/nl.js +0 -9
  37. data/app/assets/javascripts/date-picker/js/lang/no.js +0 -9
  38. data/app/assets/javascripts/date-picker/js/lang/pl.js +0 -10
  39. data/app/assets/javascripts/date-picker/js/lang/pt-br.js +0 -11
  40. data/app/assets/javascripts/date-picker/js/lang/pt.js +0 -9
  41. data/app/assets/javascripts/date-picker/js/lang/ru.js +0 -11
  42. data/app/assets/javascripts/date-picker/js/lang/se.js +0 -9
  43. data/app/assets/javascripts/date-picker/js/lang/si.js +0 -9
  44. data/app/assets/javascripts/date-picker/js/lang/tr.js +0 -9
  45. data/app/assets/javascripts/date-picker/language/index.html +0 -240
  46. data/app/assets/javascripts/date-picker/media/Thumbs.db +0 -0
  47. data/app/assets/javascripts/date-picker/media/backstripes.gif +0 -0
  48. data/app/assets/javascripts/date-picker/media/bg_header.jpg +0 -0
  49. data/app/assets/javascripts/date-picker/media/bullet1.gif +0 -0
  50. data/app/assets/javascripts/date-picker/media/bullet2.gif +0 -0
  51. data/app/assets/javascripts/date-picker/media/cal-grey.gif +0 -0
  52. data/app/assets/javascripts/date-picker/media/cal.gif +0 -0
  53. data/app/assets/javascripts/date-picker/media/gradient-e5e5e5-ffffff.gif +0 -0
  54. data/app/assets/javascripts/hydra/hydra-head.js +0 -195
  55. data/app/assets/javascripts/hydra/mediashelf.datepicker.js +0 -39
  56. data/app/assets/javascripts/hydra/mediashelf.placeholder.js +0 -67
  57. data/app/assets/javascripts/jquery.form.js +0 -1076
  58. data/app/assets/javascripts/jquery.ui.datepicker.js +0 -1793
  59. data/app/assets/javascripts/spin.min.js +0 -2
  60. data/app/assets/stylesheets/hydra/html_refactor.css +0 -79
  61. data/app/assets/stylesheets/hydra/hydrangea-split-button.css +0 -18
  62. data/app/assets/stylesheets/hydra/hydrangea.css +0 -288
  63. data/app/assets/stylesheets/hydra/ie-styles.css +0 -149
  64. data/app/assets/stylesheets/hydra/styles.css +0 -946
  65. data/app/assets/stylesheets/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  66. data/app/assets/stylesheets/redmond/images/ui-bg_flat_55_fbec88_40x100.png +0 -0
  67. data/app/assets/stylesheets/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png +0 -0
  68. data/app/assets/stylesheets/redmond/images/ui-bg_glass_85_dfeffc_1x400.png +0 -0
  69. data/app/assets/stylesheets/redmond/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  70. data/app/assets/stylesheets/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
  71. data/app/assets/stylesheets/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png +0 -0
  72. data/app/assets/stylesheets/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  73. data/app/assets/stylesheets/redmond/images/ui-icons_217bc0_256x240.png +0 -0
  74. data/app/assets/stylesheets/redmond/images/ui-icons_2e83ff_256x240.png +0 -0
  75. data/app/assets/stylesheets/redmond/images/ui-icons_469bdd_256x240.png +0 -0
  76. data/app/assets/stylesheets/redmond/images/ui-icons_6da8d5_256x240.png +0 -0
  77. data/app/assets/stylesheets/redmond/images/ui-icons_cd0a0a_256x240.png +0 -0
  78. data/app/assets/stylesheets/redmond/images/ui-icons_d8e7f3_256x240.png +0 -0
  79. data/app/assets/stylesheets/redmond/images/ui-icons_f9bd01_256x240.png +0 -0
  80. data/app/assets/stylesheets/redmond/jquery-ui-1.8.5.custom.css +0 -572
  81. data/app/controllers/downloads_controller.rb +0 -20
  82. data/app/controllers/hydra/application_controller.rb +0 -5
  83. data/app/controllers/hydra/assets_controller.rb +0 -12
  84. data/app/controllers/hydra/contributors_controller.rb +0 -115
  85. data/app/controllers/hydra/file_assets_controller.rb +0 -3
  86. data/app/controllers/hydra/permissions_controller.rb +0 -117
  87. data/app/controllers/user_sessions_controller.rb +0 -13
  88. data/app/helpers/application_helper.rb +0 -3
  89. data/app/helpers/article_metadata_helper.rb +0 -4
  90. data/app/helpers/blacklight_helper.rb +0 -4
  91. data/app/helpers/downloads_helper.rb +0 -4
  92. data/app/helpers/facets_helper.rb +0 -4
  93. data/app/helpers/generic_content_objects_helper.rb +0 -4
  94. data/app/helpers/hydra/application_helper_behavior.rb +0 -8
  95. data/app/helpers/hydra/article_metadata_helper_behavior.rb +0 -95
  96. data/app/helpers/hydra/blacklight_helper_behavior.rb +0 -128
  97. data/app/helpers/hydra/downloads_helper_behavior.rb +0 -24
  98. data/app/helpers/hydra/facets_helper_behavior.rb +0 -34
  99. data/app/helpers/hydra/generic_content_objects_helper_behavior.rb +0 -17
  100. data/app/helpers/hydra/hydra_assets_helper_behavior.rb +0 -76
  101. data/app/helpers/hydra/hydra_fedora_metadata_helper_behavior.rb +0 -379
  102. data/app/helpers/hydra/hydra_helper_behavior.rb +0 -195
  103. data/app/helpers/hydra/hydra_uploader_helper_behavior.rb +0 -23
  104. data/app/helpers/hydra/inline_editable_metadata_helper_behavior.rb +0 -21
  105. data/app/helpers/hydra/javascript_includes_helper_behavior.rb +0 -94
  106. data/app/helpers/hydra/personalization_helper_behavior.rb +0 -49
  107. data/app/helpers/hydra/release_process_helper_behavior.rb +0 -37
  108. data/app/helpers/hydra_assets_helper.rb +0 -4
  109. data/app/helpers/hydra_fedora_metadata_helper.rb +0 -4
  110. data/app/helpers/hydra_helper.rb +0 -4
  111. data/app/helpers/hydra_uploader_helper.rb +0 -4
  112. data/app/helpers/inline_editable_metadata_helper.rb +0 -4
  113. data/app/helpers/javascript_includes_helper.rb +0 -4
  114. data/app/helpers/personalization_helper.rb +0 -4
  115. data/app/helpers/release_process_helper.rb +0 -4
  116. data/app/models/file_asset.rb +0 -5
  117. data/app/models/generic_content.rb +0 -26
  118. data/app/models/generic_image.rb +0 -67
  119. data/app/models/hydra/datastream/properties.rb +0 -24
  120. data/app/models/mods_asset.rb +0 -24
  121. data/app/models/superuser.rb +0 -14
  122. data/app/models/user_attribute.rb +0 -37
  123. data/app/models/uses_default_partials.rb +0 -23
  124. data/app/views/_add_assets_links.html.erb +0 -14
  125. data/app/views/_flash_msg.html.erb +0 -5
  126. data/app/views/_user_util_links.html.erb +0 -31
  127. data/app/views/catalog/_citation.html.erb +0 -11
  128. data/app/views/catalog/_constraints_element.html.erb +0 -34
  129. data/app/views/catalog/_delete_partials/_default.html.erb +0 -22
  130. data/app/views/catalog/_document_list.html.erb +0 -11
  131. data/app/views/catalog/_edit_partials/_default.html.erb +0 -57
  132. data/app/views/catalog/_edit_partials/_default_details.html.erb +0 -13
  133. data/app/views/catalog/_facets.html.erb +0 -37
  134. data/app/views/catalog/_home.html.erb +0 -6
  135. data/app/views/catalog/_home_text.html.erb +0 -4
  136. data/app/views/catalog/_index_partials/_default.html.erb +0 -20
  137. data/app/views/catalog/_index_partials/_default_details.html.erb +0 -14
  138. data/app/views/catalog/_index_partials/_default_group.html.erb +0 -15
  139. data/app/views/catalog/_opensearch_response_metadata.html.erb +0 -2
  140. data/app/views/catalog/_show_partials/_default.html.erb +0 -21
  141. data/app/views/catalog/_show_partials/_default_details.html.erb +0 -15
  142. data/app/views/catalog/_show_partials/_facets.html.erb +0 -52
  143. data/app/views/catalog/_sms_form.html.erb +0 -21
  144. data/app/views/catalog/_sort_and_per_page.html.erb +0 -23
  145. data/app/views/catalog/_uva_tabs.html.erb +0 -10
  146. data/app/views/catalog/about.html.erb +0 -0
  147. data/app/views/catalog/show.html.erb +0 -40
  148. data/app/views/contributors/_add_contributor_split_button.html.erb +0 -10
  149. data/app/views/contributors/_edit_conference.html.erb +0 -29
  150. data/app/views/contributors/_edit_organization.html.erb +0 -29
  151. data/app/views/contributors/_edit_person.html.erb +0 -39
  152. data/app/views/contributors/_index.html.erb +0 -11
  153. data/app/views/contributors/_new.html.erb +0 -10
  154. data/app/views/contributors/_show_conference.html.erb +0 -12
  155. data/app/views/contributors/_show_organization.html.erb +0 -21
  156. data/app/views/contributors/_show_person.html.erb +0 -17
  157. data/app/views/contributors/new.html.erb +0 -14
  158. data/app/views/downloads/index.html.erb +0 -1
  159. data/app/views/generic_content_objects/_contributor_form.html.erb +0 -11
  160. data/app/views/generic_content_objects/_description_form.html.erb +0 -7
  161. data/app/views/generic_content_objects/_edit_description.html.erb +0 -23
  162. data/app/views/generic_content_objects/_new.html.erb +0 -0
  163. data/app/views/generic_content_objects/_show_description.html.erb +0 -41
  164. data/app/views/generic_contents/_edit.html.erb +0 -10
  165. data/app/views/generic_contents/_index.html.erb +0 -21
  166. data/app/views/generic_contents/_show.html.erb +0 -6
  167. data/app/views/generic_contents/_show_content.html.erb +0 -7
  168. data/app/views/generic_images/_edit.html.erb +0 -36
  169. data/app/views/generic_images/_index.html.erb +0 -24
  170. data/app/views/generic_images/_show.html.erb +0 -13
  171. data/app/views/generic_images/_show_all.html.erb +0 -14
  172. data/app/views/generic_images/_show_content.html.erb +0 -7
  173. data/app/views/hydra/file_assets/_asset_saved_flash.html.erb +0 -2
  174. data/app/views/hydra/file_assets/_deletable_result.html.erb +0 -5
  175. data/app/views/hydra/file_assets/_file_assets_form.html.erb +0 -11
  176. data/app/views/hydra/file_assets/_index.html.erb +0 -29
  177. data/app/views/hydra/file_assets/_new.html.erb +0 -6
  178. data/app/views/hydra/file_assets/_result.html.erb +0 -11
  179. data/app/views/hydra/file_assets/index.html.erb +0 -5
  180. data/app/views/hydra/permissions/_edit_person_permissions.html.erb +0 -30
  181. data/app/views/hydra/permissions/_index.html.erb +0 -46
  182. data/app/views/hydra/permissions/_new.html.erb +0 -14
  183. data/app/views/hydra/permissions/_permissions_form.html.erb +0 -23
  184. data/app/views/hydra/permissions/index.html.erb +0 -1
  185. data/app/views/hydra/permissions/new.html.erb +0 -1
  186. data/app/views/layouts/hydra-head.html.erb +0 -47
  187. data/app/views/mods_assets/_additional_info_form.html.erb +0 -44
  188. data/app/views/mods_assets/_contributor_form.html.erb +0 -14
  189. data/app/views/mods_assets/_edit.html.erb +0 -10
  190. data/app/views/mods_assets/_edit_description.html.erb +0 -73
  191. data/app/views/mods_assets/_edit_journal.html.erb +0 -57
  192. data/app/views/mods_assets/_index.html.erb +0 -1
  193. data/app/views/mods_assets/_index_list.html.erb +0 -37
  194. data/app/views/mods_assets/_index_table.html.erb +0 -7
  195. data/app/views/mods_assets/_progress_box.html.erb +0 -82
  196. data/app/views/mods_assets/_publication_form.html.erb +0 -13
  197. data/app/views/mods_assets/_show.html.erb +0 -39
  198. data/app/views/mods_assets/_show_additional_info.html.erb +0 -17
  199. data/app/views/mods_assets/_show_contributors.html.erb +0 -7
  200. data/app/views/mods_assets/_show_description.html.erb +0 -35
  201. data/app/views/mods_assets/_show_file_assets.html.erb +0 -22
  202. data/app/views/mods_assets/_show_journal.html.erb +0 -42
  203. data/app/views/mods_assets/_show_permissions.html.erb +0 -15
  204. data/app/views/mods_assets/_show_publication.html.erb +0 -8
  205. data/app/views/shared/_delete_asset_confirmation.html.erb +0 -17
  206. data/app/views/user_sessions/_login_form.html.erb +0 -10
  207. data/app/views/user_sessions/logged_out.html.erb +0 -1
  208. data/config/fedora.yml +0 -15
  209. data/config/jetty.yml +0 -6
  210. data/config/locales/hydra.en.yml +0 -7
  211. data/config/role_map_cucumber.yml +0 -10
  212. data/config/role_map_development.yml +0 -12
  213. data/config/role_map_production.yml +0 -2
  214. data/config/role_map_test.yml +0 -14
  215. data/config/routes.rb +0 -12
  216. data/config/solr.yml +0 -9
  217. data/config/solr_mappings.yml +0 -22
  218. data/db/migrate/20101105214243_add_user_attributes_table.rb +0 -15
  219. data/db/migrate/20101108192527_create_superusers.rb +0 -12
  220. data/fedora_conf/conf/development/fedora.fcfg +0 -1021
  221. data/fedora_conf/conf/test/fedora.fcfg +0 -1021
  222. data/hydra-head.gemspec +0 -41
  223. data/init.rb +0 -4
  224. data/install.rb +0 -1
  225. data/lib/application_helper.rb +0 -3
  226. data/lib/generators/hydra/assets_generator.rb +0 -50
  227. data/lib/generators/hydra/cucumber_support_generator.rb +0 -29
  228. data/lib/generators/hydra/head_generator.rb +0 -165
  229. data/lib/generators/hydra/hyhead_fixtures_generator.rb +0 -27
  230. data/lib/generators/hydra/templates/catalog_controller.rb +0 -162
  231. data/lib/generators/hydra/templates/config/fedora.yml +0 -14
  232. data/lib/generators/hydra/templates/config/initializers/action_dispatch_http_upload_monkey_patch.rb +0 -12
  233. data/lib/generators/hydra/templates/config/initializers/hydra_config.rb +0 -44
  234. data/lib/generators/hydra/templates/config/role_map_cucumber.yml +0 -10
  235. data/lib/generators/hydra/templates/config/role_map_development.yml +0 -12
  236. data/lib/generators/hydra/templates/config/role_map_production.yml +0 -2
  237. data/lib/generators/hydra/templates/config/role_map_test.yml +0 -15
  238. data/lib/generators/hydra/templates/config/solr.yml +0 -10
  239. data/lib/generators/hydra/templates/config/solr_mappings.yml +0 -22
  240. data/lib/generators/hydra/templates/fedora_conf/conf/development/fedora.fcfg +0 -1021
  241. data/lib/generators/hydra/templates/fedora_conf/conf/test/fedora.fcfg +0 -1021
  242. data/lib/generators/hydra/templates/migrations/create_superusers.rb +0 -12
  243. data/lib/generators/hydra/templates/solr_conf/conf/schema.xml +0 -124
  244. data/lib/generators/hydra/templates/solr_conf/conf/solrconfig.xml +0 -394
  245. data/lib/generators/hydra/templates/solr_conf/solr.xml +0 -35
  246. data/lib/hydra-head.rb +0 -29
  247. data/lib/hydra-head/controller.rb +0 -29
  248. data/lib/hydra-head/engine.rb +0 -29
  249. data/lib/hydra-head/routes.rb +0 -90
  250. data/lib/hydra-head/version.rb +0 -4
  251. data/lib/hydra.rb +0 -52
  252. data/lib/hydra/assets.rb +0 -7
  253. data/lib/hydra/assets_controller_helper.rb +0 -122
  254. data/lib/hydra/catalog.rb +0 -11
  255. data/lib/hydra/controller.rb +0 -26
  256. data/lib/hydra/controller/assets_controller_behavior.rb +0 -143
  257. data/lib/hydra/controller/catalog_controller_behavior.rb +0 -56
  258. data/lib/hydra/controller/controller_behavior.rb +0 -59
  259. data/lib/hydra/controller/file_assets_behavior.rb +0 -144
  260. data/lib/hydra/controller/repository_controller_behavior.rb +0 -119
  261. data/lib/hydra/controller/upload_behavior.rb +0 -139
  262. data/lib/hydra/file_assets.rb +0 -11
  263. data/lib/hydra/file_assets_helper.rb +0 -12
  264. data/lib/hydra/generic_content.rb +0 -130
  265. data/lib/hydra/generic_image.rb +0 -112
  266. data/lib/hydra/generic_user_attributes.rb +0 -41
  267. data/lib/hydra/global_configurable.rb +0 -46
  268. data/lib/hydra/model_methods.rb +0 -104
  269. data/lib/hydra/model_mixins.rb +0 -8
  270. data/lib/hydra/model_mixins/common_metadata.rb +0 -25
  271. data/lib/hydra/model_mixins/solr_document_extension.rb +0 -24
  272. data/lib/hydra/models/file_asset.rb +0 -78
  273. data/lib/hydra/repository_controller.rb +0 -28
  274. data/lib/hydra/rights_metadata.rb +0 -194
  275. data/lib/hydra/solr.rb +0 -9
  276. data/lib/hydra/submission_workflow.rb +0 -138
  277. data/lib/hydra/superuser_attributes.rb +0 -19
  278. data/lib/hydra/ui.rb +0 -6
  279. data/lib/hydra/ui/controller.rb +0 -46
  280. data/lib/hydra/workflow.rb +0 -5
  281. data/lib/hydra/workflow/controller.rb +0 -3
  282. data/lib/mediashelf/active_fedora_helper.rb +0 -73
  283. data/lib/prev_next_links.rb +0 -33
  284. data/lib/railties/active-fedora.rake +0 -1
  285. data/lib/railties/hydra-fixtures.rake +0 -50
  286. data/lib/railties/hydra_jetty.rake +0 -53
  287. data/lib/user_attributes_loader.rb +0 -26
  288. data/solr/conf/schema.xml +0 -116
  289. data/solr/conf/solrconfig.xml +0 -311
  290. data/solr/solr.xml +0 -35
  291. data/solr_conf/conf/schema.xml +0 -124
  292. data/solr_conf/conf/solrconfig.xml +0 -394
  293. data/solr_conf/solr.xml +0 -35
  294. data/tasks/active-fedora.rake +0 -1
  295. data/tasks/hydra-head-fixtures.rake +0 -58
  296. data/tasks/hydra-head.rake +0 -209
  297. data/tasks/hydra_jetty.rake +0 -53
  298. data/tasks/hyhead_rspec.rake +0 -57
  299. data/tasks/replicator.rake +0 -27
  300. data/tasks/solrizer-fedora.rake +0 -53
  301. data/tasks/solrizer.rake +0 -13
  302. data/test_support/etc/Gemfile +0 -46
  303. data/test_support/etc/common_metadata_asset.rb +0 -18
  304. data/test_support/features/absent_model_edit.feature +0 -27
  305. data/test_support/features/absent_model_search_result.feature +0 -18
  306. data/test_support/features/absent_model_show.feature +0 -27
  307. data/test_support/features/button_add_assets.feature +0 -22
  308. data/test_support/features/button_add_generic_content.feature +0 -11
  309. data/test_support/features/button_add_image.feature +0 -11
  310. data/test_support/features/button_add_mods_asset.feature +0 -11
  311. data/test_support/features/button_delete_asset.feature +0 -13
  312. data/test_support/features/contributor_add.feature +0 -44
  313. data/test_support/features/default_partials_edit.feature +0 -27
  314. data/test_support/features/default_partials_search_result.feature +0 -22
  315. data/test_support/features/default_partials_show.feature +0 -24
  316. data/test_support/features/file_upload.feature +0 -80
  317. data/test_support/features/generic_content_create.feature +0 -7
  318. data/test_support/features/generic_content_edit.feature +0 -21
  319. data/test_support/features/generic_content_search_result.feature +0 -22
  320. data/test_support/features/generic_content_show.feature +0 -20
  321. data/test_support/features/generic_image_create.feature +0 -7
  322. data/test_support/features/generic_image_edit.feature +0 -21
  323. data/test_support/features/generic_image_search_result.feature +0 -22
  324. data/test_support/features/generic_image_show.feature +0 -20
  325. data/test_support/features/home_page.feature +0 -9
  326. data/test_support/features/html_validity.feature +0 -43
  327. data/test_support/features/mods_asset_contributors_edit.feature +0 -88
  328. data/test_support/features/mods_asset_create.feature +0 -17
  329. data/test_support/features/mods_asset_edit.feature +0 -65
  330. data/test_support/features/mods_asset_edit_without_permission.feature +0 -15
  331. data/test_support/features/mods_asset_search_result.feature +0 -24
  332. data/test_support/features/mods_asset_show.feature +0 -90
  333. data/test_support/features/nonexistent_object_show.feature +0 -9
  334. data/test_support/features/permissions_add.feature +0 -16
  335. data/test_support/features/permissions_edit.feature +0 -65
  336. data/test_support/features/step_definitions/catalog_index_steps.rb +0 -14
  337. data/test_support/features/step_definitions/create_asset_steps.rb +0 -3
  338. data/test_support/features/step_definitions/edit_metadata_steps.rb +0 -72
  339. data/test_support/features/step_definitions/file_list_steps.rb +0 -36
  340. data/test_support/features/step_definitions/html_validity_steps.rb +0 -64
  341. data/test_support/features/step_definitions/hydra_metadata_steps.rb +0 -3
  342. data/test_support/features/step_definitions/hydra_steps.rb +0 -8
  343. data/test_support/features/step_definitions/inline_editable_edit_steps.rb +0 -77
  344. data/test_support/features/step_definitions/search_steps.rb +0 -88
  345. data/test_support/features/step_definitions/searching_steps.rb +0 -22
  346. data/test_support/features/step_definitions/show_document_steps.rb +0 -89
  347. data/test_support/features/step_definitions/user_steps.rb +0 -42
  348. data/test_support/features/step_definitions/web_steps.rb +0 -223
  349. data/test_support/features/support/env.rb +0 -57
  350. data/test_support/features/support/paths.rb +0 -85
  351. data/test_support/features/switch_users.feature +0 -14
  352. data/test_support/features/view_catalog_index.feature +0 -18
  353. data/test_support/fixtures/empty_file.txt +0 -0
  354. data/test_support/fixtures/hydra_test_default_partials.foxml.xml +0 -80
  355. data/test_support/fixtures/hydra_test_generic_content.foxml.xml +0 -138
  356. data/test_support/fixtures/hydra_test_generic_image.foxml.xml +0 -395
  357. data/test_support/fixtures/hydra_test_no_model.foxml.xml +0 -79
  358. data/test_support/fixtures/hydrangea_fixture_archivist_only_mods_article.foxml.xml +0 -1212
  359. data/test_support/fixtures/hydrangea_fixture_file_asset1.foxml.xml +0 -4946
  360. data/test_support/fixtures/hydrangea_fixture_mods_article1.foxml.xml +0 -234
  361. data/test_support/fixtures/hydrangea_fixture_mods_article2.foxml.xml +0 -177
  362. data/test_support/fixtures/hydrangea_fixture_mods_article3.foxml.xml +0 -170
  363. data/test_support/fixtures/hydrangea_fixture_mods_dataset1.foxml.xml +0 -187
  364. data/test_support/fixtures/hydrangea_fixture_uploaded_svg1.foxml.xml +0 -676
  365. data/test_support/fixtures/hydrus_admin_class1.foxml.xml +0 -176
  366. data/test_support/fixtures/image.jp2 +0 -0
  367. data/test_support/fixtures/libra-oa_1.foxml.xml +0 -2324
  368. data/test_support/fixtures/libra-oa_2.foxml.xml +0 -2422
  369. data/test_support/fixtures/libra-oa_7.foxml.xml +0 -1735
  370. data/test_support/fixtures/small_file.txt +0 -1
  371. data/test_support/spec/controllers/catalog_controller_spec.rb +0 -138
  372. data/test_support/spec/controllers/catalog_controller_viewing_context_spec.rb +0 -67
  373. data/test_support/spec/controllers/catalog_valid_html_spec.rb +0 -123
  374. data/test_support/spec/controllers/contributors_controller_spec.rb +0 -67
  375. data/test_support/spec/controllers/file_assets_controller_spec.rb +0 -194
  376. data/test_support/spec/controllers/hydra-assets_controller_spec.rb +0 -151
  377. data/test_support/spec/controllers/hydra_controller_spec.rb +0 -43
  378. data/test_support/spec/controllers/hydra_ui_controller_spec.rb +0 -21
  379. data/test_support/spec/controllers/permissions_controller_spec.rb +0 -39
  380. data/test_support/spec/controllers/user_sessions_controller_spec.rb +0 -35
  381. data/test_support/spec/factories.rb +0 -11
  382. data/test_support/spec/helpers/access_controls_enforcement_spec.rb +0 -119
  383. data/test_support/spec/helpers/access_controls_evaluation_spec.rb +0 -26
  384. data/test_support/spec/helpers/assets_controller_helper_spec.rb +0 -63
  385. data/test_support/spec/helpers/blacklight_helper_spec.rb +0 -60
  386. data/test_support/spec/helpers/file_assets_helper_spec.rb +0 -116
  387. data/test_support/spec/helpers/generic_content_objects_helper_spec.rb +0 -17
  388. data/test_support/spec/helpers/hydra-repository_controller_spec.rb +0 -54
  389. data/test_support/spec/helpers/hydra_assets_helper_spec.rb +0 -143
  390. data/test_support/spec/helpers/hydra_fedora_metadata_helper_spec.rb +0 -255
  391. data/test_support/spec/helpers/hydra_helper_spec.rb +0 -105
  392. data/test_support/spec/helpers/hydra_model_methods_spec.rb +0 -88
  393. data/test_support/spec/helpers/hydra_uploader_helper_spec.rb +0 -26
  394. data/test_support/spec/helpers/javascript_includes_helper_spec.rb +0 -51
  395. data/test_support/spec/integration/file_asset_spec.rb +0 -68
  396. data/test_support/spec/lib/catalog_spec.rb +0 -23
  397. data/test_support/spec/lib/global_configurable_spec.rb +0 -98
  398. data/test_support/spec/lib/hydra_submission_workflow_spec.rb +0 -141
  399. data/test_support/spec/lib/model_methods_spec.rb +0 -29
  400. data/test_support/spec/models/file_asset_spec.rb +0 -25
  401. data/test_support/spec/models/generic_content_spec.rb +0 -39
  402. data/test_support/spec/models/generic_image_spec.rb +0 -75
  403. data/test_support/spec/models/mods_asset_spec.rb +0 -20
  404. data/test_support/spec/models/solr_document_spec.rb +0 -17
  405. data/test_support/spec/models/user_spec.rb +0 -94
  406. data/test_support/spec/rcov.opts +0 -3
  407. data/test_support/spec/spec.opts +0 -4
  408. data/test_support/spec/spec_helper.rb +0 -63
  409. data/test_support/spec/support/matchers/helper_matcher.rb +0 -14
  410. data/test_support/spec/support/matchers/solr_matchers.rb +0 -60
  411. data/test_support/spec/unit/hydra-head-engine_spec.rb +0 -8
  412. data/test_support/spec/unit/hydra-head_spec.rb +0 -8
@@ -1,46 +0,0 @@
1
- module Hydra::GlobalConfigurable
2
-
3
- # The config environment name used by the #config method
4
- #
5
- # Example:
6
- # class MyThing
7
- # extend Hydra::GlobalConfigurable
8
- # end
9
- #
10
- # Now MyThing.config will be the result of:
11
- # MyThing.configure(:production) {|config|}
12
- #
13
- # You set shared attributes by leaving the first argument blank or passing the :shared value:
14
- # MyThing.configure {|config|}
15
- # or
16
- # MyThing.configure(:shared) {|config|}
17
-
18
- # sets the @configs variable to a new Hash with empty Hash for :shared key and @config to nil
19
- def reset_configs!
20
- @config = nil
21
- @configs = {:shared=>{}}
22
- end
23
-
24
- # A hash of all environment configs
25
- # The key is the environment name, the value a Hash
26
- def configs
27
- @configs ? @configs : (reset_configs! and @configs)
28
- end
29
-
30
- # The main config accessor. It merges the current configs[::Rails.env]
31
- # with configs[:shared] and lazy-loads @config to the result.
32
- def config
33
- @config ||= configs[:shared].merge(configs[::Rails.env] ||= {})
34
- end
35
- alias_method :blacklight_config, :config
36
-
37
- # Accepts a value for the environment to configure and a block
38
- # A hash is yielded to the block
39
- # If the "env" != :shared,
40
- # the hash is created by deep cloning the :shared environment config.
41
- # This makes it possible to create defaults in the :shared config
42
- def configure(env = :shared, &blk)
43
- configs[env] = {}
44
- yield configs[env]
45
- end
46
- end
@@ -1,104 +0,0 @@
1
- # will move to lib/hydra/model/model_behavior.rb (with appropriate namespace changes) in release 5.x
2
- module Hydra::ModelMethods
3
- extend ActiveSupport::Concern
4
-
5
- included do
6
- unless self.class == Module
7
- self.has_many :parts, :class_name=>'ActiveFedora::Base', :property=>:is_part_of
8
- end
9
- end
10
-
11
- #
12
- # Adds metadata about the depositor to the asset
13
- # Most important behavior: if the asset has a rightsMetadata datastream, this method will add +depositor_id+ to its individual edit permissions.
14
- #
15
- def apply_depositor_metadata(depositor_id)
16
- prop_ds = self.datastreams["properties"]
17
- rights_ds = self.datastreams["rightsMetadata"]
18
-
19
- if prop_ds
20
- prop_ds.depositor = depositor_id unless prop_ds.nil?
21
- end
22
- rights_ds.permissions({:person=>depositor_id}, 'edit') unless rights_ds.nil?
23
- return true
24
- end
25
-
26
- #
27
- # Set the collection type (e.g. hydrangea_article) for the asset
28
- #
29
- def set_collection_type(collection)
30
- prop_ds = self.datastreams["properties"]
31
- if !prop_ds.nil? && prop_ds.respond_to?(:collection_values)
32
- prop_ds.collection_values = collection
33
- end
34
- end
35
-
36
- # Set the title and label on the current object
37
- #
38
- # @param [String] new_title
39
- # @param [Hash] opts (optional) hash of configuration options
40
- #
41
- # @example Use :only_if_blank option to only update the values when the label is empty
42
- # obj.set_title_and_label("My Title", :only_if_blank=> true)
43
- def set_title_and_label(new_title, opts={})
44
- if opts[:only_if_blank]
45
- if self.label.nil? || self.label.empty?
46
- self.label = new_title
47
- self.set_title( new_title )
48
- end
49
- else
50
- self.label = new_title
51
- set_title( new_title )
52
- end
53
- end
54
-
55
- # Set the title and label on the current object
56
- #
57
- # @param [String] new_title
58
- # @param [Hash] opts (optional) hash of configuration options
59
- def set_title(new_title, opts={})
60
- if self.datastreams.has_key?("descMetadata")
61
- desc_metadata_ds = self.datastreams["descMetadata"]
62
- if desc_metadata_ds.respond_to?(:title_values)
63
- desc_metadata_ds.title_values = new_title
64
- else
65
- desc_metadata_ds.title = new_title
66
- end
67
- end
68
- end
69
-
70
- # Call insert_contributor on the descMetadata datastream
71
- def insert_contributor(type, opts={})
72
- ds = self.datastreams["descMetadata"]
73
- node, index = ds.insert_contributor(type,opts)
74
- return node, index
75
- end
76
-
77
- # Call remove_contributor on the descMetadata datastream
78
- def remove_contributor(type, index)
79
- ds = self.datastreams["descMetadata"]
80
- result = ds.remove_contributor(type,index)
81
- return result
82
- end
83
-
84
- # Call to remove file objects
85
- def destroy_child_assets
86
- destroyable_child_assets.each.inject([]) do |destroyed,fo|
87
- destroyed << fo.pid
88
- fo.delete
89
- destroyed
90
- end
91
-
92
- end
93
-
94
- def destroyable_child_assets
95
- return [] unless self.parts
96
- self.parts.each.inject([]) do |file_assets, fo|
97
- parents = fo.ids_for_outbound(:is_part_of)
98
- if parents.length == 1 && parents.first.match(/#{self.pid}$/)
99
- file_assets << fo
100
- end
101
- file_assets
102
- end
103
- end
104
- end
@@ -1,8 +0,0 @@
1
- module Hydra::ModelMixins
2
- extend ActiveSupport::Autoload
3
- eager_autoload do
4
- autoload :CommonMetadata
5
- autoload :RightsMetadata
6
- autoload :SolrDocumentExtension
7
- end
8
- end
@@ -1,25 +0,0 @@
1
- # Include this into models that you want to conform to the Hydra commonMetadata cModel
2
- # See https://wiki.duraspace.org/display/hydra/Hydra+objects%2C+content+models+%28cModels%29+and+disseminators#Hydraobjects%2Ccontentmodels%28cModels%29anddisseminators-models
3
- #
4
- # Explicitly declares:
5
- # rightsMetadata datastream using Hydra::RightsMetadata Terminology
6
- #
7
- # Does not explicitly declare:
8
- # descMetadata datastream -- should be declared by a more specific mixin like Hydra::ModelMixins::ModsObject
9
- # DC datastream -- Handled by ActiveFedora::Base
10
- # RELS-EXT datastream -- Handled by ActiveFedora::Base & ActiveFedora::RelsExtDatastream
11
- # optional datastreams (contentMetadata, technicalMetadata, provenanceMetadata, sourceMetadata)
12
- #
13
- # will move to lib/hydra/model/common_metadata_behavior in release 5.x
14
- module Hydra::ModelMixins
15
- module CommonMetadata
16
-
17
- def self.included(klazz)
18
- # Uses the Hydra Rights Metadata Schema for tracking access permissions & copyright
19
- klazz.has_metadata :name => "rightsMetadata", :type => Hydra::Datastream::RightsMetadata
20
-
21
- # Ensure that objects assert the commonMetadata cModel
22
- # klazz.relationships << :has_model => "info:fedora/hydra-cModel:commonMetadata"
23
- end
24
- end
25
- end
@@ -1,24 +0,0 @@
1
- module Hydra::ModelMixins
2
- module SolrDocumentExtension
3
- def document_type display_type = CatalogController.blacklight_config.show.display_type
4
- type = self.fetch(:medium_t, nil)
5
-
6
- type ||= self.fetch(display_type, nil) if display_type
7
-
8
- type.first.to_s.gsub("info:fedora/afmodel:","").gsub("Hydrangea","").gsub(/^Generic/,"")
9
- end
10
-
11
- def get_person_from_role(role, opts={})
12
- i = 0
13
- while i < 10
14
- persons_roles = self["person_#{i}_role_t"].map{|w|w.strip.downcase} unless self["person_#{i}_role_t"].nil?
15
- if persons_roles and persons_roles.include?(role.downcase)
16
- return {:first=>self["person_#{i}_first_name_t"], :last=>self["person_#{i}_last_name_t"]}
17
- end
18
- i += 1
19
- end
20
- end
21
- end
22
- end
23
-
24
- SolrDocument.use_extension Hydra::ModelMixins::SolrDocumentExtension
@@ -1,78 +0,0 @@
1
- # will move to lib/hydra/model/file_asset_behavior in release 5.x
2
- module Hydra
3
- module Models
4
- # Defines Behaviors for a FileAsset Model
5
- # Conforms to the Hydra genericContent cModel -- the "content" is in a datastream called content
6
- # TODO: Could we just move this behavior into app/models/file_asset.rb?
7
- module FileAsset
8
- extend ActiveSupport::Concern
9
- included do
10
- include Hydra::ModelMethods
11
-
12
- #has_relationship "is_member_of_collection", :has_collection_member, :inbound => true
13
- #has_bidirectional_relationship "part_of", :is_part_of, :has_part
14
- belongs_to :container, :class_name=>'ActiveFedora::Base', :property=>:is_part_of
15
- has_metadata :name => "descMetadata", :type => ActiveFedora::QualifiedDublinCoreDatastream do |m|
16
- end
17
- end
18
-
19
-
20
- # Returns a human readable filesize appropriate for the given number of bytes (ie. automatically chooses 'bytes','KB','MB','GB','TB')
21
- # Based on a bit of python code posted here: http://blogmag.net/blog/read/38/Print_human_readable_file_size
22
- # @param [Numeric] num file size in bits
23
- def bits_to_human_readable(num)
24
- ['bytes','KB','MB','GB','TB'].each do |x|
25
- if num < 1024.0
26
- return "#{num.to_i} #{x}"
27
- else
28
- num = num/1024.0
29
- end
30
- end
31
- end
32
-
33
-
34
- def label
35
- descMetadata.title.first
36
- end
37
-
38
- def label=(label)
39
- super
40
- descMetadata.title = label
41
- end
42
-
43
- # augments add_file_datastream to also put file size (in bytes/KB/MB/GB/TB) in dc:extent
44
- def add_file_datastream(file, opts={})
45
- super
46
- if file.respond_to?(:size)
47
- size = bits_to_human_readable(file.size)
48
- elsif file.kind_of?(File)
49
- size = bits_to_human_readable(File.size(file))
50
- else
51
- size = ""
52
- end
53
- datastreams["descMetadata"].extent = size
54
- end
55
-
56
- # Override ActiveFedora::Base.to_solr to...
57
- # Check if we are dealing with a child of FileAsset and if so when calling to_solr from Solrizer indexer we want to skip loading parent metadata again
58
- #
59
- # if known models greater than one (without ActiveFedora::Base) and
60
- # known models contains a child of FileAsset and
61
- # opts[:model_only] == true and
62
- # current object class is FileAsset
63
- # that means that the child already has had to_solr called which included metadata from FileAsset
64
- # if any of the above is false then call to_solr as normal
65
- def to_solr(solr_doc=Hash.new, opts={})
66
-
67
- active_fedora_model_s = solr_doc["active_fedora_model_s"] if solr_doc["active_fedora_model_s"]
68
- actual_class = active_fedora_model_s.constantize if active_fedora_model_s
69
- if actual_class && actual_class != self.class && actual_class.superclass == ::FileAsset
70
- solr_doc
71
- else
72
- super(solr_doc,opts)
73
- end
74
- end
75
-
76
- end
77
- end
78
- end
@@ -1,28 +0,0 @@
1
- # Hydra-repository Contoller is a controller layer mixin. It is in the controller scope: request params, session etc.
2
- #
3
- # will move to lib/hydra/controller/repository_controller_behavior in release 5.x
4
- #
5
- # NOTE: Be careful when creating variables here as they may be overriding something that already exists.
6
- # The ActionController docs: http://api.rubyonrails.org/classes/ActionController/Base.html
7
- #
8
- # Override these methods in your own controller for customizations:
9
- #
10
- # class HomeController < ActionController::Base
11
- #
12
- # include Stanford::SolrHelper
13
- #
14
- # def solr_search_params
15
- # super.merge :per_page=>10
16
- # end
17
- #
18
- # end
19
- #
20
- module Hydra::RepositoryController
21
- extend ActiveSupport::Concern
22
-
23
- included do
24
- ActiveSupport::Deprecation.warn "Hydra::RepositoryController has moved to Hydra::Controller::RepositoryControllerBehavior"
25
- include Hydra::Controller::RepositoryControllerBehavior
26
- end
27
-
28
- end
@@ -1,194 +0,0 @@
1
- module Hydra
2
- # @deprecated -- this will be removed in 5.x release
3
- class RightsMetadata < ActiveFedora::NokogiriDatastream
4
-
5
- def initialize(digital_object, dsid, options={})
6
- ActiveSupport::Deprecation.warn("Hydra::RightsMetadata has been deprecated. Use Hydra::Datastream::RightsMetadata instead")
7
- super
8
- end
9
-
10
- set_terminology do |t|
11
- t.root(:path=>"rightsMetadata", :xmlns=>"http://hydra-collab.stanford.edu/schemas/rightsMetadata/v1", :schema=>"http://github.com/projecthydra/schemas/tree/v1/rightsMetadata.xsd")
12
- t.copyright {
13
- t.machine {
14
- t.uvalicense
15
- t.cclicense
16
- t.license
17
- }
18
- t.human_readable(:path=>"human")
19
- t.license(:proxy=>[:machine, :license ])
20
- t.cclicense(:proxy=>[:machine, :cclicense ])
21
- }
22
- t.access {
23
- t.human_readable(:path=>"human")
24
- t.machine {
25
- t.group
26
- t.person
27
- }
28
- t.person(:proxy=>[:machine, :person])
29
- t.group(:proxy=>[:machine, :group])
30
- # accessor :access_person, :term=>[:access, :machine, :person]
31
- }
32
- t.discover_access(:ref=>[:access], :attributes=>{:type=>"discover"})
33
- t.read_access(:ref=>[:access], :attributes=>{:type=>"read"})
34
- t.edit_access(:ref=>[:access], :attributes=>{:type=>"edit"})
35
- # A bug in OM prevnts us from declaring proxy terms at the root of a Terminology
36
- # t.access_person(:proxy=>[:access,:machine,:person])
37
- # t.access_group(:proxy=>[:access,:machine,:group])
38
-
39
- t.embargo {
40
- t.human_readable(:path=>"human")
41
- t.machine{
42
- t.date(:type =>"release")
43
- }
44
- t.embargo_release_date(:proxy => [:machine, :date])
45
- }
46
- end
47
-
48
- # Generates an empty Mods Article (used when you call ModsArticle.new without passing in existing xml)
49
- def self.xml_template
50
- builder = Nokogiri::XML::Builder.new do |xml|
51
- xml.rightsMetadata(:version=>"0.1", "xmlns"=>"http://hydra-collab.stanford.edu/schemas/rightsMetadata/v1") {
52
- xml.copyright {
53
- xml.human
54
- xml.machine {
55
- xml.uvalicense "no"
56
- }
57
- }
58
- xml.access(:type=>"discover") {
59
- xml.human
60
- xml.machine
61
- }
62
- xml.access(:type=>"read") {
63
- xml.human
64
- xml.machine
65
- }
66
- xml.access(:type=>"edit") {
67
- xml.human
68
- xml.machine
69
- }
70
- xml.embargo{
71
- xml.human
72
- xml.machine
73
- }
74
- }
75
- end
76
- return builder.doc
77
- end
78
-
79
- # Returns the permissions for the selected person/group
80
- # If new_access_level is provided, updates the selected person/group access_level to the one specified
81
- # A new_access_level of "none" will remove all access_levels for the selected person/group
82
- # @param [Hash] selector hash in format {type => identifier}
83
- # @param new_access_level (default nil)
84
- # @return Hash in format {type => access_level}.
85
- #
86
- # ie.
87
- # permissions({:person=>"person123"})
88
- # => {"person123"=>"edit"}
89
- # permissions({:person=>"person123"}, "read")
90
- # => {"person123"=>"read"}
91
- # permissions({:person=>"person123"})
92
- # => {"person123"=>"read"}
93
- def permissions(selector, new_access_level=nil)
94
- type = selector.keys.first.to_sym
95
- actor = selector.values.first
96
- if new_access_level.nil?
97
- xpath = self.class.terminology.xpath_for(:access, type, actor)
98
- nodeset = self.find_by_terms(xpath)
99
- if nodeset.empty?
100
- return "none"
101
- else
102
- return nodeset.first.ancestors("access").first.attributes["type"].text
103
- end
104
- else
105
- remove_all_permissions(selector)
106
- unless new_access_level == "none"
107
- access_type_symbol = "#{new_access_level}_access".to_sym
108
- result = self.update_values([access_type_symbol, type] => {"-1"=>actor})
109
- end
110
- self.dirty = true
111
- return new_access_level
112
- end
113
-
114
- end
115
-
116
- # Reports on which groups have which permissions
117
- # @return Hash in format {group_name => group_permissions, group_name => group_permissions}
118
- def groups
119
- return quick_search_by_type(:group)
120
- end
121
-
122
- # Reports on which groups have which permissions
123
- # @return Hash in format {person_name => person_permissions, person_name => person_permissions}
124
- def individuals
125
- return quick_search_by_type(:person)
126
- end
127
-
128
- # Updates permissions for all of the persons and groups in a hash
129
- # @param params ex. {"group"=>{"group1"=>"discover","group2"=>"edit"}, "person"=>{"person1"=>"read","person2"=>"discover"}}
130
- # Currently restricts actor type to group or person. Any others will be ignored
131
- def update_permissions(params)
132
- params.fetch("group", {}).each_pair {|group_id, access_level| self.permissions({"group"=>group_id}, access_level)}
133
- params.fetch("person", {}).each_pair {|group_id, access_level| self.permissions({"person"=>group_id}, access_level)}
134
- end
135
-
136
- # @param [Symbol] type (either :group or :person)
137
- # @return
138
- # This method limits the response to known access levels. Probably runs a bit faster than .permissions().
139
- def quick_search_by_type(type)
140
- result = {}
141
- [{:discover_access=>"discover"},{:read_access=>"read"},{:edit_access=>"edit"}].each do |access_levels_hash|
142
- access_level = access_levels_hash.keys.first
143
- access_level_name = access_levels_hash.values.first
144
- self.find_by_terms(*[access_level, type]).each do |entry|
145
- result[entry.text] = access_level_name
146
- end
147
- end
148
- return result
149
- end
150
-
151
- attr_reader :embargo_release_date
152
- def embargo_release_date=(release_date)
153
- release_date = release_date.to_s if release_date.is_a? Date
154
- begin
155
- Date.parse(release_date)
156
- rescue
157
- return "INVALID DATE"
158
- end
159
- self.update_values({[:embargo,:machine,:date]=>release_date})
160
- end
161
- def embargo_release_date(opts={})
162
- embargo_release_date = self.find_by_terms(*[:embargo,:machine,:date]).first ? self.find_by_terms(*[:embargo,:machine,:date]).first.text : nil
163
- if embargo_release_date.present? && opts[:format] && opts[:format] == :solr_date
164
- embargo_release_date << "T23:59:59Z"
165
- end
166
- embargo_release_date
167
- end
168
- def under_embargo?
169
- (embargo_release_date && Date.today < embargo_release_date.to_date) ? true : false
170
- end
171
-
172
- def to_solr(solr_doc=Hash.new)
173
- super(solr_doc)
174
- ::Solrizer::Extractor.insert_solr_field_value(solr_doc, "embargo_release_date_dt", embargo_release_date(:format=>:solr_date)) if embargo_release_date
175
- solr_doc
176
- end
177
-
178
-
179
-
180
-
181
-
182
- private
183
- # Purge all access given group/person
184
- def remove_all_permissions(selector)
185
- return unless ng_xml
186
- type = selector.keys.first.to_sym
187
- actor = selector.values.first
188
- xpath = self.class.terminology.xpath_for(:access, type, actor)
189
- nodes_to_purge = self.find_by_terms(xpath)
190
- nodes_to_purge.each {|node| node.remove}
191
- end
192
-
193
- end
194
- end