sufia 6.0.0.rc4 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (143) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/Gemfile +1 -1
  4. data/History.md +280 -0
  5. data/README.md +180 -98
  6. data/SUFIA_VERSION +1 -1
  7. data/app/assets/images/site_images/collection-icon.svg +168 -0
  8. data/app/assets/javascripts/sufia/uploader.js +7 -4
  9. data/app/assets/stylesheets/sufia.css.scss +1 -1
  10. data/app/assets/stylesheets/sufia/_collections.scss +33 -13
  11. data/app/assets/stylesheets/sufia/_file-show.scss +24 -0
  12. data/app/assets/stylesheets/sufia/_settings.scss +4 -0
  13. data/app/controllers/concerns/sufia/catalog.rb +1 -11
  14. data/app/controllers/concerns/sufia/collections_controller_behavior.rb +13 -15
  15. data/app/controllers/concerns/sufia/dashboard_controller_behavior.rb +3 -1
  16. data/app/controllers/concerns/sufia/files_controller/browse_everything.rb +2 -1
  17. data/app/controllers/concerns/sufia/files_controller/local_ingest_behavior.rb +1 -0
  18. data/app/controllers/concerns/sufia/files_controller_behavior.rb +4 -1
  19. data/app/controllers/concerns/sufia/homepage_controller.rb +4 -11
  20. data/app/controllers/concerns/sufia/my_controller_behavior.rb +3 -21
  21. data/app/controllers/concerns/sufia/transfers_controller_behavior.rb +6 -6
  22. data/app/controllers/concerns/sufia/users_controller_behavior.rb +7 -7
  23. data/app/controllers/my/collections_controller.rb +1 -8
  24. data/app/controllers/my/files_controller.rb +1 -1
  25. data/app/controllers/my/highlights_controller.rb +1 -9
  26. data/app/controllers/my/shares_controller.rb +1 -8
  27. data/app/helpers/generic_file_helper.rb +4 -0
  28. data/app/helpers/sufia/sufia_helper_behavior.rb +3 -3
  29. data/app/helpers/sufia_url_helper.rb +9 -0
  30. data/app/jobs/content_depositor_change_event_job.rb +5 -5
  31. data/app/search_builders/sufia/search_builder.rb +50 -0
  32. data/app/views/_user_util_links.html.erb +6 -4
  33. data/app/views/batch_edits/_check_all.html.erb +1 -1
  34. data/app/views/catalog/index.html.erb +3 -30
  35. data/app/views/collections/_media_display.html.erb +1 -1
  36. data/app/views/collections/_show_descriptions.html.erb +1 -1
  37. data/app/views/collections/_show_document_list_row.html.erb +2 -2
  38. data/app/views/dashboard/_index_partials/_heading_actions.html.erb +16 -12
  39. data/app/views/generic_files/_browse_everything.html.erb +3 -1
  40. data/app/views/generic_files/_local_file_import.html.erb +0 -1
  41. data/app/views/generic_files/_multiple_upload.html.erb +0 -1
  42. data/app/views/generic_files/_show_descriptions.html.erb +6 -11
  43. data/app/views/generic_files/_show_details.html.erb +41 -65
  44. data/app/views/generic_files/new.html.erb +1 -0
  45. data/app/views/generic_files/show.html.erb +2 -1
  46. data/app/views/generic_files/upload/_alerts.html.erb +5 -13
  47. data/app/views/homepage/_home_header.html.erb +6 -7
  48. data/app/views/my/_index_partials/_list_collections.html.erb +1 -1
  49. data/app/views/my/index.html.erb +2 -2
  50. data/app/views/records/edit_fields/_resource_type.html.erb +1 -1
  51. data/config/initializers/sufia_events.rb +2 -3
  52. data/config/locales/sufia.en.yml +11 -2
  53. data/lib/generators/sufia/install_generator.rb +5 -1
  54. data/lib/generators/sufia/templates/catalog_controller.rb +3 -5
  55. data/lib/generators/sufia/upgrade600_generator.rb +26 -0
  56. data/lib/sufia/version.rb +1 -1
  57. data/spec/actors/generic_file/actor_spec.rb +14 -0
  58. data/spec/controllers/collections_controller_spec.rb +19 -2
  59. data/spec/controllers/dashboard_controller_spec.rb +43 -12
  60. data/spec/controllers/generic_files_controller_spec.rb +24 -1
  61. data/spec/controllers/transfers_controller_spec.rb +4 -4
  62. data/spec/controllers/users_controller_spec.rb +18 -4
  63. data/spec/fixtures/spoken-text.m4a +0 -0
  64. data/spec/helpers/dashboard_helper_spec.rb +1 -1
  65. data/spec/helpers/sufia_url_helper_spec.rb +15 -0
  66. data/spec/inputs/select_with_help_input_spec.rb +15 -0
  67. data/spec/jobs/{active_fedora_pid_based_job_spec.rb → active_fedora_id_based_job_spec.rb} +2 -2
  68. data/spec/jobs/audit_job_spec.rb +2 -2
  69. data/spec/lib/sufia/id_service_spec.rb +8 -8
  70. data/spec/lib/sufia/user_stat_importer_spec.rb +9 -1
  71. data/spec/models/ability_spec.rb +7 -4
  72. data/spec/models/checksum_audit_log_spec.rb +10 -10
  73. data/spec/models/collection_spec.rb +8 -13
  74. data/spec/models/fits_datastream_spec.rb +17 -0
  75. data/spec/models/generic_file_spec.rb +9 -1
  76. data/spec/models/proxy_deposit_request_spec.rb +15 -3
  77. data/spec/services/generic_file_audit_service_spec.rb +1 -1
  78. data/spec/support/features.rb +1 -0
  79. data/spec/support/rake_output.rb +20 -0
  80. data/spec/tasks/rake_spec.rb +58 -0
  81. data/spec/test_app_templates/Gemfile.extra +3 -1
  82. data/spec/views/batch/edit.html.erb_spec.rb +6 -2
  83. data/spec/views/catalog/index.html.erb_spec.rb +1 -1
  84. data/spec/views/catalog/sort_and_per_page.html.erb_spec.rb +6 -2
  85. data/spec/views/dashboard/index_spec.rb +49 -1
  86. data/spec/views/generic_file/_browse_everything.html.erb_spec.rb +9 -0
  87. data/spec/views/generic_file/show.html.erb_spec.rb +13 -8
  88. data/spec/views/homepage/_home_header.html.erb_spec.rb +26 -0
  89. data/spec/views/users/_user_util_links.html.erb_spec.rb +20 -0
  90. data/spec/views/users/show.html.erb_spec.rb +1 -1
  91. data/sufia-models/app/actors/sufia/generic_file/actor.rb +1 -1
  92. data/sufia-models/app/jobs/active_fedora_id_based_job.rb +22 -0
  93. data/sufia-models/app/jobs/active_fedora_pid_based_job.rb +5 -20
  94. data/sufia-models/app/jobs/audit_job.rb +5 -6
  95. data/sufia-models/app/jobs/characterize_job.rb +1 -1
  96. data/sufia-models/app/jobs/create_derivatives_job.rb +1 -1
  97. data/sufia-models/app/jobs/import_url_job.rb +2 -2
  98. data/sufia-models/app/models/batch.rb +18 -4
  99. data/sufia-models/app/models/checksum_audit_log.rb +2 -2
  100. data/sufia-models/app/models/concerns/sufia/ability.rb +7 -1
  101. data/sufia-models/app/models/concerns/sufia/collection_behavior.rb +1 -1
  102. data/sufia-models/app/models/concerns/sufia/generic_file/full_text_indexing.rb +23 -14
  103. data/sufia-models/app/models/concerns/sufia/generic_file/proxy_deposit.rb +1 -1
  104. data/sufia-models/app/models/datastreams/fits_datastream.rb +1 -36
  105. data/sufia-models/app/models/proxy_deposit_request.rb +6 -6
  106. data/sufia-models/app/services/sufia/generic_file_audit_service.rb +1 -1
  107. data/sufia-models/app/services/sufia/generic_file_indexing_service.rb +0 -1
  108. data/sufia-models/app/services/sufia/id_service.rb +2 -3
  109. data/sufia-models/app/services/sufia/noid.rb +1 -1
  110. data/sufia-models/lib/generators/sufia/models/templates/config/sufia.rb +1 -1
  111. data/sufia-models/lib/generators/sufia/models/templates/migrations/change_audit_log_pid_to_generic_file_id.rb +5 -0
  112. data/sufia-models/lib/generators/sufia/models/templates/migrations/change_proxy_deposit_request_pid_to_generic_file_id.rb +5 -0
  113. data/sufia-models/lib/generators/sufia/models/upgrade600_generator.rb +21 -0
  114. data/sufia-models/lib/sufia/models/stats/user_stat_importer.rb +20 -1
  115. data/sufia-models/lib/sufia/models/version.rb +1 -1
  116. data/sufia-models/lib/tasks/batch_cleanup.rake +19 -0
  117. data/sufia-models/lib/tasks/migrate.rake +21 -0
  118. data/sufia-models/lib/tasks/sufia-models_tasks.rake +55 -38
  119. data/sufia-models/sufia-models.gemspec +1 -1
  120. data/sufia.gemspec +2 -2
  121. metadata +44 -38
  122. data/app/assets/images/site_images/bg_body.png +0 -0
  123. data/app/assets/images/site_images/bg_breadcrumbs.png +0 -0
  124. data/app/assets/images/site_images/bg_button1.png +0 -0
  125. data/app/assets/images/site_images/bg_button2.png +0 -0
  126. data/app/assets/images/site_images/bg_button3.png +0 -0
  127. data/app/assets/images/site_images/bg_content.png +0 -0
  128. data/app/assets/images/site_images/bg_content2.png +0 -0
  129. data/app/assets/images/site_images/bg_footer.png +0 -0
  130. data/app/assets/images/site_images/bg_masthead.png +0 -0
  131. data/app/assets/images/site_images/bg_search_field.png +0 -0
  132. data/app/assets/images/site_images/bg_search_header.png +0 -0
  133. data/app/assets/images/site_images/bg_signin.png +0 -0
  134. data/app/assets/images/site_images/carrot_blue.png +0 -0
  135. data/app/assets/images/site_images/carrot_yellow.png +0 -0
  136. data/app/assets/images/site_images/icon_arrow2_up.png +0 -0
  137. data/app/assets/images/site_images/icon_arrow3_down.png +0 -0
  138. data/app/assets/images/site_images/icon_arrow3_right.png +0 -0
  139. data/app/assets/images/site_images/icon_arrow_down.png +0 -0
  140. data/app/assets/images/site_images/icons_sprite.png +0 -0
  141. data/app/assets/images/site_images/logo_psuss_footer.png +0 -0
  142. data/app/views/catalog/_edit_partials/_default.html.erb +0 -55
  143. data/spec/support/fedora_conf/fedora.fcfg +0 -953
