arclight 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (146) hide show
  1. checksums.yaml +4 -4
  2. data/.eslintrc +12 -0
  3. data/.gitignore +5 -0
  4. data/.rubocop.yml +66 -0
  5. data/.solr_wrapper +5 -0
  6. data/.travis.yml +30 -2
  7. data/CONTRIBUTING.md +43 -0
  8. data/Gemfile +36 -0
  9. data/LICENSE.txt +1 -0
  10. data/README.md +85 -12
  11. data/Rakefile +14 -3
  12. data/app/assets/images/blacklight/compact.svg +25 -0
  13. data/app/assets/images/blacklight/logo.png +0 -0
  14. data/app/assets/javascripts/arclight/arclight.js +9 -0
  15. data/app/assets/javascripts/arclight/collection_context.js +18 -0
  16. data/app/assets/javascripts/arclight/collection_navigation.js +114 -0
  17. data/app/assets/javascripts/arclight/collection_scrollspy.js +6 -0
  18. data/app/assets/javascripts/arclight/component_ancestors.js +56 -0
  19. data/app/assets/javascripts/arclight/oembed_viewer.js +39 -0
  20. data/app/assets/javascripts/arclight/truncator.js.erb +23 -0
  21. data/app/assets/stylesheets/arclight/application.scss +13 -0
  22. data/app/assets/stylesheets/arclight/bootstrap_overrides.scss +3 -0
  23. data/app/assets/stylesheets/arclight/modules/collection_search.scss +3 -0
  24. data/app/assets/stylesheets/arclight/modules/hierarchy_and_online_contents.scss +174 -0
  25. data/app/assets/stylesheets/arclight/modules/highlights.scss +10 -0
  26. data/app/assets/stylesheets/arclight/modules/layout.scss +33 -0
  27. data/app/assets/stylesheets/arclight/modules/mastheads.scss +60 -0
  28. data/app/assets/stylesheets/arclight/modules/repositories.scss +29 -0
  29. data/app/assets/stylesheets/arclight/modules/repository_card.scss +54 -0
  30. data/app/assets/stylesheets/arclight/modules/search_results.scss +75 -0
  31. data/app/assets/stylesheets/arclight/modules/show_collection.scss +78 -0
  32. data/app/assets/stylesheets/arclight/modules/sidebar.scss +16 -0
  33. data/app/assets/stylesheets/arclight/variables.scss +2 -0
  34. data/app/controllers/arclight/repositories_controller.rb +40 -0
  35. data/app/controllers/concerns/arclight/field_config_helpers.rb +86 -0
  36. data/app/factories/blacklight_field_configuration_factory.rb +29 -0
  37. data/app/helpers/arclight_helper.rb +173 -0
  38. data/app/models/arclight/parent.rb +24 -0
  39. data/app/models/arclight/parents.rb +34 -0
  40. data/app/models/arclight/requests/google_form.rb +44 -0
  41. data/app/models/concerns/arclight/catalog.rb +22 -0
  42. data/app/models/concerns/arclight/search_behavior.rb +46 -0
  43. data/app/models/concerns/arclight/solr_document.rb +131 -0
  44. data/app/presenters/arclight/index_presenter.rb +10 -0
  45. data/app/presenters/arclight/show_presenter.rb +27 -0
  46. data/app/views/arclight/.keep +0 -0
  47. data/app/views/arclight/repositories/_in_person_repository.html.erb +19 -0
  48. data/app/views/arclight/repositories/_repository.html.erb +62 -0
  49. data/app/views/arclight/repositories/index.html.erb +4 -0
  50. data/app/views/arclight/repositories/show.html.erb +38 -0
  51. data/app/views/arclight/requests/_google_form.html.erb +11 -0
  52. data/app/views/arclight/viewers/_oembed.html.erb +7 -0
  53. data/app/views/catalog/_arclight_document_index_header.html.erb +13 -0
  54. data/app/views/catalog/_arclight_document_index_header_hierarchy_default.html.erb +0 -0
  55. data/app/views/catalog/_arclight_document_index_header_online_contents_default.html.erb +0 -0
  56. data/app/views/catalog/_arclight_document_show_header.html.erb +15 -0
  57. data/app/views/catalog/_arclight_document_show_header_collection.html.erb +12 -0
  58. data/app/views/catalog/_arclight_index_compact_default.html.erb +15 -0
  59. data/app/views/catalog/_arclight_online_content_indicator.html.erb +5 -0
  60. data/app/views/catalog/_arclight_rangelimit.html.erb +24 -0
  61. data/app/views/catalog/_arclight_viewer_default.html.erb +1 -0
  62. data/app/views/catalog/_collection_contents.html.erb +12 -0
  63. data/app/views/catalog/_collection_count.html.erb +7 -0
  64. data/app/views/catalog/_collection_downloads.html.erb +17 -0
  65. data/app/views/catalog/_collection_online_contents.html.erb +17 -0
  66. data/app/views/catalog/_collection_overview.html.erb +7 -0
  67. data/app/views/catalog/_component_overview.html.erb +46 -0
  68. data/app/views/catalog/_context_card.html.erb +27 -0
  69. data/app/views/catalog/_context_sidebar.html.erb +8 -0
  70. data/app/views/catalog/_custom_metadata.html.erb +16 -0
  71. data/app/views/catalog/_home.html.erb +1 -0
  72. data/app/views/catalog/_index_breadcrumb_default.html.erb +3 -0
  73. data/app/views/catalog/_index_default.html.erb +17 -0
  74. data/app/views/catalog/_index_header.html.erb +7 -0
  75. data/app/views/catalog/_index_header_hierarchy_default.html.erb +42 -0
  76. data/app/views/catalog/_index_header_online_contents_default.html.erb +1 -0
  77. data/app/views/catalog/_index_hierarchy_default.html.erb +28 -0
  78. data/app/views/catalog/_index_online_contents_default.html.erb +6 -0
  79. data/app/views/catalog/_results_histogram.html.erb +10 -0
  80. data/app/views/catalog/_search_results.html.erb +31 -0
  81. data/app/views/catalog/_search_results_repository.html.erb +6 -0
  82. data/app/views/catalog/_search_within_form.html.erb +16 -0
  83. data/app/views/catalog/_show_breadcrumbs_default.html.erb +7 -0
  84. data/app/views/catalog/_show_collection.html.erb +40 -0
  85. data/app/views/catalog/_show_component_sidebar.html.erb +12 -0
  86. data/app/views/catalog/_show_default.html.erb +32 -0
  87. data/app/views/catalog/_show_header.html.erb +5 -0
  88. data/app/views/catalog/_show_sidebar.html.erb +30 -0
  89. data/app/views/catalog/index.html.erb +8 -0
  90. data/app/views/layouts/catalog_result.html.erb +7 -0
  91. data/app/views/shared/_breadcrumbs.html.erb +15 -0
  92. data/app/views/shared/_context_sidebar.html.erb +8 -0
  93. data/app/views/shared/_header_navbar.html.erb +54 -0
  94. data/app/views/shared/_main_menu_links.html.erb +6 -0
  95. data/arclight.gemspec +17 -4
  96. data/bin/rails +13 -0
  97. data/config/locales/arclight.en.yml +65 -0
  98. data/config/routes.rb +6 -0
  99. data/lib/arclight.rb +5 -0
  100. data/lib/arclight/custom_component.rb +98 -0
  101. data/lib/arclight/custom_document.rb +93 -0
  102. data/lib/arclight/digital_object.rb +26 -0
  103. data/lib/arclight/engine.rb +55 -0
  104. data/lib/arclight/exceptions.rb +18 -0
  105. data/lib/arclight/indexer.rb +9 -0
  106. data/lib/arclight/normalized_date.rb +45 -0
  107. data/lib/arclight/normalized_id.rb +25 -0
  108. data/lib/arclight/normalized_title.rb +30 -0
  109. data/lib/arclight/repository.rb +91 -0
  110. data/lib/arclight/shared_indexing_behavior.rb +97 -0
  111. data/lib/arclight/shared_terminology_behavior.rb +65 -0
  112. data/lib/arclight/solr_ead_indexer_ext.rb +159 -0
  113. data/lib/arclight/version.rb +3 -1
  114. data/lib/arclight/viewer.rb +45 -0
  115. data/lib/arclight/viewers/oembed.rb +56 -0
  116. data/lib/arclight/year_range.rb +102 -0
  117. data/lib/generators/arclight/install_generator.rb +63 -0
  118. data/lib/generators/arclight/templates/arclight.js +2 -0
  119. data/lib/generators/arclight/templates/arclight.scss +3 -0
  120. data/lib/generators/arclight/templates/catalog_controller.rb +347 -0
  121. data/lib/generators/arclight/templates/config/downloads.yml +13 -0
  122. data/lib/generators/arclight/templates/config/repositories.yml +42 -0
  123. data/lib/generators/arclight/update_generator.rb +22 -0
  124. data/lib/tasks/index.rake +87 -0
  125. data/package.json +24 -0
  126. data/solr/conf/_rest_managed.json +3 -0
  127. data/solr/conf/admin-extra.html +31 -0
  128. data/solr/conf/elevate.xml +36 -0
  129. data/solr/conf/mapping-ISOLatin1Accent.txt +246 -0
  130. data/solr/conf/protwords.txt +21 -0
  131. data/solr/conf/schema.xml +631 -0
  132. data/solr/conf/scripts.conf +24 -0
  133. data/solr/conf/solrconfig.xml +393 -0
  134. data/solr/conf/spellings.txt +2 -0
  135. data/solr/conf/stopwords.txt +58 -0
  136. data/solr/conf/stopwords_en.txt +58 -0
  137. data/solr/conf/synonyms.txt +31 -0
  138. data/solr/conf/xslt/example.xsl +132 -0
  139. data/solr/conf/xslt/example_atom.xsl +67 -0
  140. data/solr/conf/xslt/example_rss.xsl +66 -0
  141. data/solr/conf/xslt/luke.xsl +337 -0
  142. data/tasks/arclight.rake +68 -0
  143. data/template.rb +15 -0
  144. data/vendor/assets/javascripts/responsiveTruncator.js +69 -0
  145. data/vendor/assets/javascripts/stickyfill.js +480 -0
  146. metadata +301 -6
