hydra-file-access 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 (169) hide show
  1. data/.gitignore +2 -0
  2. data/Rakefile +5 -0
  3. data/app/assets/images/hydra/powered_by_hydra.png +0 -0
  4. data/app/assets/images/hydra/search-button.png +0 -0
  5. data/app/assets/javascripts/date-picker/booking/index.html +368 -0
  6. data/app/assets/javascripts/date-picker/calendarHTML.txt +84 -0
  7. data/app/assets/javascripts/date-picker/css/datepicker.css +511 -0
  8. data/app/assets/javascripts/date-picker/css/demo.css +229 -0
  9. data/app/assets/javascripts/date-picker/index.html +798 -0
  10. data/app/assets/javascripts/date-picker/js/datepicker.js +2898 -0
  11. data/app/assets/javascripts/date-picker/js/datepicker.packed.js +1 -0
  12. data/app/assets/javascripts/date-picker/js/lang/ar.js +9 -0
  13. data/app/assets/javascripts/date-picker/js/lang/cs.js +9 -0
  14. data/app/assets/javascripts/date-picker/js/lang/da.js +10 -0
  15. data/app/assets/javascripts/date-picker/js/lang/de.js +10 -0
  16. data/app/assets/javascripts/date-picker/js/lang/en.js +9 -0
  17. data/app/assets/javascripts/date-picker/js/lang/eo.js +13 -0
  18. data/app/assets/javascripts/date-picker/js/lang/es.js +9 -0
  19. data/app/assets/javascripts/date-picker/js/lang/et.js +23 -0
  20. data/app/assets/javascripts/date-picker/js/lang/fi.js +7 -0
  21. data/app/assets/javascripts/date-picker/js/lang/fr.js +69 -0
  22. data/app/assets/javascripts/date-picker/js/lang/he.js +9 -0
  23. data/app/assets/javascripts/date-picker/js/lang/hu.js +9 -0
  24. data/app/assets/javascripts/date-picker/js/lang/id.js +9 -0
  25. data/app/assets/javascripts/date-picker/js/lang/it.js +11 -0
  26. data/app/assets/javascripts/date-picker/js/lang/kr.js +9 -0
  27. data/app/assets/javascripts/date-picker/js/lang/lt.js +8 -0
  28. data/app/assets/javascripts/date-picker/js/lang/lv.js +9 -0
  29. data/app/assets/javascripts/date-picker/js/lang/nl.js +9 -0
  30. data/app/assets/javascripts/date-picker/js/lang/no.js +9 -0
  31. data/app/assets/javascripts/date-picker/js/lang/pl.js +10 -0
  32. data/app/assets/javascripts/date-picker/js/lang/pt-br.js +11 -0
  33. data/app/assets/javascripts/date-picker/js/lang/pt.js +9 -0
  34. data/app/assets/javascripts/date-picker/js/lang/ru.js +11 -0
  35. data/app/assets/javascripts/date-picker/js/lang/se.js +9 -0
  36. data/app/assets/javascripts/date-picker/js/lang/si.js +9 -0
  37. data/app/assets/javascripts/date-picker/js/lang/tr.js +9 -0
  38. data/app/assets/javascripts/date-picker/language/index.html +240 -0
  39. data/app/assets/javascripts/date-picker/media/Thumbs.db +0 -0
  40. data/app/assets/javascripts/date-picker/media/backstripes.gif +0 -0
  41. data/app/assets/javascripts/date-picker/media/bg_header.jpg +0 -0
  42. data/app/assets/javascripts/date-picker/media/bullet1.gif +0 -0
  43. data/app/assets/javascripts/date-picker/media/bullet2.gif +0 -0
  44. data/app/assets/javascripts/date-picker/media/cal-grey.gif +0 -0
  45. data/app/assets/javascripts/date-picker/media/cal.gif +0 -0
  46. data/app/assets/javascripts/date-picker/media/gradient-e5e5e5-ffffff.gif +0 -0
  47. data/app/assets/javascripts/hydra/hydra-head.js +195 -0
  48. data/app/assets/javascripts/hydra/mediashelf.datepicker.js +39 -0
  49. data/app/assets/javascripts/hydra/mediashelf.placeholder.js +67 -0
  50. data/app/assets/javascripts/jquery.form.js +1076 -0
  51. data/app/assets/javascripts/jquery.ui.datepicker.js +1793 -0
  52. data/app/assets/javascripts/spin.min.js +2 -0
  53. data/app/assets/stylesheets/hydra/html_refactor.css +79 -0
  54. data/app/assets/stylesheets/hydra/hydrangea-split-button.css +18 -0
  55. data/app/assets/stylesheets/hydra/hydrangea.css +288 -0
  56. data/app/assets/stylesheets/hydra/ie-styles.css +149 -0
  57. data/app/assets/stylesheets/hydra/styles.css +946 -0
  58. data/app/assets/stylesheets/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  59. data/app/assets/stylesheets/redmond/images/ui-bg_flat_55_fbec88_40x100.png +0 -0
  60. data/app/assets/stylesheets/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png +0 -0
  61. data/app/assets/stylesheets/redmond/images/ui-bg_glass_85_dfeffc_1x400.png +0 -0
  62. data/app/assets/stylesheets/redmond/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  63. data/app/assets/stylesheets/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
  64. data/app/assets/stylesheets/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png +0 -0
  65. data/app/assets/stylesheets/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  66. data/app/assets/stylesheets/redmond/images/ui-icons_217bc0_256x240.png +0 -0
  67. data/app/assets/stylesheets/redmond/images/ui-icons_2e83ff_256x240.png +0 -0
  68. data/app/assets/stylesheets/redmond/images/ui-icons_469bdd_256x240.png +0 -0
  69. data/app/assets/stylesheets/redmond/images/ui-icons_6da8d5_256x240.png +0 -0
  70. data/app/assets/stylesheets/redmond/images/ui-icons_cd0a0a_256x240.png +0 -0
  71. data/app/assets/stylesheets/redmond/images/ui-icons_d8e7f3_256x240.png +0 -0
  72. data/app/assets/stylesheets/redmond/images/ui-icons_f9bd01_256x240.png +0 -0
  73. data/app/assets/stylesheets/redmond/jquery-ui-1.8.5.custom.css +572 -0
  74. data/app/controllers/hydra/application_controller.rb +5 -0
  75. data/app/controllers/hydra/file_assets_controller.rb +3 -0
  76. data/app/helpers/application_helper.rb +3 -0
  77. data/app/helpers/hydra/application_helper_behavior.rb +8 -0
  78. data/app/helpers/hydra/hydra_helper_behavior.rb +70 -0
  79. data/app/helpers/hydra_helper.rb +4 -0
  80. data/app/models/file_asset.rb +5 -0
  81. data/app/models/uses_default_partials.rb +23 -0
  82. data/app/views/_add_assets_links.html.erb +14 -0
  83. data/app/views/_user_util_links.html.erb +24 -0
  84. data/app/views/generic_content_objects/_contributor_form.html.erb +11 -0
  85. data/app/views/generic_content_objects/_description_form.html.erb +7 -0
  86. data/app/views/generic_content_objects/_edit_description.html.erb +23 -0
  87. data/app/views/generic_content_objects/_new.html.erb +0 -0
  88. data/app/views/generic_content_objects/_show_description.html.erb +41 -0
  89. data/app/views/generic_contents/_edit.html.erb +10 -0
  90. data/app/views/generic_contents/_index.html.erb +21 -0
  91. data/app/views/generic_contents/_show.html.erb +6 -0
  92. data/app/views/generic_contents/_show_content.html.erb +7 -0
  93. data/app/views/generic_images/_edit.html.erb +36 -0
  94. data/app/views/generic_images/_index.html.erb +24 -0
  95. data/app/views/generic_images/_show.html.erb +13 -0
  96. data/app/views/generic_images/_show_all.html.erb +14 -0
  97. data/app/views/generic_images/_show_content.html.erb +7 -0
  98. data/app/views/hydra/file_assets/_asset_saved_flash.html.erb +2 -0
  99. data/app/views/hydra/file_assets/_deletable_result.html.erb +5 -0
  100. data/app/views/hydra/file_assets/_file_assets_form.html.erb +11 -0
  101. data/app/views/hydra/file_assets/_index.html.erb +29 -0
  102. data/app/views/hydra/file_assets/_new.html.erb +6 -0
  103. data/app/views/hydra/file_assets/_result.html.erb +11 -0
  104. data/app/views/hydra/file_assets/index.html.erb +5 -0
  105. data/app/views/hydra/permissions/_edit_person_permissions.html.erb +30 -0
  106. data/app/views/hydra/permissions/_index.html.erb +46 -0
  107. data/app/views/hydra/permissions/_new.html.erb +14 -0
  108. data/app/views/hydra/permissions/_permissions_form.html.erb +23 -0
  109. data/app/views/hydra/permissions/index.html.erb +1 -0
  110. data/app/views/hydra/permissions/new.html.erb +1 -0
  111. data/app/views/mods_assets/_additional_info_form.html.erb +44 -0
  112. data/app/views/mods_assets/_contributor_form.html.erb +14 -0
  113. data/app/views/mods_assets/_edit.html.erb +10 -0
  114. data/app/views/mods_assets/_edit_description.html.erb +73 -0
  115. data/app/views/mods_assets/_edit_journal.html.erb +57 -0
  116. data/app/views/mods_assets/_index.html.erb +1 -0
  117. data/app/views/mods_assets/_index_list.html.erb +37 -0
  118. data/app/views/mods_assets/_index_table.html.erb +7 -0
  119. data/app/views/mods_assets/_progress_box.html.erb +82 -0
  120. data/app/views/mods_assets/_publication_form.html.erb +13 -0
  121. data/app/views/mods_assets/_show.html.erb +39 -0
  122. data/app/views/mods_assets/_show_additional_info.html.erb +17 -0
  123. data/app/views/mods_assets/_show_contributors.html.erb +7 -0
  124. data/app/views/mods_assets/_show_description.html.erb +35 -0
  125. data/app/views/mods_assets/_show_file_assets.html.erb +22 -0
  126. data/app/views/mods_assets/_show_journal.html.erb +42 -0
  127. data/app/views/mods_assets/_show_permissions.html.erb +15 -0
  128. data/app/views/mods_assets/_show_publication.html.erb +8 -0
  129. data/app/views/shared/_delete_asset_confirmation.html.erb +17 -0
  130. data/config/jetty.yml +7 -0
  131. data/hydra-file-access.gemspec +39 -0
  132. data/lib/hydra-file-access.rb +15 -0
  133. data/lib/hydra/assets.rb +5 -0
  134. data/lib/hydra/assets_controller_helper.rb +122 -0
  135. data/lib/hydra/controller/assets_controller_behavior.rb +153 -0
  136. data/lib/hydra/controller/file_assets_behavior.rb +140 -0
  137. data/lib/hydra/file_access/engine.rb +12 -0
  138. data/lib/hydra/file_assets.rb +11 -0
  139. data/lib/hydra/submission_workflow.rb +139 -0
  140. data/lib/hydra/ui.rb +6 -0
  141. data/spec/.gitignore +1 -0
  142. data/spec/controllers/file_assets_controller_spec.rb +180 -0
  143. data/spec/fixtures/small_file.txt +1 -0
  144. data/spec/helpers/access_controls_evaluation_spec.rb +19 -0
  145. data/spec/helpers/assets_controller_helper_spec.rb +63 -0
  146. data/spec/helpers/file_assets_helper_spec.rb +116 -0
  147. data/spec/helpers/hydra_helper_spec.rb +21 -0
  148. data/spec/helpers/hydra_model_methods_spec.rb +88 -0
  149. data/spec/integration/file_asset_spec.rb +68 -0
  150. data/spec/lib/hydra_submission_workflow_spec.rb +141 -0
  151. data/spec/models/file_asset_spec.rb +25 -0
  152. data/spec/spec_helper.rb +27 -0
  153. data/spec/support/Gemfile +12 -0
  154. data/spec/support/app/models/generic_content.rb +26 -0
  155. data/spec/support/app/models/sample.rb +33 -0
  156. data/spec/support/app/models/solr_document.rb +5 -0
  157. data/spec/support/db/migrate/20111101221803_create_searches.rb +16 -0
  158. data/spec/support/lib/generators/test_app_generator.rb +39 -0
  159. data/spec/support/matchers/helper_matcher.rb +14 -0
  160. data/spec/support/matchers/solr_matchers.rb +60 -0
  161. data/spec/support/spec/factories/users.rb +11 -0
  162. data/spec/support/spec/fixtures/hydra_test_generic_content.foxml.xml +138 -0
  163. data/spec/support/spec/fixtures/hydrangea_fixture_file_asset1.foxml.xml +4946 -0
  164. data/spec/support/spec/fixtures/hydrangea_fixture_mods_article1.foxml.xml +234 -0
  165. data/spec/support/spec/fixtures/hydrangea_fixture_mods_article2.foxml.xml +177 -0
  166. data/spec/support/spec/fixtures/hydrangea_fixture_mods_article3.foxml.xml +170 -0
  167. data/spec/support/spec/fixtures/hydrangea_fixture_uploaded_svg1.foxml.xml +676 -0
  168. data/tasks/rspec.rake +55 -0
  169. metadata +516 -0
