curate 0.0.1 → 0.1.0

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 (250) hide show
  1. data/LICENSE +14 -0
  2. data/app/controllers/application_controller.rb +69 -0
  3. data/app/controllers/catalog_controller.rb +336 -0
  4. data/app/controllers/classify_concerns_controller.rb +29 -0
  5. data/app/controllers/common_objects_controller.rb +27 -0
  6. data/app/controllers/curation_concern/base_controller.rb +26 -0
  7. data/app/controllers/curation_concern/generic_files_controller.rb +82 -0
  8. data/app/controllers/dashboard_controller.rb +85 -0
  9. data/app/controllers/downloads_controller.rb +22 -0
  10. data/app/controllers/errors_controller.rb +19 -0
  11. data/app/controllers/help_requests_controller.rb +38 -0
  12. data/app/controllers/terms_of_service_agreements_controller.rb +44 -0
  13. data/app/controllers/welcome_controller.rb +14 -0
  14. data/app/helpers/application_helper.rb +89 -0
  15. data/app/helpers/blacklight_helper.rb +19 -0
  16. data/app/helpers/common_objects_helper.rb +5 -0
  17. data/app/inputs/multi_value_input.rb +71 -0
  18. data/app/models/access_right.rb +53 -0
  19. data/app/models/classify_concern.rb +30 -0
  20. data/app/models/contributor_agreement.rb +58 -0
  21. data/app/models/digital_object_identifier.rb +83 -0
  22. data/app/models/doi_config.rb +26 -0
  23. data/app/models/help_request.rb +34 -0
  24. data/app/models/mint_doi.rb +51 -0
  25. data/app/models/mint_purl.rb +40 -0
  26. data/app/models/object_access.rb +17 -0
  27. data/app/models/purl.rb +18 -0
  28. data/app/models/purl_config.rb +10 -0
  29. data/app/models/repo_object.rb +24 -0
  30. data/app/models/solr_document.rb +35 -0
  31. data/app/repository_datastreams/file_content_datastream.rb +36 -0
  32. data/app/repository_models/curation_concern/embargoable.rb +43 -0
  33. data/app/repository_models/curation_concern/with_access_right.rb +31 -0
  34. data/app/repository_models/generic_file.rb +36 -0
  35. data/app/services/anti_virus_scanner.rb +28 -0
  36. data/app/services/curation_concern.rb +22 -0
  37. data/app/services/curation_concern/base_actor.rb +48 -0
  38. data/app/services/curation_concern/generic_file_actor.rb +38 -0
  39. data/app/validators/future_date_validator.rb +19 -0
  40. data/app/views/_footer.html.erb +19 -0
  41. data/app/views/_ga.html.erb +6 -0
  42. data/app/views/_logo.html.erb +34 -0
  43. data/app/views/_masthead.html.erb +34 -0
  44. data/app/views/catalog/_bookmark_control.html.erb +25 -0
  45. data/app/views/catalog/_bookmark_form.html.erb +8 -0
  46. data/app/views/catalog/_citation.html.erb +11 -0
  47. data/app/views/catalog/_constraints.html.erb +6 -0
  48. data/app/views/catalog/_constraints_element.html.erb +20 -0
  49. data/app/views/catalog/_delete_partials/_default.html.erb +29 -0
  50. data/app/views/catalog/_did_you_mean.html.erb +10 -0
  51. data/app/views/catalog/_document.html.erb +19 -0
  52. data/app/views/catalog/_document_list.html.erb +2 -0
  53. data/app/views/catalog/_edit_partials/_default.html.erb +58 -0
  54. data/app/views/catalog/_edit_partials/_default_details.html.erb +13 -0
  55. data/app/views/catalog/_email_form.html.erb +11 -0
  56. data/app/views/catalog/_facet_layout.html.erb +12 -0
  57. data/app/views/catalog/_facet_limit.html.erb +19 -0
  58. data/app/views/catalog/_facet_selected.html.erb +12 -0
  59. data/app/views/catalog/_facets.html.erb +5 -0
  60. data/app/views/catalog/_folder_control.html.erb +12 -0
  61. data/app/views/catalog/_home.html.erb +2 -0
  62. data/app/views/catalog/_home_text.html.erb +10 -0
  63. data/app/views/catalog/_index_default.html.erb +11 -0
  64. data/app/views/catalog/_index_partials/_default_group.html.erb +37 -0
  65. data/app/views/catalog/_marc_view.html.erb +33 -0
  66. data/app/views/catalog/_opensearch_response_metadata.html.erb +2 -0
  67. data/app/views/catalog/_previous_next_doc.html.erb +6 -0
  68. data/app/views/catalog/_refworks_form.html.erb +7 -0
  69. data/app/views/catalog/_results_pagination.html.erb +6 -0
  70. data/app/views/catalog/_search_form.html.erb +20 -0
  71. data/app/views/catalog/_show_default.html.erb +9 -0
  72. data/app/views/catalog/_show_partials/_default.html.erb +22 -0
  73. data/app/views/catalog/_show_partials/_default_details.html.erb +15 -0
  74. data/app/views/catalog/_show_partials/_facets.html.erb +52 -0
  75. data/app/views/catalog/_show_sidebar.html.erb +1 -0
  76. data/app/views/catalog/_show_tools.html.erb +46 -0
  77. data/app/views/catalog/_sms_form.html.erb +21 -0
  78. data/app/views/catalog/_sort_and_per_page.html.erb +38 -0
  79. data/app/views/catalog/_uva_tabs.html.erb +10 -0
  80. data/app/views/catalog/about.html.erb +0 -0
  81. data/app/views/catalog/citation.html.erb +1 -0
  82. data/app/views/catalog/email.erb +1 -0
  83. data/app/views/catalog/endnote.endnote.erb +1 -0
  84. data/app/views/catalog/index.atom.builder +109 -0
  85. data/app/views/catalog/index.html.erb +55 -0
  86. data/app/views/catalog/index.rss.builder +19 -0
  87. data/app/views/catalog/librarian_view.html.erb +3 -0
  88. data/app/views/catalog/opensearch.json.erb +0 -0
  89. data/app/views/catalog/opensearch.xml.builder +10 -0
  90. data/app/views/catalog/send_email_record.erb +0 -0
  91. data/app/views/catalog/show.endnote.erb +1 -0
  92. data/app/views/catalog/show.html.erb +40 -0
  93. data/app/views/catalog/show.refworks.erb +1 -0
  94. data/app/views/catalog/sms.erb +1 -0
  95. data/app/views/classify_concerns/new.html.erb +24 -0
  96. data/app/views/common_objects/_generic_file.html.erb +0 -0
  97. data/app/views/common_objects/_senior_thesis.html.erb +2 -0
  98. data/app/views/common_objects/show.html.erb +11 -0
  99. data/app/views/common_objects/show_stub_information.html.erb +13 -0
  100. data/app/views/curation_concern/_content_license.html.erb +16 -0
  101. data/app/views/curation_concern/_contributor_agreement.html.erb +27 -0
  102. data/app/views/curation_concern/_doi.html.erb +43 -0
  103. data/app/views/curation_concern/_media_display.html.erb +1 -0
  104. data/app/views/curation_concern/_permission.html.erb +39 -0
  105. data/app/views/curation_concern/_related_files.html.erb +46 -0
  106. data/app/views/curation_concern/generic_files/_attributes.html.erb +63 -0
  107. data/app/views/curation_concern/generic_files/_form.html.erb +57 -0
  108. data/app/views/curation_concern/generic_files/edit.html.erb +5 -0
  109. data/app/views/curation_concern/generic_files/new.html.erb +5 -0
  110. data/app/views/curation_concern/generic_files/show.html.erb +12 -0
  111. data/app/views/curation_concern/senior_theses/_attributes.html.erb +13 -0
  112. data/app/views/curation_concern/senior_theses/_form.html.erb +88 -0
  113. data/app/views/curation_concern/senior_theses/edit.html.erb +15 -0
  114. data/app/views/curation_concern/senior_theses/new.html.erb +14 -0
  115. data/app/views/curation_concern/senior_theses/show.html.erb +18 -0
  116. data/app/views/dashboard/_constraints.html.erb +22 -0
  117. data/app/views/dashboard/_did_you_mean.html.erb +26 -0
  118. data/app/views/dashboard/_document_list.html.erb +20 -0
  119. data/app/views/dashboard/_facet_layout.html.erb +27 -0
  120. data/app/views/dashboard/_facet_limit.html.erb +35 -0
  121. data/app/views/dashboard/_facet_pagination.html.erb +25 -0
  122. data/app/views/dashboard/_facet_selected.html.erb +28 -0
  123. data/app/views/dashboard/_facets.html.erb +22 -0
  124. data/app/views/dashboard/_index_partials/_default_group.html.erb +37 -0
  125. data/app/views/dashboard/_index_partials/_list_files.html.erb +66 -0
  126. data/app/views/dashboard/_index_partials/_thumbnail_display.html.erb +0 -0
  127. data/app/views/dashboard/_results_pagination.html.erb +22 -0
  128. data/app/views/dashboard/_search_form.html.erb +36 -0
  129. data/app/views/dashboard/_show_partials/_default.html.erb +38 -0
  130. data/app/views/dashboard/_show_partials/_default_details.html.erb +31 -0
  131. data/app/views/dashboard/_show_partials/_facets.html.erb +103 -0
  132. data/app/views/dashboard/_sort_and_per_page.html.erb +18 -0
  133. data/app/views/dashboard/facet.html.erb +38 -0
  134. data/app/views/dashboard/get_related_file.html.erb +4 -0
  135. data/app/views/dashboard/index.html.erb +60 -0
  136. data/app/views/errors/401.html.erb +5 -0
  137. data/app/views/errors/404.html.erb +16 -0
  138. data/app/views/errors/500.html.erb +10 -0
  139. data/app/views/help_requests/new.html.erb +60 -0
  140. data/app/views/layouts/application.html.erb +14 -0
  141. data/app/views/layouts/boilerplate.html.erb +28 -0
  142. data/app/views/layouts/common_objects.html.erb +45 -0
  143. data/app/views/layouts/curate_nd.html.erb +55 -0
  144. data/app/views/layouts/curate_nd/1_column.html.erb +22 -0
  145. data/app/views/layouts/curate_nd/2_column.html.erb +26 -0
  146. data/app/views/layouts/curate_nd/catalog.html.erb +22 -0
  147. data/app/views/layouts/curate_nd/dashboard.html.erb +22 -0
  148. data/app/views/layouts/hydra-head.html.erb +95 -0
  149. data/app/views/shared/_action_bar.html.erb +30 -0
  150. data/app/views/shared/_flash_message.html.erb +9 -0
  151. data/app/views/shared/_site_search.html.erb +18 -0
  152. data/app/views/terms_of_service_agreements/new.html.erb +136 -0
  153. data/app/views/welcome/index.html.erb +21 -0
  154. data/app/workers/characterize_job.rb +4 -0
  155. data/app/workers/doi_worker.rb +16 -0
  156. data/config/routes.rb +35 -0
  157. data/lib/curate.rb +6 -0
  158. data/lib/curate/engine.rb +46 -0
  159. data/lib/curate/version.rb +1 -1
  160. data/spec/abilities/generic_file_abilities_spec.rb +55 -0
  161. data/spec/controllers/application_controller_spec.rb +38 -0
  162. data/spec/controllers/classify_concerns_controller_spec.rb +36 -0
  163. data/spec/controllers/common_objects_controller_spec.rb +112 -0
  164. data/spec/controllers/curation_concern/base_controller_spec.rb +14 -0
  165. data/spec/controllers/curation_concern/generic_files_controller_spec.rb +156 -0
  166. data/spec/controllers/dashboard_controller_spec.rb +85 -0
  167. data/spec/controllers/downloads_controller_spec.rb +42 -0
  168. data/spec/controllers/help_requests_controller_spec.rb +42 -0
  169. data/spec/controllers/terms_of_service_agreements_controller_spec.rb +30 -0
  170. data/spec/controllers/welcome_controller_spec.rb +10 -0
  171. data/spec/dummy/app/models/solr_document.rb +4 -0
  172. data/spec/dummy/app/models/user.rb +13 -0
  173. data/spec/dummy/config/application.rb +8 -1
  174. data/spec/dummy/config/database.yml +21 -22
  175. data/spec/dummy/config/doi.yml +11 -0
  176. data/spec/dummy/config/fedora.yml +20 -0
  177. data/spec/dummy/config/initializers/devise.rb +232 -0
  178. data/spec/dummy/config/initializers/hydra_config.rb +41 -0
  179. data/spec/dummy/config/initializers/mailboxer.rb +17 -0
  180. data/spec/dummy/config/initializers/redis_config.rb +45 -0
  181. data/spec/dummy/config/initializers/sufia.rb +66 -0
  182. data/spec/dummy/config/purl.yml +15 -0
  183. data/spec/dummy/config/redis.yml +6 -0
  184. data/spec/dummy/config/role_map_ci.yml +15 -0
  185. data/spec/dummy/config/role_map_cucumber.yml +10 -0
  186. data/spec/dummy/config/role_map_development.yml +12 -0
  187. data/spec/dummy/config/role_map_pre_production.yml +2 -0
  188. data/spec/dummy/config/role_map_production.yml +2 -0
  189. data/spec/dummy/config/role_map_test.yml +15 -0
  190. data/spec/dummy/config/routes.rb +4 -55
  191. data/spec/dummy/config/solr.yml +17 -0
  192. data/spec/dummy/db/migrate/20130130142162_create_purl.rb +55 -0
  193. data/spec/dummy/db/migrate/20130312135359_create_help_requests.rb +22 -0
  194. data/spec/dummy/db/migrate/20130408165008_create_users.rb +11 -0
  195. data/spec/dummy/db/migrate/20130408165009_acts_as_follower_migration.rb +31 -0
  196. data/spec/dummy/db/migrate/20130408165010_add_social_to_users.rb +27 -0
  197. data/spec/dummy/db/migrate/20130408165011_create_single_use_links.rb +12 -0
  198. data/spec/dummy/db/migrate/20130408165012_add_ldap_attrs_to_user.rb +41 -0
  199. data/spec/dummy/db/migrate/20130408165013_add_avatars_to_users.rb +23 -0
  200. data/spec/dummy/db/migrate/20130408165014_create_checksum_audit_logs.rb +34 -0
  201. data/spec/dummy/db/migrate/20130408165015_create_version_committers.rb +29 -0
  202. data/spec/dummy/db/migrate/20130408165016_add_groups_to_users.rb +25 -0
  203. data/spec/dummy/db/migrate/20130408165017_create_local_authorities.rb +64 -0
  204. data/spec/dummy/db/migrate/20130408165018_create_trophies.rb +10 -0
  205. data/spec/dummy/db/migrate/20130408165022_create_mailboxer.mailboxer_engine.rb +62 -0
  206. data/spec/dummy/db/migrate/20130408165023_add_notified_object.mailboxer_engine.rb +18 -0
  207. data/spec/dummy/db/migrate/20130408165024_add_notification_code.mailboxer_engine.rb +14 -0
  208. data/spec/dummy/db/migrate/20130408165025_add_attachments.mailboxer_engine.rb +10 -0
  209. data/spec/dummy/db/migrate/20130408165026_rename_receipts_read.mailboxer_engine.rb +10 -0
  210. data/spec/dummy/db/schema.rb +197 -0
  211. data/spec/dummy/db/test.sqlite3 +0 -0
  212. data/spec/dummy/fedora_conf/conf/development/fedora.fcfg +953 -0
  213. data/spec/dummy/fedora_conf/conf/test/fedora.fcfg +953 -0
  214. data/spec/dummy/log/development.log +1791 -0
  215. data/spec/dummy/log/test.log +176333 -0
  216. data/spec/dummy/solr_conf/conf/schema.xml +692 -0
  217. data/spec/dummy/solr_conf/conf/solrconfig.xml +299 -0
  218. data/spec/dummy/solr_conf/solr.xml +35 -0
  219. data/spec/factories/create_curation_concern.rb +11 -0
  220. data/spec/factories/create_generic_file.rb +36 -0
  221. data/spec/factories/help_requests.rb +10 -0
  222. data/spec/factories/mock_curation_concerns.rb +4 -0
  223. data/spec/factories/users.rb +8 -0
  224. data/spec/helpers/application_helper_spec.rb +139 -0
  225. data/spec/helpers/common_objects_helper_spec.rb +9 -0
  226. data/spec/models/access_right_spec.rb +47 -0
  227. data/spec/models/classify_concern_spec.rb +30 -0
  228. data/spec/models/contributor_agreement_spec.rb +45 -0
  229. data/spec/models/digital_object_identifier_spec.rb +50 -0
  230. data/spec/models/help_request_spec.rb +5 -0
  231. data/spec/models/mint_doi_spec.rb +79 -0
  232. data/spec/models/mint_purl_spec.rb +38 -0
  233. data/spec/models/object_access_spec.rb +24 -0
  234. data/spec/models/purl_spec.rb +22 -0
  235. data/spec/models/repo_object_spec.rb +39 -0
  236. data/spec/repository_models/curation_concern/embargoable_spec.rb +69 -0
  237. data/spec/repository_models/generic_file_spec.rb +38 -0
  238. data/spec/services/anti_virus_scanner_spec.rb +26 -0
  239. data/spec/services/curation_concern/base_actor_spec.rb +28 -0
  240. data/spec/services/curation_concern/generic_file_actor_spec.rb +75 -0
  241. data/spec/services/curation_concern_spec.rb +34 -0
  242. data/spec/spec_helper.rb +54 -1
  243. data/spec/support/environment_override.rb +17 -0
  244. data/spec/support/matchers/raise_rescue_response_type_matcher.rb +42 -0
  245. data/spec/support/mock_curation_concern.rb +61 -0
  246. data/spec/support/shared/shared_examples_is_embargoable.rb +9 -0
  247. data/spec/support/shared/shared_examples_with_access_rights.rb +33 -0
  248. data/spec/workers/characterize_job_spec.rb +26 -0
  249. metadata +686 -10
  250. data/MIT-LICENSE +0 -20