@@ -0,0 +1,8 @@
1
+ <% unless blacklight_config.show.context_sidebar_items.nil? %>
2
+ <div id="accordion" role="tablist" aria-multiselectable="true">
3
+ <% items = blacklight_config.show.context_sidebar_items.select { |i| fields_have_content?(@document, i) } %>
4
+ <% items.each_with_index do |item, index| %>
5
+ <%= render partial: 'context_card', locals: { document: @document, field_accessor: item, card_index: index} %>
6
+ <% end %>
7
+ </div>
8
+ <% end %>
@@ -0,0 +1,16 @@
1
+ <% doc_presenter = show_presenter(document).with_field_group(field_accessor) %>
2
+
3
+ <%= content_tag(:div, id: t("arclight.views.show.sections.#{field_accessor}").parameterize) do %>
4
+ <h3 class='al-show-sub-heading'>
5
+ <%= t("arclight.views.show.sections.#{field_accessor}", level: document.level) %>
6
+ </h3>
7
+
8
+ <dl class="row dl-invert">
9
+ <% generic_document_fields(field_accessor).each do |field_name, field| %>
10
+ <% if generic_should_render_field?(field_accessor, document, field) %>
11
+ <dt class="blacklight-<%= field_name.parameterize %> col-md-3"><%= generic_render_document_field_label(field_accessor, document, field: field_name) %></dt>
12
+ <dd class="blacklight-<%= field_name.parameterize %> col-md-9"><%= doc_presenter.field_value field_name %></dd>
13
+ <% end %>
14
+ <% end %>
15
+ </dl>
16
+ <% end %>
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,3 @@
1
+ <div class='breadcrumb-links'>
2
+ <%= parents_to_links(document) %>
3
+ </div>
@@ -0,0 +1,17 @@
1
+ <%= content_tag('div', class: 'al-document-creator') do %>
2
+ <%= document.creator %>
3
+ <% end if document.creator %>
4
+
5
+ <%= content_tag('div', class: 'al-document-extent') do %>
6
+ <%= document.extent %>
7
+ <% end if document.extent %>
8
+
9
+ <%= content_tag('div', class: 'al-document-abstract-or-scope', title: document.abstract_or_scope) do %>
10
+ <%= content_tag('div', 'data-arclight-truncate' => true) do %>
11
+ <%= document.abstract_or_scope %>
12
+ <% end %>
13
+ <% end if document.abstract_or_scope %>
14
+
15
+ <%= content_tag('div', class: 'al-document-highlight') do %>
16
+ <%= document.highlights.join('<br/>').html_safe %>
17
+ <% end if document.highlights %>
@@ -0,0 +1,7 @@
1
+ <%# header bar for doc items in index view -%>
2
+ <header class="documentHeader row" data-document-id="<%= document.id %>">
3
+ <h3 class="index_title document-title-heading col-md-12">
4
+ <% counter = document_counter_with_offset(document_counter) %>
5
+ <%= link_to_document document, document_show_link_field(document), counter: counter %>
6
+ </h3>
7
+ </header>
@@ -0,0 +1,42 @@
1
+ <header class="documentHeader row" data-document-id="<%= document.id %>">
2
+ <% requestable = item_requestable?('', { document: document }) %>
3
+ <% side_content = document.children? || requestable %>
4
+ <h3 class="index_title document-title-heading <%= side_content ? 'col-md-9' : 'col-md-12' %> ">
5
+ <% if document.containers.present? %>
6
+ <span class="document-title-containers">
7
+ <%= document.containers.join(', ') %>:
8
+ </span>
9
+ <% end %>
10
+ <% counter = document_counter_with_offset(document_counter) %>
11
+ <%= link_to_document document, document_show_link_field(document), counter: counter %>
12
+ </h3>
13
+
14
+ <div class="al-hierarchy-side-content float-right <%= side_content ? 'col-md-3' : 'col' %> ">
15
+ <% unless hierarchy_component_context? %>
16
+ <div class="index-document-functions">
17
+ <%= render partial: 'catalog/bookmark_control', locals: { document: document } %>
18
+ </div>
19
+ <% end %>
20
+ <% if requestable %>
21
+ <%= render partial: 'arclight/requests/google_form', locals: { document: document } %>
22
+ <% end %>
23
+ <% if document.children? %>
24
+ <div class='al-hierarchy-children-status'>
25
+ <span class='badge badge-default al-number-of-children-badge'>
26
+ <%= t(:'arclight.views.index.number_of_children', count: document.number_of_children) %>
27
+ <% unless hierarchy_component_context? %>
28
+ <%= link_to(
29
+ t('arclight.hierarchy.view_all'),
30
+ "##{document.reference}-collapsible-hierarchy",
31
+ class: 'al-toggle-view-all',
32
+ data: {
33
+ toggle: 'collapse'
34
+ }
35
+ )
36
+ %>
37
+ <% end %>
38
+ </span>
39
+ </div>
40
+ <% end %>
41
+ </div>
42
+ </header>
@@ -0,0 +1 @@
1
+ <%= render_document_partial(document, :index_header_hierarchy, document_counter: document_counter) %>
@@ -0,0 +1,28 @@
1
+ <%= content_tag('div', class: 'al-document-abstract-or-scope', title: document.abstract_or_scope) do %>
2
+ <%= content_tag(:h4, I18n.t('arclight.hierarchy.scope_and_contents'), class: 'al-hierarchy-sub-heading') %>
3
+ <%= content_tag('div', 'data-arclight-truncate' => true) do %>
4
+ <%= document.abstract_or_scope %>
5
+ <% end %>
6
+ <% end if document.abstract_or_scope %>
7
+
8
+ <% if document.number_of_children > 0 %>
9
+ <%= content_tag(:div, id: "#{document.reference}-collapsible-hierarchy",
10
+ class: "collapse al-hierarchy-level-#{document.component_level}",
11
+ ) do %>
12
+
13
+ <%= content_tag(
14
+ :div, '',
15
+ class: 'al-contents',
16
+ data: {
17
+ arclight: {
18
+ hierarchy: true,
19
+ level: document.component_level + 1,
20
+ path: search_catalog_path,
21
+ name: document.collection_name,
22
+ parent: document.reference
23
+ }
24
+ }
25
+ ) %>
26
+
27
+ <% end %>
28
+ <% end %>
@@ -0,0 +1,6 @@
1
+ <%= content_tag('div', class: 'al-document-abstract-or-scope', title: document.abstract_or_scope) do %>
2
+ <%= content_tag(:h4, I18n.t('arclight.hierarchy.scope_and_contents'), class: 'al-hierarchy-sub-heading') %>
3
+ <%= content_tag('div', 'data-arclight-truncate' => true) do %>
4
+ <%= document.abstract_or_scope %>
5
+ <% end %>
6
+ <% end if document.abstract_or_scope %>
@@ -0,0 +1,10 @@
1
+ <div class='al-data-range-histogram row'>
2
+ <div class='col-md-12'>
3
+ <div id='al-date-range-histogram-content' class='collapse facet-content'>
4
+ <%= render partial: 'arclight_rangelimit', locals: { field_name: :date_range_sim, solr_field: :date_range_sim } %>
5
+ </div>
6
+ <a class='float-right' data-toggle='collapse' href='#al-date-range-histogram-content' aria-expanded='false' aria-controls='al-date-range-histogram-content'>
7
+ <%= t('arclight.date_range_histogram.show_hide') %>
8
+ </a>
9
+ </div>
10
+ </div>
@@ -0,0 +1,31 @@
1
+ <h2 class="sr-only top-content-title"><%= t('blacklight.search.search_results_header') %></h2>
2
+
3
+ <% @page_title = t('blacklight.search.page_title.title', :constraints => render_search_to_page_title(params), :application_name => application_name) %>
4
+
5
+ <% content_for(:head) do %>
6
+ <%= render_opensearch_response_metadata %>
7
+ <%= rss_feed_link_tag %>
8
+ <%= atom_feed_link_tag %>
9
+ <% end %>
10
+
11
+ <% content_for(:container_header) do %>
12
+ <%= render 'shared/breadcrumbs' %>
13
+ <%= render 'search_results_repository' %>
14
+ <%= render 'collection_count' %>
15
+ <%= render 'results_histogram' %>
16
+ <%= render 'constraints' %>
17
+ <% end %>
18
+
19
+ <%= render 'search_header' %>
20
+
21
+ <h2 class="sr-only"><%= t('blacklight.search.search_results') %></h2>
22
+
23
+ <%- if @response.empty? %>
24
+ <%= render "zero_results" %>
25
+ <%- elsif render_grouped_response? %>
26
+ <%= render_grouped_document_index %>
27
+ <%- else %>
28
+ <%= render_document_index %>
29
+ <%- end %>
30
+
31
+ <%= render 'results_pagination' %>
@@ -0,0 +1,6 @@
1
+ <% repository = repository_faceted_on %>
2
+ <% if repository %>
3
+ <div class="al-repository-card">
4
+ <%= render repository %>
5
+ </div>
6
+ <% end %>
@@ -0,0 +1,16 @@
1
+ <%= form_tag search_action_url, method: :get, class: 'search-query-form', role: 'search' do %>
2
+ <%= render_hash_as_hidden_fields({f: {collection_sim: [@document.collection_name]}}) %>
3
+ <div class='input-group'>
4
+ <%= hidden_field_tag :search_field, search_fields.first.last %>
5
+ <%= hidden_field_tag :search_field, 'within_collection' %>
6
+
7
+ <label for='q' class='sr-only'><%= t('arclight.views.show.search_within') %></label>
8
+ <%= text_field_tag :q, params[:q], class: 'search_q q form-control', id: 'q', autofocus: should_autofocus_on_search_box? %>
9
+
10
+ <span class='input-group-btn'>
11
+ <button type='submit' class='btn btn-primary search-btn' id='search'>
12
+ <%= blacklight_icon :search %>
13
+ </button>
14
+ </span>
15
+ </div>
16
+ <% end %>
@@ -0,0 +1,7 @@
1
+ <div class='al-show-breadcrumb'>
2
+ <%= link_to t('arclight.routes.home'), root_path %>
3
+ <%= t('arclight.breadcrumb_separator') %>
4
+ <%= link_to t('arclight.routes.collections'), arclight_engine.collections_path %>
5
+ <%= t('arclight.breadcrumb_separator') %>
6
+ <%= safe_join([parents_to_links(document), document.normalized_title].reject(&:empty?), t('arclight.breadcrumb_separator')) %>
7
+ </div>
@@ -0,0 +1,40 @@
1
+ <div class='row'>
2
+ <div class='col-md-3'>
3
+ <%= render partial: 'show_sidebar' %>
4
+ </div>
5
+ <div class='col-md-9'>
6
+ <ul class='nav nav-pills' role='tablist'>
7
+ <li class='nav-item'>
8
+ <a class='nav-link active' data-toggle='pill' href='#overview' role='tab'>
9
+ <%= t 'arclight.views.show.overview' %>
10
+ </a>
11
+ </li>
12
+ <li class='nav-item'>
13
+ <a class='nav-link disabled' data-toggle='pill' href='#contents' role='tab' data-hierarchy-enable-me='true'>
14
+ <%= t 'arclight.views.show.no_contents' %>
15
+ </a>
16
+ </li>
17
+ <li class='nav-item'>
18
+ <a class='nav-link <%= 'disabled' unless document.digital_objects.present? || document.online_content? %>' data-toggle='pill' href='#online-content' role='tab' data-arclight-online-content-tab='true'>
19
+ <% if document.digital_objects.present? || document.online_content? %>
20
+ <%= t 'arclight.views.show.online_content' %>
21
+ <% else %>
22
+ <%= t 'arclight.views.show.no_online_content' %>
23
+ <% end %>
24
+ </a>
25
+ </li>
26
+ <%= render partial: 'collection_downloads', locals: { downloads: collection_downloads(document) } %>
27
+ </ul>
28
+ <div class='tab-content'>
29
+ <div class='tab-pane active' id='overview' role='tabpanel'>
30
+ <%= render 'collection_overview' %>
31
+ </div>
32
+ <div class='tab-pane' id='contents' role='tabpanel'>
33
+ <%= render 'collection_contents' %>
34
+ </div>
35
+ <div class='tab-pane' id='online-content' role='tabpanel'>
36
+ <%= render partial: 'collection_online_contents', locals: { document: document } %>
37
+ </div>
38
+ </div>
39
+ </div>
40
+ </div>
@@ -0,0 +1,12 @@
1
+ <div class='al-sticky-sidebar'>
2
+ <h2 class="sr-only">Sidebar</h2>
3
+
4
+ <% unless blacklight_config.show.component_sidebar_items.nil? %>
5
+ <div id="accordion" role="tablist" aria-multiselectable="true">
6
+ <% items = blacklight_config.show.component_sidebar_items.select { |i| fields_have_content?(@document, i) } %>
7
+ <% items.each_with_index do |item, index| %>
8
+ <%= render partial: 'context_card', locals: { document: @document, field_accessor: item, card_index: index} %>
9
+ <% end %>
10
+ </div>
11
+ <% end %>
12
+ </div>
@@ -0,0 +1,32 @@
1
+ <div class='row'>
2
+ <div class='col-md-3'>
3
+ <%= render partial: 'show_component_sidebar' %>
4
+ </div>
5
+ <div class='col-md-9'>
6
+ <ul class='nav nav-pills' role='tablist'>
7
+ <li class='nav-item'>
8
+ <a class='nav-link active' data-toggle='pill' href='#overview' role='tab'>
9
+ <%= t 'arclight.views.show.overview' %>
10
+ </a>
11
+ </li>
12
+ <li class='nav-item'>
13
+ <a class='nav-link <%= 'disabled' unless document.online_content? %>' data-toggle='pill' href='#online-content' role='tab' data-arclight-online-content-tab='true'>
14
+ <% if document.online_content? %>
15
+ <%= t 'arclight.views.show.online_content' %>
16
+ <% else %>
17
+ <%= t 'arclight.views.show.no_online_content' %>
18
+ <% end %>
19
+ </a>
20
+ </li>
21
+ </ul>
22
+ <div class='tab-content'>
23
+ <div class='tab-pane active' id='overview' role='tabpanel'>
24
+ <%= render 'component_overview' %>
25
+ </div>
26
+ <div class='tab-pane' id='online-content' role='tabpanel'>
27
+ <%= render_document_partial(document, 'arclight_viewer') %>
28
+ </div>
29
+ </div>
30
+ </div>
31
+
32
+ </div>
@@ -0,0 +1,5 @@
1
+ <div class='al-show-header-section'>
2
+ <%= render_document_partial(document, 'arclight_document_show_header') %>
3
+ <%= render_document_partial(document, 'arclight_online_content_indicator') %>
4
+ <%= render_document_heading(document, :tag => :h1) %>
5
+ </div>
@@ -0,0 +1,30 @@
1
+ <div class='al-sticky-sidebar'>
2
+ <h2 class="sr-only">Sidebar</h2>
3
+ <div class='card'>
4
+ <div class='card-header'>
5
+ <h3 class="mb-0">Search within this collection</h3>
6
+ </div>
7
+ <div class='card-block'>
8
+ <%= render 'search_within_form' %>
9
+ </div>
10
+ </div>
11
+ <div class='al-sidebar-navigation-overview card'>
12
+ <div class='card-header'>
13
+ <h3 class="mb-0"><%= t('arclight.views.show.navigation_sidebar.title') %></h3>
14
+ </div>
15
+ <div class='card-block'>
16
+ <ul class='nav nav-pills flex-column'>
17
+ <% unless blacklight_config.show.metadata_partials.nil? %>
18
+ <% blacklight_config.show.metadata_partials.each do |item| %>
19
+ <% next unless fields_have_content?(@document, item) %>
20
+ <li class='nav-item'>
21
+ <%= link_to t("arclight.views.show.sections.#{item}"), "##{t("arclight.views.show.sections.#{item}").parameterize}", class: 'nav-link' %>
22
+ </li>
23
+ <% end %>
24
+ <% end %>
25
+ </ul>
26
+ </div>
27
+ </div>
28
+
29
+ <%= render 'shared/context_sidebar' %>
30
+ </div>
@@ -0,0 +1,8 @@
1
+ <% unless has_search_parameters? %>
2
+ <%= render 'home' %>
3
+ <% else %>
4
+ <% content_for(:sidebar) do %>
5
+ <%= render 'search_sidebar' %>
6
+ <% end %>
7
+ <%= render 'search_results' %>
8
+ <% end %>
@@ -0,0 +1,7 @@
1
+ <% content_for(:content) do %>
2
+ <section class="<%= custom_show_content_classes %>">
3
+ <%= yield %>
4
+ </section>
5
+ <% end %>
6
+
7
+ <%= render template: "layouts/blacklight/base" %>
@@ -0,0 +1,15 @@
1
+ <div class='al-search-breadcrumb'>
2
+ <%= link_to t('arclight.routes.home'), root_path %>
3
+ <%= t('arclight.breadcrumb_separator') %>
4
+ <% if collection_active? %>
5
+ <%= t('arclight.routes.collections') %>
6
+ <% elsif on_repositories_index? %>
7
+ <%= t('arclight.routes.repositories') %>
8
+ <% elsif on_repositories_show? %>
9
+ <%= link_to t('arclight.routes.repositories'), arclight_engine.repositories_path %>
10
+ <%= t('arclight.breadcrumb_separator') %>
11
+ <%= @repository.name %>
12
+ <% else %>
13
+ <%= t('arclight.routes.search_results') %>
14
+ <% end %>
15
+ </div>
@@ -0,0 +1,8 @@
1
+ <% unless blacklight_config.show.context_sidebar_items.nil? %>
2
+ <div id="accordion" role="tablist" aria-multiselectable="true">
3
+ <% items = blacklight_config.show.context_sidebar_items.select { |i| fields_have_content?(@document, i) } %>
4
+ <% items.each_with_index do |item, index| %>
5
+ <%= render partial: 'context_card', locals: { document: @document, field_accessor: item, card_index: index} %>
6
+ <% end %>
7
+ </div>
8
+ <% end %>
@@ -0,0 +1,54 @@
1
+ <nav class="navbar navbar-toggleable-md navbar-inverse bg-inverse" role="navigation">
2
+ <div class="<%= container_classes %>">
3
+ <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#user-util-collapse" aria-controls="user-util-collapse" aria-expanded="false" aria-label="Toggle navigation">
4
+ <span class="navbar-toggler-icon"></span>
5
+ </button>
6
+
7
+ <%= link_to application_name, root_path, class: "navbar-brand" %>
8
+
9
+ <div class="collapse navbar-collapse justify-content-md-end" id="user-util-collapse">
10
+ <%= render 'shared/user_util_links' %>
11
+ </div>
12
+ </div>
13
+ </nav>
14
+
15
+ <% if controller_name == 'catalog' && !has_search_parameters? && action_name == 'index' %>
16
+ <div class='al-homepage-masthead jumbotron'>
17
+ <div class='row'>
18
+ <div class='col-md-8 offset-md-2'>
19
+ <h1 class='text-center'><%= t('arclight.masthead_heading') %></h1>
20
+ </div>
21
+ </div>
22
+ <div class='row'>
23
+ <div class='col-md-6 offset-md-3'>
24
+ <div class='navbar-search'>
25
+ <%= render_search_bar %>
26
+ </div>
27
+ </div>
28
+ </div>
29
+ <nav class="navbar" role="navigation">
30
+ <ul class="nav justify-content-center">
31
+ <%= render 'shared/main_menu_links' %>
32
+ </ul>
33
+ </nav>
34
+ </div>
35
+ <% else %>
36
+ <div class='bg-faded al-masthead'>
37
+ <div class="container">
38
+ <h1><%= t('arclight.masthead_heading') %></h1>
39
+ </div>
40
+ </div>
41
+ <div class="navbar-search navbar navbar-toggleable-sm bg-faded" role="navigation">
42
+ <div class="<%= container_classes %>">
43
+ <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
44
+ <span class="navbar-toggler-icon"></span>
45
+ </button>
46
+ <div class="collapse navbar-collapse" id="navbarSupportedContent">
47
+ <ul class="navbar-nav mr-auto">
48
+ <%= render 'shared/main_menu_links' %>
49
+ </ul>
50
+ <%= render_search_bar %>
51
+ </div>
52
+ </div>
53
+ </div>
54
+ <% end %>