@@ -1 +1 @@
1
- 6.0.0.rc4
1
+ 6.0.0
@@ -0,0 +1,168 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
5
+ viewBox="0 0 960 960" enable-background="new 0 0 960 960" xml:space="preserve">
6
+ <g id="background">
7
+ <g>
8
+ <g>
9
+ <path fill="#DDC4A7" d="M946,14v932H14V14H946 M960,0H0v960h960V0L960,0z"/>
10
+ </g>
11
+ </g>
12
+ </g>
13
+ <g id="photo">
14
+ <g id="frame">
15
+ <rect x="46.6" y="43.1" fill="#FFC74E" width="423.4" height="288.2"/>
16
+ </g>
17
+ <g id="frame_1_">
18
+ <rect x="67.7" y="57.5" fill="#FFFFFF" width="381" height="259.4"/>
19
+ <rect x="84.6" y="74.3" fill="#E3F5FA" width="345.5" height="226.9"/>
20
+ </g>
21
+ <g>
22
+ <defs>
23
+ <rect id="SVGID_1_" x="84.6" y="74.3" width="345.5" height="226.9"/>
24
+ </defs>
25
+ <clipPath id="SVGID_2_">
26
+ <use xlink:href="#SVGID_1_" overflow="visible"/>
27
+ </clipPath>
28
+ <polygon clip-path="url(#SVGID_2_)" fill="#73A353" points="411.8,158.3 380.1,103.6 374.3,113.8 355.9,82 335.6,117 327.9,103.7
29
+ 298.2,155.1 289.7,140.3 268.6,176.7 247.5,213 264.6,213 280,213 289.7,213 316.8,213 327.9,213 331.9,213 355.9,213 380.1,213
30
+ 391.2,213 431.7,213 443.4,213 "/>
31
+ <polygon clip-path="url(#SVGID_2_)" fill="#E2E3E4" points="-109.2,213 460,213 460,302 218.2,302 "/>
32
+ <polygon clip-path="url(#SVGID_2_)" fill="#BC9F77" points="444.1,213 84,213 84,302 236.9,302 "/>
33
+ </g>
34
+ <polygon fill="#73A353" points="279,189 265.2,165.1 259.5,174.8 247.9,154.7 238.4,171.2 232.4,160.8 217.4,186.9 202.4,213
35
+ 214.4,213 232.4,213 237.6,213 247.9,213 262.4,213 265.2,213 281.5,213 292.7,213 "/>
36
+ <circle fill="#F8DB94" cx="143.1" cy="100.3" r="17.8"/>
37
+ </g>
38
+ <g id="document">
39
+ <rect x="45.9" y="352.9" fill="#67ADA9" width="423.4" height="548.1"/>
40
+ <rect x="67.1" y="380.3" fill="#FFFFFF" width="381" height="493.3"/>
41
+ <g>
42
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="831.5" x2="244" y2="831.5"/>
43
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="794.5" x2="244" y2="794.5"/>
44
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="757.5" x2="244" y2="757.5"/>
45
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="719.5" x2="244" y2="719.5"/>
46
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="682.5" x2="244" y2="682.5"/>
47
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="645.5" x2="244" y2="645.5"/>
48
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="608.5" x2="244" y2="608.5"/>
49
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="571.5" x2="244" y2="571.5"/>
50
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="533.5" x2="244" y2="533.5"/>
51
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="496.5" x2="244" y2="496.5"/>
52
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="459.5" x2="244" y2="459.5"/>
53
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="90" y1="422.5" x2="244" y2="422.5"/>
54
+ </g>
55
+ <g>
56
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="268" y1="719.5" x2="422" y2="719.5"/>
57
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="268" y1="682.5" x2="422" y2="682.5"/>
58
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="268" y1="645.5" x2="422" y2="645.5"/>
59
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="268" y1="608.5" x2="422" y2="608.5"/>
60
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="268" y1="571.5" x2="422" y2="571.5"/>
61
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="268" y1="533.5" x2="422" y2="533.5"/>
62
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="268" y1="496.5" x2="422" y2="496.5"/>
63
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="268" y1="459.5" x2="422" y2="459.5"/>
64
+ <line fill="none" stroke="#999999" stroke-width="7" stroke-miterlimit="10" x1="268" y1="422.5" x2="422" y2="422.5"/>
65
+ </g>
66
+ </g>
67
+ <g id="spreadsheets">
68
+ <rect x="491.4" y="43.3" fill="#67ADA9" width="424" height="286.7"/>
69
+ <rect x="512.6" y="57.6" fill="#FFFFFF" width="381.6" height="258"/>
70
+ <rect x="537.5" y="172.7" display="none" fill="#D6562B" width="38.8" height="124.1"/>
71
+ <rect x="532" y="223.4" fill="#313F76" width="38.8" height="73.4"/>
72
+ <rect x="608.8" y="151" fill="#FFC74E" width="38.8" height="145.8"/>
73
+ <rect x="685.5" y="78.6" fill="#D6562B" width="38.8" height="218.2"/>
74
+ <rect x="762.2" y="138.4" fill="#3A7345" width="38.8" height="158.4"/>
75
+ <rect x="839" y="244.3" fill="#FFC74E" width="38.8" height="52.4"/>
76
+ <rect x="825.8" y="188.7" display="none" fill="#313F76" width="38.8" height="108"/>
77
+ </g>
78
+ <g id="database_1_">
79
+ <g id="databases">
80
+ <rect x="711.6" y="353" fill="#313F76" width="203.4" height="263.3"/>
81
+ <g>
82
+ <path fill="#FFC74E" d="M881.9,554.9H746.1c-5.5,0-10-4.5-10-10v-34.7c0-5.5,4.5-10,10-10h135.8c5.5,0,10,4.5,10,10v34.7
83
+ C891.9,550.4,887.4,554.9,881.9,554.9z"/>
84
+ <path fill="#FFC74E" d="M881.9,493.2H746.1c-5.5,0-10-4.5-10-10v-34.7c0-5.5,4.5-10,10-10h135.8c5.5,0,10,4.5,10,10v34.7
85
+ C891.9,488.7,887.4,493.2,881.9,493.2z"/>
86
+ <path fill="#FFC74E" d="M881.9,431.4H746.1c-5.5,0-10-4.5-10-10v-34.7c0-5.5,4.5-10,10-10h135.8c5.5,0,10,4.5,10,10v34.7
87
+ C891.9,426.9,887.4,431.4,881.9,431.4z"/>
88
+ </g>
89
+ <path fill="#D6562B" d="M880,548h-24c-2.2,0-4-1.8-4-4v-9c0-2.2,1.8-4,4-4h24c2.2,0,4,1.8,4,4v9C884,546.2,882.2,548,880,548z"/>
90
+ <path fill="#D6562B" d="M880,487h-24c-2.2,0-4-1.8-4-4v-9c0-2.2,1.8-4,4-4h24c2.2,0,4,1.8,4,4v9C884,485.2,882.2,487,880,487z"/>
91
+ <path fill="#D6562B" d="M880,425h-24c-2.2,0-4-1.8-4-4v-9c0-2.2,1.8-4,4-4h24c2.2,0,4,1.8,4,4v9C884,423.2,882.2,425,880,425z"/>
92
+ </g>
93
+ </g>
94
+ <g id="zip_file">
95
+ <rect x="491" y="353" fill="#D6562B" width="203.4" height="263.3"/>
96
+ <g>
97
+ <path fill="#FFFFFF" d="M602.4,527.8h-13.8c-2.2,0-4-1.8-4-4v-2.5c0-2.2,1.8-4,4-4h13.8c2.2,0,4,1.8,4,4v2.5
98
+ C606.4,526,604.6,527.8,602.4,527.8z"/>
99
+ <path fill="#FFFFFF" d="M591.9,507.5h-13.8c-2.2,0-4-1.8-4-4V501c0-2.2,1.8-4,4-4h13.8c2.2,0,4,1.8,4,4v2.5
100
+ C595.9,505.7,594.1,507.5,591.9,507.5z"/>
101
+ </g>
102
+ <g>
103
+ <path fill="#FFFFFF" d="M602.4,484.8h-13.8c-2.2,0-4-1.8-4-4v-2.5c0-2.2,1.8-4,4-4h13.8c2.2,0,4,1.8,4,4v2.5
104
+ C606.4,483,604.6,484.8,602.4,484.8z"/>
105
+ <path fill="#FFFFFF" d="M591.9,464.5h-13.8c-2.2,0-4-1.8-4-4V458c0-2.2,1.8-4,4-4h13.8c2.2,0,4,1.8,4,4v2.5
106
+ C595.9,462.7,594.1,464.5,591.9,464.5z"/>
107
+ </g>
108
+ <g>
109
+ <path fill="#FFFFFF" d="M602.4,441.8h-13.8c-2.2,0-4-1.8-4-4v-2.5c0-2.2,1.8-4,4-4h13.8c2.2,0,4,1.8,4,4v2.5
110
+ C606.4,440,604.6,441.8,602.4,441.8z"/>
111
+ <path fill="#FFFFFF" d="M591.9,421.5h-13.8c-2.2,0-4-1.8-4-4V415c0-2.2,1.8-4,4-4h13.8c2.2,0,4,1.8,4,4v2.5
112
+ C595.9,419.7,594.1,421.5,591.9,421.5z"/>
113
+ </g>
114
+ <g>
115
+ <path fill="#FFFFFF" d="M602.4,399.8h-13.8c-2.2,0-4-1.8-4-4v-2.5c0-2.2,1.8-4,4-4h13.8c2.2,0,4,1.8,4,4v2.5
116
+ C606.4,398,604.6,399.8,602.4,399.8z"/>
117
+ <path fill="#FFFFFF" d="M591.9,379.5h-13.8c-2.2,0-4-1.8-4-4V373c0-2.2,1.8-4,4-4h13.8c2.2,0,4,1.8,4,4v2.5
118
+ C595.9,377.7,594.1,379.5,591.9,379.5z"/>
119
+ </g>
120
+ <g>
121
+ <path fill="#1A1F1C" d="M608.7,597.8h-31.4c-2.2,0-4-1.8-4-4v-50.8c0-2.2,1.8-4,4-4h31.4c2.2,0,4,1.8,4,4v50.8
122
+ C612.7,596,610.9,597.8,608.7,597.8z"/>
123
+ <path fill="#FFFFFF" d="M600.9,592.7h-15.6c-2.2,0-4-1.8-4-4v-27.3c0-2.2,1.8-4,4-4h15.6c2.2,0,4,1.8,4,4v27.3
124
+ C604.9,590.9,603.1,592.7,600.9,592.7z"/>
125
+ </g>
126
+ </g>
127
+ <g id="movies">
128
+ <rect x="491" y="632" fill="#FFC74E" width="424" height="268"/>
129
+ <rect x="491" y="632" display="none" fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" width="424" height="268"/>
130
+ <rect x="503" y="648" fill="#808080" width="400" height="225"/>
131
+ <rect x="545" y="670.5" fill="#FFFFFF" width="316" height="180"/>
132
+ <g>
133
+ <path d="M815,817.5H635.5c-2.2,0-4-1.8-4-4V736c0-2.2,1.8-4,4-4H815c2.2,0,4,1.8,4,4v77.5C819,815.7,817.2,817.5,815,817.5z"/>
134
+ <path stroke="#FFFFFF" stroke-miterlimit="10" d="M809.9,812.1H682.6c-2.2,0-4-1.8-4-4v-66.7c0-2.2,1.8-4,4-4h127.4
135
+ c2.2,0,4,1.8,4,4v66.7C813.9,810.3,812.1,812.1,809.9,812.1z"/>
136
+ <path display="none" fill="#666666" d="M802.4,810.1H690.1c-2.2,0-4-1.8-4-4v-62.8c0-2.2,1.8-4,4-4h112.3c2.2,0,4,1.8,4,4v62.8
137
+ C806.4,808.3,804.6,810.1,802.4,810.1z"/>
138
+ <rect x="622.5" y="732" fill="#CCCCCC" width="16.5" height="75"/>
139
+ <text transform="matrix(1 0 0 1 722.2499 792.0001)" display="none" fill="#FFFFFF" font-family="'FontAwesome'" font-size="48"></text>
140
+ </g>
141
+ <g>
142
+ <rect x="694.9" y="708.7" fill="#4D4D4D" width="22.5" height="8.1"/>
143
+ <rect x="683.7" y="715.7" fill="#808080" width="45" height="16.2"/>
144
+ <path fill="#808080" d="M727.2,693h-43c-5,0-9,4-9,9c0,5,4,9,9,9h43c5,0,9-4,9-9C736.2,697,732.1,693,727.2,693z"/>
145
+ <path fill="#333333" d="M596,690v-0.2c-16,0-28.5,0.1-28.5,11.9s12.5,12.1,28.5,12.1v0.1h90v-24H596z"/>
146
+ </g>
147
+ <g>
148
+ <path fill="#FFFFFF" d="M897,861c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V861z"/>
149
+ <path fill="#FFFFFF" d="M897,822c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V822z"/>
150
+ <path fill="#FFFFFF" d="M897,784c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V784z"/>
151
+ <path fill="#FFFFFF" d="M897,745c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V745z"/>
152
+ <path fill="#FFFFFF" d="M897,707c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V707z"/>
153
+ <path fill="#FFFFFF" d="M897,669c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V669z"/>
154
+ </g>
155
+ <g>
156
+ <path fill="#FFFFFF" d="M537,861c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V861z"/>
157
+ <path fill="#FFFFFF" d="M537,822c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V822z"/>
158
+ <path fill="#FFFFFF" d="M537,784c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V784z"/>
159
+ <path fill="#FFFFFF" d="M537,745c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V745z"/>
160
+ <path fill="#FFFFFF" d="M537,707c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V707z"/>
161
+ <path fill="#FFFFFF" d="M537,669c0,2.2-1.8,4-4,4h-19c-2.2,0-4-1.8-4-4v-8c0-2.2,1.8-4,4-4h19c2.2,0,4,1.8,4,4V669z"/>
162
+ </g>
163
+ <g>
164
+ <circle fill="#FFFFFF" cx="702.9" cy="756.4" r="50.4"/>
165
+ <polygon fill="#D6562B" points="740,756.4 712,772.4 684,788.4 684,756.4 684,724.4 712,740.4 "/>
166
+ </g>
167
+ </g>
168
+ </svg>
@@ -27,7 +27,10 @@ var filestoupload =0;
27
27
  // option afterSubmit: function(form, event, data)
