blacklight-spotlight 4.1.1 → 4.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/spotlight/spotlight.esm.js +27 -24
- data/app/assets/javascripts/spotlight/spotlight.esm.js.map +1 -1
- data/app/assets/javascripts/spotlight/spotlight.js +27 -24
- data/app/assets/javascripts/spotlight/spotlight.js.map +1 -1
- data/app/assets/stylesheets/spotlight/_blacklight_configuration.scss +19 -1
- data/app/components/spotlight/breadcrumbs_component.html.erb +19 -0
- data/app/components/spotlight/breadcrumbs_component.rb +23 -0
- data/app/components/spotlight/exhibit_navbar_component.html.erb +25 -0
- data/app/components/spotlight/exhibit_navbar_component.rb +12 -0
- data/app/components/spotlight/icon_component.rb +3 -3
- data/app/components/spotlight/tag_list_form_component.html.erb +14 -0
- data/app/components/spotlight/tag_list_form_component.rb +13 -0
- data/app/controllers/concerns/spotlight/controller.rb +9 -1
- data/app/controllers/spotlight/about_pages_controller.rb +1 -1
- data/app/controllers/spotlight/admin_users_controller.rb +2 -2
- data/app/controllers/spotlight/appearances_controller.rb +3 -3
- data/app/controllers/spotlight/browse_controller.rb +2 -2
- data/app/controllers/spotlight/bulk_updates_controller.rb +6 -1
- data/app/controllers/spotlight/catalog_controller.rb +13 -10
- data/app/controllers/spotlight/contacts_controller.rb +5 -5
- data/app/controllers/spotlight/custom_fields_controller.rb +5 -5
- data/app/controllers/spotlight/custom_search_fields_controller.rb +5 -5
- data/app/controllers/spotlight/dashboards_controller.rb +4 -4
- data/app/controllers/spotlight/exhibits_controller.rb +6 -5
- data/app/controllers/spotlight/feature_pages_controller.rb +5 -5
- data/app/controllers/spotlight/home_pages_controller.rb +2 -2
- data/app/controllers/spotlight/job_trackers_controller.rb +3 -3
- data/app/controllers/spotlight/metadata_configurations_controller.rb +3 -3
- data/app/controllers/spotlight/pages_controller.rb +2 -2
- data/app/controllers/spotlight/resources_controller.rb +4 -4
- data/app/controllers/spotlight/roles_controller.rb +3 -3
- data/app/controllers/spotlight/search_configurations_controller.rb +3 -3
- data/app/controllers/spotlight/searches_controller.rb +4 -4
- data/app/controllers/spotlight/sites_controller.rb +4 -4
- data/app/controllers/spotlight/tags_controller.rb +3 -3
- data/app/controllers/spotlight/translations_controller.rb +3 -3
- data/app/javascript/spotlight/admin/edit_in_place.js +27 -0
- data/app/javascript/spotlight/admin/index.js +0 -2
- data/app/models/breadcrumb.rb +15 -0
- data/app/models/spotlight/analytics/ga.rb +2 -2
- data/app/views/shared/_exhibit_navbar.html.erb +2 -24
- data/app/views/shared/_masthead.html.erb +1 -1
- data/app/views/spotlight/catalog/_document_admin_table.html.erb +1 -1
- data/app/views/spotlight/catalog/edit.html.erb +1 -1
- data/app/views/spotlight/exhibits/_form.html.erb +1 -1
- data/app/views/spotlight/exhibits/_new_exhibit_form.html.erb +1 -1
- data/app/views/spotlight/metadata_configurations/_metadata_field.html.erb +16 -5
- data/app/views/spotlight/metadata_configurations/edit.html.erb +2 -2
- data/config/locales/spotlight.en.yml +4 -0
- data/lib/generators/spotlight/templates/catalog_controller.rb +1 -0
- data/lib/generators/spotlight/templates/config/initializers/spotlight_initializer.rb +4 -0
- data/lib/spotlight/engine.rb +2 -9
- data/lib/spotlight/version.rb +1 -1
- data/spec/support/views/test_view_helpers.rb +0 -1
- metadata +9 -25
- data/app/builders/spotlight/bootstrap_breadcrumbs_builder.rb +0 -39
- data/app/javascript/spotlight/admin/appearance.js +0 -22
- data/app/views/shared/_breadcrumbs.html.erb +0 -7
@@ -18,7 +18,6 @@
|
|
18
18
|
padding: 0.75rem 0.75rem 0.75rem 40px;
|
19
19
|
margin: 0;
|
20
20
|
margin-top: -1px;
|
21
|
-
|
22
21
|
}
|
23
22
|
|
24
23
|
.dd3-handle:before {
|
@@ -48,9 +47,27 @@
|
|
48
47
|
}
|
49
48
|
}
|
50
49
|
|
50
|
+
.metadata-configuration {
|
51
|
+
td, th {
|
52
|
+
padding: 0.75rem 0.25rem;
|
53
|
+
}
|
54
|
+
th {
|
55
|
+
font-size: $font-size-sm;
|
56
|
+
}
|
57
|
+
.metadata-label-edit {
|
58
|
+
max-width: fit-content;
|
59
|
+
}
|
60
|
+
.restore-default .btn {
|
61
|
+
text-wrap: nowrap;
|
62
|
+
margin-left: 0.5rem;
|
63
|
+
}
|
64
|
+
}
|
65
|
+
|
66
|
+
// the table id
|
51
67
|
#nested-fields {
|
52
68
|
margin-bottom: 1em;
|
53
69
|
|
70
|
+
// the tbody class
|
54
71
|
.metadata_fields {
|
55
72
|
.checkbox-cell {
|
56
73
|
vertical-align: middle;
|
@@ -59,6 +76,7 @@
|
|
59
76
|
|
60
77
|
.metadata-select {
|
61
78
|
display: inline-block;
|
79
|
+
text-wrap: nowrap;
|
62
80
|
min-width: 72px;
|
63
81
|
}
|
64
82
|
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<div class="container breadcrumbs-container" role="navigation" aria-label="<%= t('spotlight.breadcrumb.label') %>">
|
2
|
+
<div class="row">
|
3
|
+
<div class="col-md-12">
|
4
|
+
<nav>
|
5
|
+
<ul class="breadcrumb list-unstyled d-flex">
|
6
|
+
<% breadcrumbs.each do |crumb| %>
|
7
|
+
<li class="breadcrumb-item <%= crumb == breadcrumbs.last ? 'active' : '' %>">
|
8
|
+
<% if crumb.link? && crumb != breadcrumbs.last %>
|
9
|
+
<%= link_to crumb.name, path(crumb.path) %>
|
10
|
+
<% else %>
|
11
|
+
<%= crumb.name %>
|
12
|
+
<% end %>
|
13
|
+
</li>
|
14
|
+
<% end %>
|
15
|
+
</ul>
|
16
|
+
</nav>
|
17
|
+
</div>
|
18
|
+
</div>
|
19
|
+
</div>
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Spotlight
|
4
|
+
# Component to render breadcrumbs
|
5
|
+
class BreadcrumbsComponent < ViewComponent::Base
|
6
|
+
attr_reader :breadcrumbs
|
7
|
+
|
8
|
+
def initialize(breadcrumbs: [])
|
9
|
+
@breadcrumbs = breadcrumbs
|
10
|
+
super
|
11
|
+
end
|
12
|
+
|
13
|
+
def render?
|
14
|
+
!helpers.resource_masthead? && breadcrumbs.present?
|
15
|
+
end
|
16
|
+
|
17
|
+
def path(path)
|
18
|
+
return path unless path.instance_of?(::Spotlight::Exhibit)
|
19
|
+
|
20
|
+
helpers.exhibit_path(path)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
<div id="exhibit-navbar" class="exhibit-navbar navbar navbar-light navbar-expand-md" role="navigation" aria-label="<%= t('spotlight.exhibitnavbar.label') %>">
|
2
|
+
<div class="container flex-column flex-md-row">
|
3
|
+
<% if helpers.resource_masthead? %>
|
4
|
+
<%= link_to(helpers.current_exhibit.title, helpers.spotlight.exhibit_path(helpers.current_exhibit), class: 'navbar-brand') %>
|
5
|
+
<% end %>
|
6
|
+
|
7
|
+
<ul class="navbar-nav <%= helpers.resource_masthead? ? 'justify-content-md-end' : 'mr-auto me-auto' %>">
|
8
|
+
<li class="nav-item <%= "active" if helpers.current_page?([helpers.spotlight, helpers.current_exhibit]) %>"><%= link_to t(:'spotlight.curation.nav.home'), [helpers.spotlight, helpers.current_exhibit], class: 'nav-link' %></li>
|
9
|
+
<% helpers.current_exhibit.main_navigations.displayable.each do |navigation| %>
|
10
|
+
<%= render partial: "shared/#{navigation.nav_type}_navbar", locals: { navigation: navigation } %>
|
11
|
+
<% end %>
|
12
|
+
</ul>
|
13
|
+
<% if helpers.should_render_spotlight_search_bar? %>
|
14
|
+
<div class="navbar-right navbar-nav exhibit-search-form mt-3 mt-md-0">
|
15
|
+
<%= prepend_to_search_bar %>
|
16
|
+
<%= render search_component.new(
|
17
|
+
url: helpers.search_action_url,
|
18
|
+
advanced_search_url: helpers.search_action_url(action: 'advanced_search'),
|
19
|
+
params: helpers.search_state.params_for_search.except(:qt),
|
20
|
+
autocomplete_path: suggest_index_catalog_path
|
21
|
+
) %>
|
22
|
+
</div>
|
23
|
+
<% end %>
|
24
|
+
</div>
|
25
|
+
</div>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Spotlight
|
4
|
+
# Allows component addition to exhibit navbar
|
5
|
+
class ExhibitNavbarComponent < ViewComponent::Base
|
6
|
+
renders_one :prepend_to_search_bar
|
7
|
+
|
8
|
+
def search_component
|
9
|
+
helpers.blacklight_config&.view_config(helpers.document_index_view_type)&.search_bar_component || Blacklight::SearchBarComponent
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
@@ -3,10 +3,10 @@
|
|
3
3
|
module Spotlight
|
4
4
|
# Displays the document
|
5
5
|
class IconComponent < Blacklight::Icons::IconComponent
|
6
|
-
if Blacklight.version < '
|
7
|
-
# Work around https://github.com/projectblacklight/blacklight/issues/3232 (fixed in Blacklight
|
6
|
+
if Blacklight.version < '7.39'
|
7
|
+
# Work around https://github.com/projectblacklight/blacklight/issues/3232 (fixed in Blacklight 7.39)
|
8
8
|
def classes
|
9
|
-
(@classes - ['blacklight-icons-'] + ["blacklight-icons-#{name}"]).uniq
|
9
|
+
((@classes || (super if defined?(super)) || []) - ['blacklight-icons-'] + ["blacklight-icons-#{name}"]).uniq
|
10
10
|
end
|
11
11
|
end
|
12
12
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<% if Spotlight::Engine.config.site_tags %>
|
2
|
+
<div class="form-group row">
|
3
|
+
<label class="col-form-label col-md-2" for="tag_list">Tag list</label>
|
4
|
+
<div class="col-md-10">
|
5
|
+
<div class="overflow-scroll rounded border px-3 py-2 h-25" style="overflow: scroll; height: 25vh!important;">
|
6
|
+
<% Spotlight::Engine.config.site_tags.each do |tag| %>
|
7
|
+
<%= form.check_box :tag_list, { multiple: true, label: tag }, tag , nil %>
|
8
|
+
<% end %>
|
9
|
+
</div>
|
10
|
+
</div>
|
11
|
+
</div>
|
12
|
+
<% else %>
|
13
|
+
<%= form.text_field :tag_list, value: form.object.tag_list.to_s %>
|
14
|
+
<% end %>
|
@@ -11,7 +11,7 @@ module Spotlight
|
|
11
11
|
include Spotlight::Config
|
12
12
|
|
13
13
|
included do
|
14
|
-
helper_method :current_site, :current_exhibit, :current_masthead, :exhibit_masthead?, :resource_masthead
|
14
|
+
helper_method :current_site, :current_exhibit, :current_masthead, :exhibit_masthead?, :resource_masthead?, :breadcrumbs
|
15
15
|
before_action :set_exhibit_locale_scope, :set_locale
|
16
16
|
end
|
17
17
|
|
@@ -23,6 +23,14 @@ module Spotlight
|
|
23
23
|
@current_site ||= Spotlight::Site.instance
|
24
24
|
end
|
25
25
|
|
26
|
+
def breadcrumbs
|
27
|
+
@breadcrumbs ||= []
|
28
|
+
end
|
29
|
+
|
30
|
+
def add_breadcrumb(name, path = nil, _current = nil)
|
31
|
+
breadcrumbs << Breadcrumb.new(name, path)
|
32
|
+
end
|
33
|
+
|
26
34
|
def current_exhibit
|
27
35
|
@exhibit || (Spotlight::Exhibit.find(params[:exhibit_id]) if params[:exhibit_id].present?)
|
28
36
|
end
|
@@ -46,7 +46,7 @@ module Spotlight
|
|
46
46
|
|
47
47
|
def attach_section_breadcrumbs
|
48
48
|
if action_name == 'edit'
|
49
|
-
add_breadcrumb
|
49
|
+
add_breadcrumb(t(:'spotlight.pages.index.about_pages.header'), exhibit_about_pages_path(@exhibit))
|
50
50
|
else
|
51
51
|
add_breadcrumb(@exhibit.main_navigations.about.label_or_default, [spotlight, @exhibit, @exhibit.main_about_page])
|
52
52
|
end
|
@@ -11,8 +11,8 @@ module Spotlight
|
|
11
11
|
load_and_authorize_resource :site, class: 'Spotlight::Site'
|
12
12
|
|
13
13
|
def index
|
14
|
-
add_breadcrumb
|
15
|
-
add_breadcrumb
|
14
|
+
add_breadcrumb(t(:'spotlight.sites.home'), root_url)
|
15
|
+
add_breadcrumb(t(:'spotlight.admin_users.index.page_title'))
|
16
16
|
end
|
17
17
|
|
18
18
|
def create
|
@@ -8,9 +8,9 @@ module Spotlight
|
|
8
8
|
load_and_authorize_resource id_param: :exhibit_id, instance_name: 'exhibit', class: 'Spotlight::Exhibit', parent: false
|
9
9
|
|
10
10
|
def edit
|
11
|
-
add_breadcrumb
|
12
|
-
add_breadcrumb
|
13
|
-
add_breadcrumb
|
11
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
12
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
13
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.appearance'), edit_exhibit_appearance_path(@exhibit))
|
14
14
|
end
|
15
15
|
|
16
16
|
def update
|
@@ -67,13 +67,13 @@ module Spotlight
|
|
67
67
|
end
|
68
68
|
|
69
69
|
def attach_breadcrumbs
|
70
|
-
add_breadcrumb
|
70
|
+
add_breadcrumb(t(:'spotlight.curation.nav.home', title: @exhibit.title), @exhibit)
|
71
71
|
add_breadcrumb(@exhibit.main_navigations.browse.label_or_default, exhibit_browse_index_path(@exhibit))
|
72
72
|
add_breadcrumb(@group.title, exhibit_browse_groups_path(@exhibit, @group)) if @group.present?
|
73
73
|
end
|
74
74
|
|
75
75
|
def attach_search_breadcrumb
|
76
|
-
add_breadcrumb
|
76
|
+
add_breadcrumb(@search.full_title, (@group.present? ? exhibit_browse_group_path(@exhibit, @group, @search) : exhibit_browse_path(@exhibit, @search)))
|
77
77
|
end
|
78
78
|
|
79
79
|
def _prefixes
|
@@ -8,8 +8,13 @@ module Spotlight
|
|
8
8
|
class BulkUpdatesController < Spotlight::ApplicationController
|
9
9
|
before_action :authenticate_user!
|
10
10
|
before_action :check_authorization
|
11
|
+
load_and_authorize_resource :exhibit, class: 'Spotlight::Exhibit'
|
11
12
|
|
12
|
-
def edit
|
13
|
+
def edit
|
14
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
15
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
16
|
+
add_breadcrumb(t(:'spotlight.pages.index.bulk_updates.header'), edit_exhibit_bulk_updates_path(@exhibit))
|
17
|
+
end
|
13
18
|
|
14
19
|
def download_template
|
15
20
|
# Set Last-Modified as a work-around for https://github.com/rack/rack/issues/1619
|
@@ -8,6 +8,7 @@ module Spotlight
|
|
8
8
|
# rubocop:disable Metrics/ClassLength
|
9
9
|
class CatalogController < ::CatalogController
|
10
10
|
include Spotlight::Concerns::ApplicationController
|
11
|
+
|
11
12
|
load_and_authorize_resource :exhibit, class: Spotlight::Exhibit, prepend: true
|
12
13
|
include Blacklight::Catalog
|
13
14
|
include Spotlight::Catalog
|
@@ -42,6 +43,8 @@ module Spotlight
|
|
42
43
|
partials: [:index_compact],
|
43
44
|
document_actions: [])
|
44
45
|
end
|
46
|
+
blacklight_config.view.admin_table.document_component ||= Spotlight::DocumentAdminTableComponent
|
47
|
+
|
45
48
|
if Blacklight::VERSION > '8'
|
46
49
|
blacklight_config.track_search_session.storage = false
|
47
50
|
else
|
@@ -83,8 +86,8 @@ module Spotlight
|
|
83
86
|
end
|
84
87
|
|
85
88
|
def admin
|
86
|
-
add_breadcrumb
|
87
|
-
add_breadcrumb
|
89
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
90
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.items'), admin_exhibit_catalog_path(@exhibit))
|
88
91
|
(@response,) = search_service.search_results
|
89
92
|
@filters = params[:f] || []
|
90
93
|
|
@@ -146,10 +149,10 @@ module Spotlight
|
|
146
149
|
|
147
150
|
def attach_breadcrumbs
|
148
151
|
if view_context.current_page?({ action: :admin })
|
149
|
-
add_breadcrumb
|
152
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), exhibit_root_path(@exhibit))
|
150
153
|
else
|
151
154
|
# When not on the admin page, get the translated value for the "Home" breadcrumb
|
152
|
-
add_breadcrumb
|
155
|
+
add_breadcrumb(t(:'spotlight.curation.nav.home', title: @exhibit.title), exhibit_root_path(@exhibit))
|
153
156
|
end
|
154
157
|
end
|
155
158
|
|
@@ -225,21 +228,21 @@ module Spotlight
|
|
225
228
|
def add_breadcrumb_with_search_params
|
226
229
|
return unless has_search_parameters?
|
227
230
|
|
228
|
-
add_breadcrumb
|
231
|
+
add_breadcrumb(t(:'spotlight.catalog.breadcrumb.index'), spotlight.search_exhibit_catalog_path(params.to_unsafe_h), current: action_name == 'index')
|
229
232
|
end
|
230
233
|
|
231
234
|
# rubocop:disable Metrics/AbcSize
|
232
235
|
def add_document_breadcrumbs(document)
|
233
236
|
if current_browse_category
|
234
|
-
add_breadcrumb
|
235
|
-
add_breadcrumb
|
237
|
+
add_breadcrumb(current_browse_category.exhibit.main_navigations.browse.label_or_default, exhibit_browse_index_path(current_browse_category.exhibit))
|
238
|
+
add_breadcrumb(current_browse_category.title, exhibit_browse_path(current_browse_category.exhibit, current_browse_category))
|
236
239
|
elsif current_page_context&.title&.present? && !current_page_context.is_a?(Spotlight::HomePage)
|
237
|
-
add_breadcrumb
|
240
|
+
add_breadcrumb(current_page_context.title, [current_page_context.exhibit, current_page_context])
|
238
241
|
elsif current_search_session && !current_page_context&.is_a?(Spotlight::HomePage)
|
239
|
-
add_breadcrumb
|
242
|
+
add_breadcrumb(t(:'spotlight.catalog.breadcrumb.index'), search_action_url(current_search_session.query_params))
|
240
243
|
end
|
241
244
|
|
242
|
-
add_breadcrumb
|
245
|
+
add_breadcrumb(view_context.document_presenter(document).heading, polymorphic_path([current_exhibit, document]))
|
243
246
|
end
|
244
247
|
# rubocop:enable Metrics/AbcSize
|
245
248
|
|
@@ -11,11 +11,11 @@ module Spotlight
|
|
11
11
|
before_action :attach_breadcrumbs
|
12
12
|
|
13
13
|
def new
|
14
|
-
add_breadcrumb
|
14
|
+
add_breadcrumb(t(:'helpers.action.spotlight/contact.create'), new_exhibit_contact_path(@exhibit))
|
15
15
|
end
|
16
16
|
|
17
17
|
def edit
|
18
|
-
add_breadcrumb
|
18
|
+
add_breadcrumb(@contact.name, edit_exhibit_contact_path(@contact.exhibit, @contact))
|
19
19
|
end
|
20
20
|
|
21
21
|
def create
|
@@ -42,9 +42,9 @@ module Spotlight
|
|
42
42
|
protected
|
43
43
|
|
44
44
|
def attach_breadcrumbs
|
45
|
-
add_breadcrumb
|
46
|
-
add_breadcrumb
|
47
|
-
add_breadcrumb
|
45
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
46
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
47
|
+
add_breadcrumb(t(:'spotlight.pages.index.about_pages.header'), exhibit_about_pages_path(@exhibit))
|
48
48
|
end
|
49
49
|
|
50
50
|
def contact_params
|
@@ -12,11 +12,11 @@ module Spotlight
|
|
12
12
|
|
13
13
|
def new
|
14
14
|
@custom_field.field_type ||= 'text'
|
15
|
-
add_breadcrumb
|
15
|
+
add_breadcrumb(t(:'helpers.action.spotlight/custom_field.create'), new_exhibit_custom_field_path(@exhibit))
|
16
16
|
end
|
17
17
|
|
18
18
|
def edit
|
19
|
-
add_breadcrumb
|
19
|
+
add_breadcrumb(@custom_field.label, edit_exhibit_custom_field_path(@custom_field.exhibit, @custom_field))
|
20
20
|
end
|
21
21
|
|
22
22
|
def create
|
@@ -50,9 +50,9 @@ module Spotlight
|
|
50
50
|
protected
|
51
51
|
|
52
52
|
def attach_breadcrumbs
|
53
|
-
add_breadcrumb
|
54
|
-
add_breadcrumb
|
55
|
-
add_breadcrumb
|
53
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
54
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
55
|
+
add_breadcrumb(t(:'spotlight.metadata_configurations.edit.header'), edit_exhibit_metadata_configuration_path(@exhibit))
|
56
56
|
end
|
57
57
|
|
58
58
|
def custom_field_params
|
@@ -11,12 +11,12 @@ module Spotlight
|
|
11
11
|
|
12
12
|
# GET /custom_search_fields/new
|
13
13
|
def new
|
14
|
-
add_breadcrumb
|
14
|
+
add_breadcrumb(t(:'helpers.action.spotlight/custom_search_field.create'), new_exhibit_custom_search_field_path(@exhibit))
|
15
15
|
end
|
16
16
|
|
17
17
|
# GET /custom_search_fields/1/edit
|
18
18
|
def edit
|
19
|
-
add_breadcrumb
|
19
|
+
add_breadcrumb(@custom_search_field.label, edit_exhibit_custom_search_field_path(@custom_search_field.exhibit, @custom_search_field))
|
20
20
|
end
|
21
21
|
|
22
22
|
# POST /custom_search_fields
|
@@ -52,9 +52,9 @@ module Spotlight
|
|
52
52
|
private
|
53
53
|
|
54
54
|
def attach_breadcrumbs
|
55
|
-
add_breadcrumb
|
56
|
-
add_breadcrumb
|
57
|
-
add_breadcrumb
|
55
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
56
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
57
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.search_configuration'), edit_exhibit_search_configuration_path(@exhibit))
|
58
58
|
end
|
59
59
|
|
60
60
|
# Only allow trusted parameters through.
|
@@ -46,13 +46,13 @@ module Spotlight
|
|
46
46
|
protected
|
47
47
|
|
48
48
|
def attach_analytics_breadcrumbs
|
49
|
-
add_breadcrumb
|
50
|
-
add_breadcrumb
|
49
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
50
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.analytics'), analytics_exhibit_dashboard_path(@exhibit))
|
51
51
|
end
|
52
52
|
|
53
53
|
def attach_dashboard_breadcrumbs
|
54
|
-
add_breadcrumb
|
55
|
-
add_breadcrumb
|
54
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
55
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.dashboard'), exhibit_dashboard_path(@exhibit))
|
56
56
|
end
|
57
57
|
|
58
58
|
def load_recent_solr_documents(count)
|
@@ -34,8 +34,8 @@ module Spotlight
|
|
34
34
|
|
35
35
|
def new
|
36
36
|
build_initial_exhibit_contact_emails
|
37
|
-
add_breadcrumb
|
38
|
-
add_breadcrumb
|
37
|
+
add_breadcrumb(t(:'spotlight.sites.home'), root_url)
|
38
|
+
add_breadcrumb(t(:'spotlight.exhibits.new.page_title'))
|
39
39
|
end
|
40
40
|
|
41
41
|
def process_import
|
@@ -47,9 +47,9 @@ module Spotlight
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def edit
|
50
|
-
add_breadcrumb
|
51
|
-
add_breadcrumb
|
52
|
-
add_breadcrumb
|
50
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
51
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
52
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.settings'), edit_exhibit_path(@exhibit))
|
53
53
|
build_initial_exhibit_contact_emails
|
54
54
|
end
|
55
55
|
|
@@ -94,6 +94,7 @@ module Spotlight
|
|
94
94
|
:description,
|
95
95
|
:published,
|
96
96
|
:tag_list,
|
97
|
+
tag_list: [],
|
97
98
|
contact_emails_attributes: %i[id email],
|
98
99
|
languages_attributes: %i[id public]
|
99
100
|
)
|
@@ -26,15 +26,15 @@ module Spotlight
|
|
26
26
|
end
|
27
27
|
|
28
28
|
def attach_page_breadcrumbs
|
29
|
-
add_breadcrumb
|
29
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.feature_pages'), exhibit_feature_pages_path(@exhibit)) if action_name == 'edit'
|
30
30
|
|
31
|
-
add_breadcrumb
|
32
|
-
add_breadcrumb
|
31
|
+
add_breadcrumb(@page.parent_page.title, [spotlight, @page.exhibit, @page.parent_page]) unless @page.top_level_page?
|
32
|
+
add_breadcrumb(@page.title, action_name == 'edit' ? [:edit, @page.exhibit, @page] : [spotlight, @page.exhibit, @page])
|
33
33
|
end
|
34
34
|
|
35
35
|
def attach_index_breadcrumbs
|
36
|
-
add_breadcrumb
|
37
|
-
add_breadcrumb
|
36
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
37
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.feature_pages'), exhibit_feature_pages_path(@exhibit))
|
38
38
|
end
|
39
39
|
|
40
40
|
def update_all_page_params
|
@@ -27,8 +27,8 @@ module Spotlight
|
|
27
27
|
end
|
28
28
|
|
29
29
|
def edit
|
30
|
-
add_breadcrumb
|
31
|
-
add_breadcrumb
|
30
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.feature_pages'), exhibit_feature_pages_path(@exhibit))
|
31
|
+
add_breadcrumb(@page.title, [:edit, @exhibit, @page])
|
32
32
|
super
|
33
33
|
end
|
34
34
|
|
@@ -9,9 +9,9 @@ module Spotlight
|
|
9
9
|
|
10
10
|
# GET /:exhibit_id/job_trackers/1
|
11
11
|
def show
|
12
|
-
add_breadcrumb
|
13
|
-
add_breadcrumb
|
14
|
-
add_breadcrumb
|
12
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
13
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.dashboard'), exhibit_dashboard_path(@exhibit))
|
14
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.job_trackers'), [@job_tracker.on, @job_tracker])
|
15
15
|
end
|
16
16
|
end
|
17
17
|
end
|
@@ -18,9 +18,9 @@ module Spotlight
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def edit
|
21
|
-
add_breadcrumb
|
22
|
-
add_breadcrumb
|
23
|
-
add_breadcrumb
|
21
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
22
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
23
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.metadata'), edit_exhibit_metadata_configuration_path(@exhibit))
|
24
24
|
end
|
25
25
|
|
26
26
|
def update
|
@@ -162,7 +162,7 @@ module Spotlight
|
|
162
162
|
|
163
163
|
def attach_breadcrumbs
|
164
164
|
if view_context.current_page? '/'
|
165
|
-
add_breadcrumb
|
165
|
+
add_breadcrumb(t(:'spotlight.curation.nav.home', title: current_exhibit.title), main_app.root_path)
|
166
166
|
elsif @page
|
167
167
|
# Use curator-accessible i18n key for user-facing breadcrumb
|
168
168
|
breadcrumb_to_exhibit_root(:'spotlight.curation.nav.home')
|
@@ -187,7 +187,7 @@ module Spotlight
|
|
187
187
|
end
|
188
188
|
|
189
189
|
def breadcrumb_to_exhibit_root(key)
|
190
|
-
add_breadcrumb
|
190
|
+
add_breadcrumb(t(key, title: current_exhibit.title), spotlight.exhibit_root_path(current_exhibit))
|
191
191
|
end
|
192
192
|
|
193
193
|
# Only allow trusted parameters through.
|
@@ -15,10 +15,10 @@ module Spotlight
|
|
15
15
|
helper_method :resource_class
|
16
16
|
|
17
17
|
def new
|
18
|
-
add_breadcrumb
|
19
|
-
add_breadcrumb
|
20
|
-
add_breadcrumb
|
21
|
-
add_breadcrumb
|
18
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), exhibit_root_path(@exhibit))
|
19
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
20
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.items'), admin_exhibit_catalog_path(@exhibit))
|
21
|
+
add_breadcrumb(t(:'spotlight.resources.new.header'), new_exhibit_resource_path(@exhibit))
|
22
22
|
|
23
23
|
render
|
24
24
|
end
|
@@ -13,9 +13,9 @@ module Spotlight
|
|
13
13
|
role = @exhibit.roles.build
|
14
14
|
authorize! :edit, role
|
15
15
|
|
16
|
-
add_breadcrumb
|
17
|
-
add_breadcrumb
|
18
|
-
add_breadcrumb
|
16
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
17
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
18
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.users'), exhibit_roles_path(@exhibit))
|
19
19
|
end
|
20
20
|
|
21
21
|
def update_all
|
@@ -19,9 +19,9 @@ module Spotlight
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def edit
|
22
|
-
add_breadcrumb
|
23
|
-
add_breadcrumb
|
24
|
-
add_breadcrumb
|
22
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: @exhibit.title), @exhibit)
|
23
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.header'), exhibit_dashboard_path(@exhibit))
|
24
|
+
add_breadcrumb(t(:'spotlight.configuration.sidebar.search_configuration'), edit_exhibit_search_configuration_path(@exhibit))
|
25
25
|
|
26
26
|
@field_metadata = Spotlight::FieldMetadata.new(current_exhibit, blacklight_config.repository, @blacklight_configuration.blacklight_config)
|
27
27
|
end
|
@@ -30,7 +30,7 @@ module Spotlight
|
|
30
30
|
|
31
31
|
def edit
|
32
32
|
@groups = @exhibit.groups
|
33
|
-
add_breadcrumb
|
33
|
+
add_breadcrumb(@search.full_title, edit_exhibit_search_path(@search.exhibit, @search))
|
34
34
|
@exhibit = @search.exhibit
|
35
35
|
end
|
36
36
|
|
@@ -94,9 +94,9 @@ module Spotlight
|
|
94
94
|
|
95
95
|
def attach_breadcrumbs
|
96
96
|
e = @exhibit || @search&.exhibit
|
97
|
-
add_breadcrumb
|
98
|
-
add_breadcrumb
|
99
|
-
add_breadcrumb
|
97
|
+
add_breadcrumb(t(:'spotlight.exhibits.breadcrumb', title: e.title), e)
|
98
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.header'), exhibit_dashboard_path(e))
|
99
|
+
add_breadcrumb(t(:'spotlight.curation.sidebar.browse'), exhibit_searches_path(e))
|
100
100
|
end
|
101
101
|
|
102
102
|
def batch_search_params
|