@@ -0,0 +1,5 @@
1
+ class ApplicationController < ActionController::Base
2
+ def current_ability
3
+ @current_ability ||= Ability.new(current_user, session)
4
+ end
5
+ end
@@ -0,0 +1,3 @@
1
+ class Hydra::FileAssetsController < ApplicationController
2
+ include Hydra::Controller::FileAssetsBehavior
3
+ end
@@ -0,0 +1,3 @@
1
+ module ApplicationHelper
2
+ include Hydra::ApplicationHelperBehavior
3
+ end
@@ -0,0 +1,8 @@
1
+ module Hydra
2
+ module ApplicationHelperBehavior
3
+
4
+ def application_name
5
+ 'A Hydra Head'
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,70 @@
1
+ require "hydra/submission_workflow"
2
+
3
+ module Hydra::HydraHelperBehavior
4
+ include Hydra::SubmissionWorkflow
5
+
6
+
7
+ def edit_and_browse_links
8
+ result = ""
9
+ if params[:action] == "edit"
10
+ result << "<a href=\"#{catalog_path(@document[:id], :viewing_context=>"browse")}\" class=\"browse toggle\">Switch to browse view</a>"
11
+ else
12
+ result << "<a href=\"#{edit_catalog_path(@document[:id], :viewing_context=>"edit")}\" class=\"edit toggle\">Switch to edit view</a>"
13
+ end
14
+ return result.html_safe
15
+ end
16
+
17
+ def grouping_facet
18
+ fields = Hash[sort_fields]
19
+ case h(params[:sort])
20
+ when fields['date -']
21
+ 'year_facet'
22
+ when fields['date +']
23
+ 'year_facet'
24
+ when fields['document type']
25
+ 'medium_t'
26
+ when fields['location']
27
+ 'series_facet'
28
+ else
29
+ nil
30
+ end
31
+ end
32
+
33
+ def document_fedora_show_html_title
34
+ @document.datastreams["descMetadata"].title_values.first
35
+ end
36
+
37
+
38
+ def render_previous_workflow_steps
39
+ previous_show_partials(params[:wf_step]).map{|partial| render partial}.join
40
+ end
41
+
42
+ def render_submission_workflow_step
43
+ if params.has_key?(:wf_step)
44
+ render workflow_partial_for_step(params[:wf_step])
45
+ else
46
+ render workflow_partial_for_step(first_step_in_workflow)
47
+ end
48
+ end
49
+
50
+
51
+ def render_all_workflow_steps
52
+ all_edit_partials.map{|partial| render partial}.join
53
+ end
54
+
55
+ def submit_name
56
+ if session[:scripts]
57
+ return "Save"
58
+ elsif params[:new_asset]
59
+ return "Continue"
60
+ else
61
+ return "Save and Continue"
62
+ end
63
+ end
64
+
65
+ ### TODO this method is also in Hydra::Controller -- DRY it out
66
+ def user_key
67
+ current_user.user_key
68
+ end
69
+
70
+ end
@@ -0,0 +1,4 @@
1
+ module HydraHelper
2
+ include Hydra::HydraHelperBehavior
3
+ end
4
+
@@ -0,0 +1,5 @@
1
+ # model for a FileAsset ActiveFedora object
2
+ # a file asset is a generic notion of a file, which could have, for example, image or text or video behaviors.
3
+ class FileAsset < ActiveFedora::Base
4
+ include Hydra::Models::FileAsset
5
+ end
@@ -0,0 +1,23 @@
1
+ # TODO: Move TO test_support
2
+ # this model exists largely to exercise the default partials for models that don't have their own
3
+ # that is, if an (active)fedora object uses the ModsAsset model, then hydra-head will use partials in views/mods_assets to display those objects
4
+ # however, if an (active)fedora object uses a model without its own partials in the views folder, then hydra-head will use views/catalog/xxx to display those objects.
5
+ # a Fedora object for the Hypatia SET hydra content type
6
+ class UsesDefaultPartials < ActiveFedora::Base
7
+
8
+ def initialize
9
+ ActiveSupport::Deprecation.warn("UsesDefaultPartials is for testing only. It will be moved into test_support")
10
+ super
11
+ end
12
+
13
+ #has_metadata :name => "descMetadata", :type => Hydra::Datastream::ModsGenericContent
14
+
15
+ # declares a rightsMetadata datastream with type Hydra::Datastream::RightsMetadata
16
+ # basically, it is another expression of
17
+ # has_metadata :name => "rightsMetadata", :type => Hydra::Datastream::RightsMetadata
18
+ include Hydra::ModelMixins::CommonMetadata
19
+
20
+ # adds helpful methods for basic hydra objects.
21
+ include Hydra::ModelMethods
22
+
23
+ end
@@ -0,0 +1,14 @@
1
+ <div id="select-item-box">
2
+ <a class="add-new-asset" href="#">Add a New Asset</a>
3
+ <ul id="select-item-list">
4
+ <li>
5
+ <%= link_to 'Add a Basic MODS Asset', new_hydra_asset_path(:content_type => 'mods_asset'), :class => 'create_asset' %>
6
+ </li>
7
+ <li>
8
+ <%= link_to 'Add an Image', new_hydra_asset_path(:content_type => 'generic_image'), :class => 'create_asset' %>
9
+ </li>
10
+ <li>
11
+ <%= link_to 'Add Generic Content', new_hydra_asset_path(:content_type => 'generic_content'), :class => 'create_asset' %>
12
+ </li>
13
+ </ul>
14
+ </div>
@@ -0,0 +1,24 @@
1
+ <% if current_user %>
2
+
3
+ <%= render :partial=>"/add_assets_links" %>
4
+
5
+ <%= link_to "Log Out", destroy_user_session_path %>
6
+ [
7
+ <%= link_to current_user.to_s, edit_user_registration_path %>
8
+ ]
9
+ |
10
+ <%= link_to 'Your Bookmarks', bookmarks_path %>
11
+ |
12
+ <%= link_to "Saved Searches", saved_searches_path %>
13
+ <% else %>
14
+
15
+ <%= render :partial=>"/add_assets_links" %>
16
+
17
+ <%= link_to 'Login', new_user_session_path %>
18
+
19
+ <% end %>
20
+
21
+ |
22
+ <%= link_to "Selected Items", folder_index_path %> (<span id="folder_number"><%= "#{session[:folder_document_ids] ? session[:folder_document_ids].length : 0}" %></span>)
23
+ |
24
+ <%= link_to "Search History", search_history_path %>
@@ -0,0 +1,11 @@
1
+ <%= form_tag(url_for(:controller=>"contributors",:action=>"update", :id=>params[:id])) do -%>
2
+ <fieldset id="contributors_fields">
3
+ <legend>Authors</legend>
4
+ <p class="legend-caption">An individual or organizational author of work.</p>
5
+ <%= render "contributors/index" %>
6
+ <%= hidden_field_tag(:wf_step, params[:wf_step]) %>
7
+ <%= hidden_field_tag(:content_type,"generic_content") %>
8
+ <%= submit_tag("Add Another Author", :name=>"add_another_author") %>
9
+ <%= submit_tag(submit_name, :name=>"continue") %>
10
+ </fieldset>
11
+ <%- end -%>
@@ -0,0 +1,7 @@
1
+ <%= form_tag(url_for(:controller=>"hydra/assets", :action=>"update", :id=>params[:id]), :id=>"descriptive-metadata", :"data-resourceType"=>"mods_asset", :"accept-charset"=>"utf-8") do -%>
2
+ <%= hidden_field_tag("_method","put") %>
3
+ <%= render "generic_content_objects/edit_description" %>
4
+ <%= hidden_field_tag(:wf_step, params[:wf_step]) %>
5
+ <%= hidden_field_tag(:content_type,"generic_content") %>
6
+ <%= submit_tag("Continue", :name=>"continue") %>
7
+ <%- end -%>
@@ -0,0 +1,23 @@
1
+ <input type="hidden" name="_method" value="put"/>
2
+ <input class="content_type" type="hidden" name="content_type" value="mods_asset" />
3
+
4
+ <p id="title_field" class="fedora-text-field"><%= fedora_field_label("descMetadata", [:title_info, :main_title], "Title: <span class=\"required-note\">required</span>".html_safe) %>
5
+ <%= fedora_text_field(@document_fedora,"descMetadata", [:title_info, :main_title], :multiple=>false, :required=>true) %></p>
6
+ <p id="language_field" class="fedora-text-field"><%= fedora_field_label("descMetadata", [:title_info, :language], "Language:") %>
7
+ <%= fedora_text_field(@document_fedora, "descMetadata", [:title_info, :language], :multiple=>false, :required=>false ) %></p>
8
+
9
+ <fieldset id="contributor_fields">
10
+ <legend>Contributors</legend>
11
+ <p class="legend-caption">An individual or organizational contributor to the work.</p>
12
+ <%= render :partial => "contributors/index" %>
13
+ </fieldset>
14
+
15
+ <p id="abstract_field" class="fedora-text-area"><%= fedora_field_label("descMetadata", [:abstract], "Abstract:") %>
16
+ <%= fedora_text_area(@document_fedora,"descMetadata", [:abstract], :multiple=>false, :required=>false) %></p>
17
+
18
+ <fieldset id="topic_fields">
19
+ <legend>Topics</legend>
20
+ <p class="legend-caption">Add topics that describe the work.</p>
21
+ <p class="fedora-text-field"><%= fedora_text_field(@document_fedora,"descMetadata", [:subject, :topic], :multiple=>true, :required=>false) %></p>
22
+ <p class="fedora-text-field-add"><%= fedora_text_field_insert_link "descMetadata", [:subject, :topic] %></p>
23
+ </fieldset>
File without changes
@@ -0,0 +1,41 @@
1
+ <div id="contributor_fields">
2
+ <h3>Contributors</h3>
3
+ <ol>
4
+ <%= render :partial=>"contributors/show_person", :collection=>@document_fedora.datastreams["descMetadata"].find_by_terms(:person) %>
5
+ <%= render :partial=>"contributors/show_organization", :collection=>@document_fedora.datastreams["descMetadata"].find_by_terms(:organization) %>
6
+ <%= render :partial=>"contributors/show_conference", :collection=>@document_fedora.datastreams["descMetadata"].find_by_terms(:conference) %>
7
+ </ol>
8
+ </div>
9
+
10
+ <%= render :partial => "#{content_type}s/show_content" %>
11
+
12
+ <dl id="metadata_view">
13
+ <% unless get_values_from_datastream(@document_fedora,"descMetadata", [:title_info, :main_title]).first.empty? %>
14
+ <dt>Title</dt>
15
+ <dd class="title">
16
+ <%= get_values_from_datastream(@document_fedora,"descMetadata", [:title_info, :main_title]) %>
17
+ </dd>
18
+ <% end %>
19
+
20
+ <% unless get_values_from_datastream(@document_fedora,"descMetadata", [:title_info, :language]).first.empty? %>
21
+ <dt>Language</dt>
22
+ <dd class="language">
23
+ <%= get_values_from_datastream(@document_fedora,"descMetadata", [:title_info, :language]) %>
24
+ </dd>
25
+ <% end %>
26
+
27
+ <% unless get_values_from_datastream(@document_fedora,"descMetadata", [:abstract]).first.empty? %>
28
+ <dt>Abstract</dt>
29
+ <dd id="abstract">
30
+ <%= get_values_from_datastream(@document_fedora,"descMetadata", [:abstract]) %>
31
+ </dd>
32
+ <% end %>
33
+
34
+ <% unless get_values_from_datastream(@document_fedora,"descMetadata", [:subject, :topic]).first.empty? %>
35
+ <dt>Topic(s)</dt>
36
+ <dd id="topic_tag" class="topic_tag">
37
+ <%= get_values_from_datastream(@document_fedora,"descMetadata", [:subject, :topic]) %>
38
+ </dd>
39
+ <% end %>
40
+
41
+ </dl>
@@ -0,0 +1,10 @@
1
+ <% if !session[:scripts] %>
2
+ <%= render_previous_workflow_steps.html_safe %>
3
+ <%= render_submission_workflow_step -%>
4
+ <% else %>
5
+ <%= render_all_workflow_steps.html_safe %>
6
+ <div class="all-steps-actions">
7
+ <button id="all_save_continue" name="all_save_continue">Save and Continue Editing</button>
8
+ <button id="all_save_finish" name="all_save_finish">Save and Finish</button>
9
+ </div>
10
+ <% end %>
@@ -0,0 +1,21 @@
1
+ <tr class="document <%= cycle("even","odd") %>">
2
+ <td>
3
+ <%= link_to_document(document, :label => blacklight_config.show.heading.to_sym, :counter => (counter + 1 + @response.params[:start].to_i)) %>
4
+ </td>
5
+ <td>
6
+ <% creator = document.get_person_from_role("Creator") %>
7
+ <%= [creator[:last], creator[:first]].join(", ") unless creator.nil? %>
8
+ </td>
9
+ <td>
10
+ <%= DateTime.parse(document.fetch(:system_create_dt, "")).to_time %>
11
+ </td>
12
+ <td>
13
+ <%= document.document_type(blacklight_config.show.display_type) %>
14
+ </td>
15
+ <td>
16
+ <%= get_file_asset_count(document)%>
17
+ </td>
18
+ <td>
19
+ Created
20
+ </td>
21
+ </tr>
@@ -0,0 +1,6 @@
1
+ <div class="document_viewer" id="cover_container">
2
+
3
+ <h2 class="section-title">Description</h2>
4
+ <%= render :partial => "generic_content_objects/show_description", :locals => {:content_type => "generic_content"} %>
5
+
6
+ </div>
@@ -0,0 +1,7 @@
1
+ <dl id="generic_content_metadata_view" class="type-metadata">
2
+ <dt>View Content</dt>
3
+ <dd class="screen-image">
4
+ <% source_url = datastream_disseminator_url(params[:id], "content") %>
5
+ <%= link_to "Access Online", source_url, :class => "fbImage single-image" %>
6
+ </dd>
7
+ </dl>
@@ -0,0 +1,36 @@
1
+ <div class="document_viewer" id="cover_container">
2
+ <div class="multipleEdit">
3
+
4
+ <h2 class="section-title">Describe the Image</h2>
5
+ <div id="description_editor">
6
+ <%= render :partial => "generic_content_objects/edit_description", :locals => {:content_type => "generic_image"} %>
7
+ </div>
8
+
9
+ <h2 class="section-title">Upload Content</h2>
10
+ <div id="uploads">
11
+ <%= render :partial => "hydra/file_assets/index", :locals => { :file_assets => @file_assets} %>
12
+ </div>
13
+
14
+ <h2 class="section-title">Set Permissions</h2>
15
+ <div id="permissions_editor">
16
+ <%= render :partial => "hydra/permissions/index", :locals => {:document => document, :asset_id=>params[:id]} %>
17
+ </div>
18
+
19
+ <%#
20
+ // This hidden form really belongs elsewhere, but putting it inside of an
21
+ // accordion section un-hides it, so I stuck it here for now. -MZ
22
+ %>
23
+ <form id="new_contributor" action="<%=hydra_asset_contributors_path(:asset_id=>params[:id]) %>" method="post">
24
+ <input class="content_type" type="hidden" name="content_type" value="generic_content" />
25
+ <p><label for="contributor_type">Contributor Type</label>
26
+ <select id="contributor_type" name="contributor_type">
27
+ <option value="person">Person</option>
28
+ <option value="organization">Organization</option>
29
+ <option value="conference">Conference</option>
30
+ </select></p>
31
+ <p><input type="submit" value="Add Contributor" /></p>
32
+ </form>
33
+ </div>
34
+ </div>
35
+
36
+ <%= async_load_tag(generic_content_object_path(params[:id], :layout=>"false", :method => ":get"), 'uploads') %>
@@ -0,0 +1,24 @@
1
+ <tr class="document <%= cycle("even","odd") %>">
2
+ <td>
3
+ <img width="75" src="<%= datastream_disseminator_url(document[:id], "thumbnail") %>" alt="thumb">
4
+
5
+ <%= link_to_document(document, :label => blacklight_config.show.heading.to_sym, :counter => (counter + 1 + @response.params[:start].to_i)) %>
6
+
7
+ </td>
8
+ <td>
9
+ <% creator = document.get_person_from_role("Creator") %>
10
+ <%= [creator[:last], creator[:first]].join(", ") unless creator.nil? %>
11
+ </td>
12
+ <td>
13
+ <%= DateTime.parse(document.fetch(:system_create_dt, "")).to_time %>
14
+ </td>
15
+ <td>
16
+ <%= document.document_type(blacklight_config.show.display_type) %>
17
+ </td>
18
+ <td>
19
+ <%= get_file_asset_count(document)%>
20
+ </td>
21
+ <td>
22
+ Created
23
+ </td>
24
+ </tr>
@@ -0,0 +1,13 @@
1
+ <div class="document_viewer" id="cover_container">
2
+
3
+ <h2 class="section-title">Description</h2>
4
+ <div class="description-view">
5
+ <%= render :partial => "generic_content_objects/show_description", :locals => {:content_type => "generic_image" } %>
6
+ </div>
7
+
8
+ <h2 class="section-title">Images</h2>
9
+ <div class="images-view">
10
+ <%= render :partial => "generic_images/show_all" %>
11
+ </div>
12
+
13
+ </div>
@@ -0,0 +1,14 @@
1
+ <div id="max_and_thumb">
2
+ <dl>
3
+ <dt>Content</dt>
4
+ <dd><%= disseminator_link params[:id], "content" %></dd>
5
+ <dt>Original</dt>
6
+ <dd><%= disseminator_link params[:id], "original" %></dd>
7
+ <dt>Max</dt>
8
+ <dd><%= disseminator_link params[:id], "max" %></dd>
9
+ <dt>Screen</dt>
10
+ <dd><%= disseminator_link params[:id], "screen" %></dd>
11
+ <dt>Thumbnail</dt>
12
+ <dd><%= disseminator_link params[:id], "thumbnail" %></dd>
13
+ </dl>
14
+ </div>
@@ -0,0 +1,7 @@
1
+ <dl id="generic_image_metadata_view" class="type-metadata">
2
+ <dt>Screen-sized Image</dt>
3
+ <dd class="screen-image">
4
+ <% source_url = datastream_disseminator_url(params[:id], "screen") %>
5
+ <%= link_to image_tag( source_url, :width => "500", :alt => "screen-size image" ), source_url, :class => "fbImage", :id => "single_image" %>
6
+ </dd>
7
+ </dl>
@@ -0,0 +1,2 @@
1
+ The file <%=file_asset.label%> has been saved in <%= link_to(file_asset.pid, asset_url(file_asset.pid)) %>.
2
+
@@ -0,0 +1,5 @@
1
+ <% if deletable_result["is_part_of_s"] && deletable_result["is_part_of_s"].length == 1 && deletable_result["is_part_of_s"][0].match(/#{@container.pid}$/) %>
2
+ <li>
3
+ <%= deletable_result["id"] + " (" + deletable_result[solr_name("title", :text)].first + ")" %>
4
+ </li>
5
+ <% end %>
@@ -0,0 +1,11 @@
1
+ <%- if params.has_key?(:number_of_files) or !@file_assets.empty? -%>
2
+ <%= render :partial => "hydra/file_assets/index", :locals => { :file_assets => @file_assets } %>
3
+ <%- end -%>
4
+ <%= form_tag(hydra_asset_file_assets_path(:asset_id => params[:asset_id] || params[:id]), :class => "step") do -%>
5
+ <%= label_tag "number_of_files", "Number of files add" %>
6
+ <%= select_tag("number_of_files", options_for_select((0...11).to_a) ) -%>
7
+ <%= hidden_field_tag(:wf_step, params[:wf_step], :id => "num_files_wf_step") %>
8
+ <%= hidden_field_tag(:new_asset, true, :id => "num_files_new_asset") if params[:new_asset] %>
9
+ <%= hidden_field_tag("id",params[:id], :id => "file_assets_id")%>
10
+ <%= submit_tag(submit_name, :name=>"continue")%>
11
+ <%- end -%>