28
28
  var settings = $.extend( { }, options);
29
29
  var files_done =0;
30
- var error_string ='';
30
+ var error_string ='';
31
+ $("#fail").hide();
32
+ $("#partial_fail").hide();
33
+ $("#errmsg").hide();
31
34
 
32
35
  function uploadStopped() {
33
36
  if (files_done == filestoupload && (files_done >0)){
@@ -36,12 +39,12 @@ var filestoupload =0;
36
39
  } else if (error_string.length > 0){
37
40
  // an error occured
38
41
  if (files_done == 0) {
39
- $("#fail").fadeIn('slow')
42
+ $("#fail").show()
40
43
  } else {
41
- $("#partial_fail").fadeIn('slow')
44
+ $("#partial_fail").show()
42
45
  }
43
46
  $("#errmsg").html(error_string);
44
- $("#errmsg").fadeIn('slow');
47
+ $("#errmsg").show();
45
48
  }
46
49
  }
47
50
 
@@ -18,7 +18,7 @@
18
18
  @import 'sufia/settings', 'sufia/header', 'sufia/styles', 'sufia/file-listing',
19
19
  'sufia/collections', 'sufia/batch-edit', 'sufia/dashboard', 'sufia/home-page',
20
20
  'sufia/featured', 'sufia/tagcloud', 'sufia/usage-stats', 'sufia/catalog', 'sufia/buttons',