@@ -0,0 +1,6 @@
1
+ <script>
2
+ var _gaq=[['_setAccount','<%= t('sufia.google_analytics_id') %>'],['_trackPageview']];
3
+ (function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
4
+ g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
5
+ s.parentNode.insertBefore(g,s)}(document,'script'));
6
+ </script>
@@ -0,0 +1,34 @@
1
+ <header id="banner" role="banner">
2
+ <hgroup>
3
+ <div id="brand-bar-wrapper">
4
+ <div id="brand-bar" class="container">
5
+ <div class="row">
6
+
7
+ <div class="university span40">
8
+ <h3><a href="http://nd.edu" tabindex="-1">University <i>of</i> Notre Dame</a></h3>
9
+ </div>
10
+
11
+ <div class="division span40">
12
+ <h2><a href="http://www.library.nd.edu" tabindex="-1">Hesburgh Libraries</a></h2>
13
+ </div>
14
+
15
+ </div>
16
+ </div>
17
+ </div>
18
+ <div id="title-bar-wrapper">
19
+ <div id="title-bar" class="container">
20
+ <div class="row">
21
+
22
+ <div class="site-title span60">
23
+ <h1>CurateND</h1>
24
+ </div>
25
+
26
+ <div class="site-search span60">
27
+ <%= render :partial => 'catalog/search_form' %>
28
+ </div>
29
+
30
+ </div>
31
+ </div>
32
+ </div>
33
+ </hgroup>
34
+ </header>
@@ -0,0 +1,34 @@
1
+ <%#
2
+ Copyright © 2012 The Pennsylvania State University
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ %>
16
+
17
+ <div id="masthead">
18
+ <div class="navbar">
19
+ <div class="nav-inner">
20
+ <nav class="container">
21
+ <ul class="nav">
22
+ <li <%= 'class=active' if params[:controller] == "catalog" and action_name == "index" %>><a href="/" class="top_nav">Home</a></li>
23
+ <li <%= 'class=active' if action_name == "about" %>><a href="/about/" class="top_nav">About</a></li>
24
+ <li <%= 'class=active' if action_name == "help" %>><a href="/help/" class="top_nav">Help</a></li>
25
+ </ul>
26
+ <ul class="nav pull-right">
27
+ <li>
28
+ <div class="btn-group">&nbsp;</div>
29
+ </li>
30
+ </ul>
31
+ </nav>
32
+ </div>
33
+ </div>
34
+ </div>
@@ -0,0 +1,25 @@
1
+ <% if has_user_authentication_provider? and current_user %>
2
+ <%- existing_bookmark = current_user.existing_bookmark_for(document.id) -%>
3
+ <%-
4
+ # Note these two forms are pretty similar but for different :methods, classes, and labels.
5
+ # but it was simpler to leave them separate instead of DRYing them, got confusing trying that.
6
+ # the data-doc-id attribute is used by our JS that converts to a checkbox/label.
7
+ -%>
8
+ <% unless existing_bookmark %>
9
+
10
+ <%= form_tag( bookmark_path( document ), :method => :put, :class => "bookmark_toggle", "data-doc-id" => document.id, :title=> document[document_show_link_field] ) do %>
11
+ <%= hidden_field(:bookmark, :title, :value => document[document_show_link_field] ) %>
12
+ <%= submit_tag("Bookmark", :id => "bookmark_toggle_#{document.id.to_s.parameterize}", :class => "bookmark_add") %>
13
+ <% end %>
14
+
15
+ <% else %>
16
+
17
+ <%= form_tag( bookmark_path( document ), :method => :delete, :class => "bookmark_toggle", "data-doc-id" => document.id, :title=> document[document_show_link_field]) do %>
18
+ <%= hidden_field(:bookmark, :title, :value => document[document_show_link_field] ) %>
19
+ <%= submit_tag("Remove bookmark", :id => "bookmark_toggle_#{document.id.to_s.parameterize}", :class => "bookmark_remove") %>
20
+ <% end %>
21
+
22
+ <% end %>
23
+ <% else %>
24
+ &nbsp;
25
+ <% end %>
@@ -0,0 +1,8 @@
1
+ <%= form_tag '/bookmarks', :name => "bookmarks" do %>
2
+ <% documents.each_with_index do |document, index| %>
3
+ <%= hidden_field_tag "bookmarks[#{index}][document_id]", document.get(:id)%>
4
+ <%= hidden_field_tag "bookmarks[#{index}][title]", h(document[document_show_link_field])%>
5
+ <% end %>
6
+ <%= link_to_function "Add to Bookmarks", "document.bookmarks.submit()" %>
7
+ <%= submit_tag 'Add to Bookmarks', :class => 'hide' %>
8
+ <% end %>
@@ -0,0 +1,11 @@
1
+ <h1><%= document_show_html_title %></h1>
2
+
3
+ <% if @document.respond_to?(:export_as_mla_citation_txt) %>
4
+ <h4>MLA</h4>
5
+ <%= @document.send(:export_as_mla_citation_txt) %><br/><br/>
6
+ <% end %>
7
+
8
+ <% if @document.respond_to?(:export_as_apa_citation_txt) %>
9
+ <h4>APA</h4>
10
+ <%= @document.send(:export_as_apa_citation_txt) %>
11
+ <% end %>
@@ -0,0 +1,6 @@
1
+ <!--
2
+ <div id="appliedParams">
3
+ <h3 class="label">You searched for:</h3>
4
+ <%# render_constraints(localized_params) %>
5
+ </div>
6
+ -->
@@ -0,0 +1,20 @@
1
+ <%# This view is overridden to change the alt attribute to be a title in the link_to below in order to conform to the HTML5 validity standard. This should ultimately be fixed in Blacklight. -%>
2
+ <%- # local params:
3
+ # label
4
+ # value
5
+ # options =>
6
+ # :remove => url for a remove constraint link
7
+ # :classes => array of classes to add to container span
8
+ options ||= {}
9
+ options[:escape_label] = true unless options.has_key?(:escape_label)
10
+ options[:escape_value] = true unless options.has_key?(:escape_value)
11
+ -%>
12
+
13
+ <span class="appliedFilter constraint <%= options[:classes].join(" ") if options[:classes] %>">
14
+ <%- unless label.blank? -%>
15
+ <span class="filterName"><%= options[:escape_label] ? h(label) : label %>:</span>
16
+ <%- end -%>
17
+ <%- unless value.blank? -%>
18
+ <span class="filterValue"><%= options[:escape_value] ? h(value) : value %></span>
19
+ <%- end -%>
20
+ </span>
@@ -0,0 +1,29 @@
1
+ <%# default partial to delete display solr document fields in catalog show view -%>
2
+
3
+ <%- stylesheet_links << "../plugin_assets/hydra-head/javascripts/date-picker/css/datepicker" %>
4
+ <%- stylesheet_links << "../plugin_assets/hydra-head/javascripts/fancybox/jquery.fancybox-1.3.1.css" %>
5
+ <%- stylesheet_links << ["../plugin_assets/hydra-head/javascripts/select_to_ui_slider/css/ui.slider.extras.css"] %>
6
+ <%- stylesheet_links << ["slider", {:plugin=>"hydra-head"}] %>
7
+
8
+
9
+
10
+ <div class="document_viewer" id="cover_container">
11
+ <div id="delete_dialog">
12
+ <div id="delete_dialog_container">
13
+
14
+
15
+ <div>
16
+ <span>Permanently delete <%= @document['id'] %> and its assets from the repository?</span><br/>
17
+ <div id="deletable_assets"></div>
18
+ </div>
19
+
20
+ <div>
21
+ <%= button_to("Delete", {:action => :destroy, :controller => :assets, :id => @document['id'] }, :confirm => 'Are you sure?', :method => :delete )%>
22
+ <%= button_to("Withdraw", :action=>"withdraw", :controller => :assets, :id => @document['id'] ) %>
23
+ <%= button_to("Cancel", :action=>:edit, :controller => :catalog, :id => @document['id'] ) %>
24
+
25
+ </div>
26
+
27
+ </div>
28
+ </div>
29
+ </div>
@@ -0,0 +1,10 @@
1
+ <% if @response.response[:numFound] <= spell_check_max and @response.spelling.words.size > 0 %>
2
+ <div id="spell">
3
+ <h4 class="suggest"><i>Did you mean to type
4
+ <% @response.spelling.words.each_with_index do |word,index| -%>
5
+ <% if index > 0 -%>, or <% end -%>
6
+ <%= link_to_query(word) -%>
7
+ <% end -%>
8
+ ?</i></h4>
9
+ </div>
10
+ <% end %>
@@ -0,0 +1,19 @@
1
+ <% # container for a single doc -%>
2
+ <div class="document <%= render_document_class document %>">
3
+
4
+ <% # header bar for doc items in index view -%>
5
+ <div class="documentHeader">
6
+
7
+ <% # bookmark/folder functions for items/docs -%>
8
+ <%= render_index_doc_actions document %>
9
+
10
+ <% # main title container for doc partial view -%>
11
+ <div class="yui-u">
12
+ <h3 class="index_title"><%= document_counter + 1 + @response.params[:start].to_i %>. <%= link_to_document document, :label=>document_show_link_field, :counter => (document_counter + 1 + @response.params[:start].to_i) %></h3>
13
+ </div>
14
+ </div>
15
+
16
+ <% # main container for doc partial view -%>
17
+ <%= render_document_partial document, :index %>
18
+
19
+ </div>
@@ -0,0 +1,2 @@
1
+ <% # container for all documents in index view -%>
2
+ <%= render :partial => 'catalog/_index_partials/default_group', :locals => {:docs => @response.docs.map { |x| SolrDocument.new(x) }, :facet_name => nil, :facet_value => nil} %>
@@ -0,0 +1,58 @@
1
+ <%# default partial to display solr document fields in catalog show view -%>
2
+
3
+ <%- stylesheet_links << "../plugin_assets/hydra-head/javascripts/date-picker/css/datepicker" %>
4
+ <%- stylesheet_links << "../plugin_assets/hydra-head/javascripts/fancybox/jquery.fancybox-1.3.1.css" %>
5
+ <%- stylesheet_links << ["../plugin_assets/hydra-head/javascripts/select_to_ui_slider/css/ui.slider.extras.css"] %>
6
+ <%- stylesheet_links << ["../plugin_assets/hydra-head/stylesheets/slider.css"] %>
7
+
8
+
9
+
10
+ <% @fedora_object = ActiveFedora::Base.load_instance(params[:id])
11
+ @datastreams = @fedora_object.datastreams
12
+ %>
13
+
14
+ <div class="document_viewer" id="cover_container">
15
+ <dl>
16
+ <dt>pid:</dt>
17
+ <dd><%= @fedora_object.pid %></dd>
18
+ </dl>
19
+ <dl>
20
+ <dt>label:</dt>
21
+ <dd><%= @fedora_object.label %></dd>
22
+ <dt>state:</dt>
23
+ <dd><%= @fedora_object.state %></dd>
24
+ <dt>owner id:</dt>
25
+ <dd><%= @fedora_object.inner_object.ownerId %></dd>
26
+ </dl>
27
+ <dl>
28
+ <dt>created:</dt>
29
+ <dd><%= @fedora_object.create_date %></dd>
30
+ <dt>last modified:</dt>
31
+ <dd><%= @fedora_object.modified_date %></dd>
32
+ </dl>
33
+ <dl>
34
+ <dt>datastreams:</dt>
35
+ <dd>
36
+ <ul>
37
+ <% @datastreams.keys.sort!.each do |dsid| %>
38
+ <li><a href="#<%=dsid%>" class="inline"><%=dsid%></a>
39
+ <div style='display:none'>
40
+ <div id='<%=dsid%>'>
41
+ <h1><%=dsid%></h1>
42
+ <dl>
43
+ <%= ("<dt>label:</dt><dd>" + @datastreams[dsid].dsLabel + "</dd>").html_safe unless @datastreams[dsid].dsLabel.blank? %>
44
+ <%= ("<dt>last modified:</dt><dd>" + @datastreams[dsid].lastModifiedDate + "</dd>").html_safe unless @datastreams[dsid].lastModifiedDate.blank? %>
45
+ <%= ("<dt>mimetype:</dt><dd>" + @datastreams[dsid].mimeType + "</dd>").html_safe unless @datastreams[dsid].mimeType.blank? %>
46
+ <%= ("<dt>control group:</dt><dd>" + @datastreams[dsid].controlGroup + "</dd>").html_safe unless @datastreams[dsid].controlGroup.blank? %>
47
+ </dl>
48
+ </div>
49
+ </div></li>
50
+ <% end %>
51
+ </ul>
52
+ </dd>
53
+ </dl>
54
+
55
+ <%= render :partial => "hydra/permissions/index", :locals => {:document => document, :asset_id=>params[:id]}%>
56
+
57
+ </div>
58
+
@@ -0,0 +1,13 @@
1
+
2
+
3
+ <%# this should imitate the stuff in catalog/_show_partials/_default_details -%>
4
+ <%= form_tag hydra_update_url_for(:action=>"update", :controller=>"hydra/assets"), :id=>"document_metadata" "accept-charset"=>"utf-8" do %>
5
+
6
+ <div id="multipleEdit">
7
+ <dl class="defList fl-theme-mist">
8
+ <%= editable_metadata_field(@document_fedora, "descMetadata", :title, :label => "Title:") %>
9
+ </dl>
10
+ </div>
11
+ </div>
12
+ <% end %>
13
+ <%# -- end of code replicating catalog/_show_partials/_default_details -%>
@@ -0,0 +1,11 @@
1
+ <h1>Email This</h1>
2
+ <%= form_tag url_for(:controller => "catalog", :action => "email"), :id => 'email_form', :method => :post do %>
3
+ <%= label_tag(:to, "Email:") %><br/>
4
+ <%= text_field_tag :to %><br/>
5
+ <%= label_tag(:message, "Message:") %><br/>
6
+ <%= text_area_tag :message %><br/>
7
+ <% @documents.each do |doc| %>
8
+ <%=hidden_field_tag "id[]", doc.get(:id)%>
9
+ <% end %>
10
+ <%= submit_tag "Send" %>
11
+ <% end %>
@@ -0,0 +1,12 @@
1
+ <li class="expandable_new grey">
2
+ <% id = facet_field.label.sub(" ","_") %>
3
+ <!--button class="btn dropdown" data-toggle="collapse" data-target="#collapse_<%= id%>" data-parent="#facet_group"><i class="icon-chevron-right"></i> <%= facet_field.label%></button-->
4
+
5
+ <a class="accordion-toggle grey" data-toggle="collapse" data-parent="#facet_group" data-target="#collapse_<%= id%>">
6
+ <%= facet_field.label %><i class="icon-chevron-right grey"></i>
7
+ </a>
8
+
9
+ <div id="collapse_<%= id%>" class="accordion-body collapse">
10
+ <%= yield %>
11
+ </div>
12
+ </li>
@@ -0,0 +1,19 @@
1
+ <% paginator =
2
+ Blacklight::Solr::FacetPaginator.new(display_facet.items,
3
+ :limit => facet_limit_for(solr_field))
4
+ %>
5
+ <ul class="slide-list">
6
+ <% paginator.items.each do |item| -%>
7
+ <li>
8
+ <% if facet_in_params?( solr_field, item.value ) %>
9
+ <%= render_selected_facet_value(solr_field, item).split("(").join('(<small>').split(")").join("</small>)").html_safe %>
10
+ <% else %>
11
+ <%= render_facet_value(solr_field, item).split("(").join('(<small>').split(")").join("</small>)").html_safe %>
12
+ <% end -%>
13
+ </li>
14
+ <% end %>
15
+
16
+ <% if(paginator.has_next?) %>
17
+ <li class="more_facets_link"><%= link_to 'more ' + facet_field.label.pluralize + '»', params.merge(:id => solr_field, :action=>"facet"), :class => "more_facets_link" %></li>
18
+ <% end %>
19
+ </ul> <!-- /slide-list -->
@@ -0,0 +1,12 @@
1
+ <%# there has got to be a hipster ruby way to do this better %>
2
+ <% if params[:f] %>
3
+ <% params[:f].each do |k,v| %>
4
+ <% v.each do |selected_facet| %>
5
+ <% link_options = remove_facet_params(k, selected_facet, params).merge!Hash["controller" => "catalog", :action=> "index"] %>
6
+ <div class="alert alert-warning">
7
+ <%= link_to 'X', url_for(link_options), {:class=>'close', :'data-dismiss' => "alert" } %>
8
+ <i class="icon-ok icon-large"></i> <strong><%= selected_facet %></strong>
9
+ </div>
10
+ <% end %>
11
+ <% end %>
12
+ <% end %>
@@ -0,0 +1,5 @@
1
+ <h3>Browse By</h3>
2
+
3
+ <ul class="nav nav-list slide-list" id="facets">
4
+ <%= render_facet_partials %>
5
+ </ul>
@@ -0,0 +1,12 @@
1
+ <%-
2
+ # pass in local :document with a SolrDocument
3
+ method = (item_in_folder?(document.id) ? "delete" : "put")
4
+ label = (item_in_folder?(document.id) ? "Unselect" : "Select")
5
+ cssClass = (item_in_folder?(document.id) ? "deleteFolder" : "addFolder")
6
+ -%>
7
+
8
+ <%= form_tag( folder_path(document), :method => method, :class=> "folder_toggle #{cssClass}", "data-doc-id" => document.id, :title=>h(document[document_show_link_field])) do -%>
9
+ <%= hidden_field(:bookmark, :title, :value => document[document_show_link_field]) %>
10
+ <%= submit_tag(label, :class=>"folder_submit", :id => "folder_submit_#{document.id}") %>
11
+ <% end %>
12
+
@@ -0,0 +1,2 @@
1
+ <h2>What is <%=t('sufia.product_name') %>?</h2>
2
+ <%= render 'home_text' %>
@@ -0,0 +1,10 @@
1
+ <p>
2
+ <%=t('sufia.product_name') %> is a secure repository service enabling the
3
+ <%=t('sufia.institution_name') %> community to share its research and scholarly
4
+ work with a worldwide audience. Faculty, staff, and students can use
5
+ <%=t('sufia.product_name') %> to collect their work in one location and create a
6
+ durable and citeable record of their papers, presentations, publications, data
7
+ sets, or other scholarly creations. Through this service,
8
+ <%=t('sufia.institution_name') %> researchers can also comply with
9
+ grant-funding-agency requirements for sharing and managing research data.
10
+ </p>
@@ -0,0 +1,11 @@
1
+ <%# default partial to display solr document fields in catalog index view -%>
2
+ <dl class="defList">
3
+
4
+ <% index_fields.each do |solr_fname, field| -%>
5
+ <% if document.has? solr_fname %>
6
+ <dt class="blacklight-<%= solr_fname.parameterize %>"><%= render_index_field_label :field => solr_fname %></dt>
7
+ <dd class="blacklight-<%= solr_fname.parameterize %>"><%= render_index_field_value :document => document, :field => solr_fname %></dd>
8
+ <% end -%>
9
+ <% end -%>
10
+
11
+ </dl>
@@ -0,0 +1,37 @@
1
+ <%#
2
+ Copyright © 2012 The Pennsylvania State University
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ %>
16
+
17
+ <table class="table table-striped">
18
+ <caption class="accessible-hidden">List of files deposited in <%= t('sufia.product_name') %> that match your search criteria</caption>
19
+ <% unless params[:display_type] == 'list' %>
20
+ <thead>
21
+ <tr>
22
+ <th>Title</th>
23
+ <th>Type</th>
24
+ <th class="sorts-dash"><i id="desc_metadata__date_uploaded_dt" class="<%=params[:sort]== "desc_metadata__date_uploaded_dt desc" ? 'icon-caret-down' : params[:sort]== "desc_metadata__date_uploaded_dt asc" ? 'icon-caret-up' : ''%>"></i>Date Uploaded</th>
25
+ <th>Visibility</th>
26
+ <% if current_user %>
27
+ <th>Actions</th>
28
+ <% end %>
29
+ </tr>
30
+ </thead>
31
+ <% end %>
32
+ <tbody>
33
+ <% docs.each_with_index do |document,counter| %>
34
+ <%= render :partial => '/dashboard/_index_partials/list_files', :locals => {:document => document, :counter => counter} %>
35
+ <% end %>
36
+ </tbody>
37
+ </table>