21
- 'sufia/tinymce', 'sufia/proxy-rights';
21
+ 'sufia/tinymce', 'sufia/proxy-rights', 'sufia/file-show';
22
22
  @import 'hydra-editor/multi_value_fields';
23
23
 
24
24
  #browse-everything {
@@ -1,4 +1,4 @@
1
- .collection_description {
1
+ .collection_description, .genericfile_description {
2
2
  color: #333;
3
3
  font-family: 'Lato', Verdana, Arail, Helvetica, sans-serif;
4
4
  font-size: 1.15em;
@@ -7,29 +7,49 @@
7
7
  letter-spacing: .10em;
8
8
  }
9
9
 
10
- .metadata-collections dt {
11
- float: left;
12
- margin-right: 1em;
10
+ .metadata-collections {
11
+ dt {
12
+ color: $file-show-term-color;
13
+ }
14
+ dd {
15
+ word-wrap: break-word;
16
+ }
13
17
  }
14
18
 
15
- .collection-icon, .collection-icon-search, .collection-icon-small {
16
- font-size: 12vw;
17
- color: #fab801;
18
- padding: 15px 0 0 10px;
19
+ .metadata-collections dt::after {
20
+ content: ':';
19
21
  }
20
22
 
21
- .collection-icon-search {
22
- font-size: 10vw;
23
+ .metadata-collections {
24
+ -moz-column-count: 2;
25
+ -webkit-column-count: 2;
26
+ column-count: 2;
27
+ -moz-column-width: 20em;
28
+ -webkit-column-width: 20em;
29
+ column-width: 20em;
23
30
  }
24
31
 
25
- .thumbnail {
26
- text-align: center;
32
+ .collection-icon, .collection-icon-search {
33
+ display: block;
34
+ width: 100%;
35
+ }
36
+
37
+ .collection-icon {
38
+ padding: 15px 0 0 0;
39
+ }
40
+
41
+ .collection-icon-search {
42
+ padding: 15px 0 0 10px;
27
43
  }
28
44
 
29
45
  .collection-icon-small {
30
- font-size: 2vw;
46
+ padding: 10px 0 0 0;
47
+ width: 1.5em;
31
48
  }
32
49
 
50
+ .thumbnail {
51
+ text-align: center;
52
+ }
33
53
 
34
54
  .actions-controls-collections {
35
55
  display: block;
@@ -0,0 +1,24 @@
1
+ .file-show-term {
2
+ border-top: 2px solid $heading-border-color;
3
+ padding-top: 1em;
4
+ dt {
5
+ color: $file-show-term-color;
6
+ }
7
+ dd {
8
+ padding-bottom: .35em;
9
+ word-wrap: break-word;
10
+ }
11
+ }
12
+
13
+ .file-show-term dt::after {
14
+ content: ':';
15
+ }
16
+
17
+ .file-show-descriptions, .file-show-details {
18
+ -moz-column-count: 2;
19
+ -webkit-column-count: 2;
20
+ column-count: 2;
21
+ -moz-column-width: 20em;
22
+ -webkit-column-width: 20em;
23
+ column-width: 20em;
24
+ }
@@ -74,3 +74,7 @@ $view-select-border-color: $blue-medium-bright;
74
74
  $view-select-text-color: $classic-white;
75
75
  $view-select-background-hover: $classic-white;
76
76
  $view-select-text-hover: $blue-medium-bright;
77
+
78
+ // File Show Page
79
+ $file-show-term-color: $gray-dark;
80
+ $heading-border-color: $gray-light;
@@ -2,17 +2,7 @@ module Sufia
2
2
  module Catalog
3
3
  extend ActiveSupport::Concern
4
4
  included do
5
- self.solr_search_params_logic += [:only_generic_files_and_collections]
5
+ self.search_params_logic += [:only_generic_files_and_collections]
6
6
  end
7
-
8
- protected
9
-
10
- # Limits search results just to GenericFiles and collections
11
- # @param solr_parameters the current solr parameters
12
- # @param user_parameters the current user-subitted parameters
13
- def only_generic_files_and_collections(solr_parameters, user_parameters)
14
- solr_parameters[:fq] ||= []
15
- solr_parameters[:fq] << "#{Solrizer.solr_name("has_model", :symbol)}:(\"GenericFile\" \"Collection\")"
16
- end
17
7
  end
18
8
  end
@@ -4,16 +4,13 @@ module Sufia
4
4
  include Hydra::CollectionsControllerBehavior
5
5
 
6
6
  included do
7
- include Blacklight::Catalog::SearchContext
8
- include BlacklightAdvancedSearch::ParseBasicQ
9
- include BlacklightAdvancedSearch::Controller
10
7
  include Sufia::Breadcrumbs
11
8
 
12
9
  before_filter :filter_docs_with_read_access!, except: :show
13
10
  before_filter :has_access?, except: :show
14
11
  before_filter :build_breadcrumbs, only: [:edit, :show]
15
12
 
16
- self.solr_search_params_logic += [:add_access_controls_to_solr_params]
13
+ self.search_params_logic += [:add_access_controls_to_solr_params, :add_advanced_parse_q_to_solr]
17
14
 
18
15
  layout "sufia-one-column"
19
16
  end
@@ -43,22 +40,23 @@ module Sufia
43
40
  Sufia::CollectionPresenter
44
41
  end
45
42
 
43
+ def collection_member_search_builder_class
44
+ ::SearchBuilder
45
+ end
46
+
46
47
  def collection_params
47
- params.require(:collection).permit(:title, :description, :members, part_of: [],
48
- contributor: [], creator: [], publisher: [], date_created: [], subject: [],
49
- language: [], rights: [], resource_type: [], identifier: [], based_near: [],
50
- tag: [], related_url: [])
48
+ form_class.model_attributes(
49
+ params.require(:collection).permit(:title, :description, :members, part_of: [],
50
+ contributor: [], creator: [], publisher: [], date_created: [], subject: [],
51
+ language: [], rights: [], resource_type: [], identifier: [], based_near: [],
52
+ tag: [], related_url: [])
53
+ )
51
54
  end
52
55
 
53
56
  def query_collection_members
54
57
  flash[:notice]=nil if flash[:notice] == "Select something first"
55
- query = params[:cq]
56
-
57
- #merge in the user parameters and the attach the collection query
58
- solr_params = (params.symbolize_keys).merge(q: query)
59
-
60
- # run the solr query to find the collections
61
- (@response, @member_docs) = get_search_results(solr_params)
58
+ params[:q] = params[:cq]
59
+ super
62
60
  end
63
61
 
64
62
  def after_destroy(id)
@@ -1,7 +1,7 @@
1
1
  module Sufia
2
2
  module DashboardControllerBehavior
3
3
  extend ActiveSupport::Concern
4
-
4
+
5
5
  included do
6
6
  include ActionView::Helpers::DateHelper
7
7
 
@@ -34,6 +34,8 @@ module Sufia
34
34
  @user = current_user
35
35
  @activity = current_user.get_all_user_activity(params[:since].blank? ? DateTime.now.to_i - Sufia.config.activity_to_show_default_seconds_since_now : params[:since].to_i)
36
36
  @notifications = current_user.mailbox.inbox
37
+ @incoming = ProxyDepositRequest.where(receiving_user_id: current_user.id).reject &:deleted_file?
38
+ @outgoing = ProxyDepositRequest.where(sending_user_id: current_user.id)
37
39
  end
38
40
 
39
41
  # Formats the user's activities into human-readable strings used for rendering JSON
@@ -13,6 +13,7 @@ module Sufia::FilesController
13
13
  protected
14
14
 
15
15
  def create_from_browse_everything(params)
16
+ Batch.find_or_create(params[:batch_id])
16
17
  params[:selected_files].each_pair do |index, file_info|
17
18
  next if file_info.blank? || file_info["url"].blank?
18
19
  create_file_from_url(file_info["url"], file_info["file_name"])
@@ -22,7 +23,7 @@ module Sufia::FilesController
22
23
 
23
24
  # Generic utility for creating GenericFile from a URL
24
25
  # Used in to import files using URLs from a file picker like browse_everything
25
- def create_file_from_url(url, file_name, batch_id=nil)
26
+ def create_file_from_url(url, file_name)
26
27
  generic_file = ::GenericFile.new(import_url: url, label: file_name).tap do |gf|
27
28
  actor = Sufia::GenericFile::Actor.new(gf, current_user)
28
29
  actor.create_metadata(params[:batch_id])
@@ -44,6 +44,7 @@ module Sufia
44
44
  files << filename
45
45
  end
46
46
  end
47
+ Batch.find_or_create(params[:batch_id]) unless files.empty?
47
48
  files.each do |filename|
48
49
  ingest_one(filename, has_directories)
49
50
  end
@@ -48,7 +48,7 @@ module Sufia
48
48
 
49
49
  # routed to /files/new
50
50
  def new
51
- @batch_id = Batch.create.id
51
+ @batch_id = Sufia::IdService.mint
52
52
  end
53
53
 
54
54
  # routed to /files/:id/edit
@@ -211,6 +211,9 @@ module Sufia
211
211
  end
212
212
 
213
213
  def process_file(file)
214
+
215
+ Batch.find_or_create(params[:batch_id])
216
+
214
217
  update_metadata_from_upload_screen
215
218
  actor.create_metadata(params[:batch_id])
216
219
  if actor.create_content(file, file.original_filename, file_path, file.content_type)