blacklight-spotlight 2.13.0 → 3.0.0.alpha.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (282) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/blacklight/add_circle.svg +1 -0
  3. data/app/assets/images/blacklight/arrow_back_ios.svg +1 -0
  4. data/app/assets/images/blacklight/arrow_forward_ios.svg +1 -0
  5. data/app/assets/images/blacklight/check.svg +1 -0
  6. data/app/assets/images/blacklight/check_circle.svg +1 -0
  7. data/app/assets/images/blacklight/chevron_right.svg +1 -0
  8. data/app/assets/images/blacklight/custom_fullscreen.svg +1 -0
  9. data/app/assets/images/blacklight/edit.svg +1 -0
  10. data/app/assets/images/blacklight/error.svg +1 -0
  11. data/app/assets/images/blacklight/info.svg +1 -0
  12. data/app/assets/images/blacklight/remove_circle.svg +1 -0
  13. data/app/assets/images/blacklight/remove_circle_outline.svg +1 -0
  14. data/app/assets/images/blacklight/resize_small.svg +1 -0
  15. data/app/assets/images/blacklight/warning.svg +1 -0
  16. data/app/assets/javascripts/spotlight/admin/block_mixins/autocompleteable.js +1 -1
  17. data/app/assets/javascripts/spotlight/admin/block_mixins/plustextable.js +2 -2
  18. data/app/assets/javascripts/spotlight/admin/blocks/browse_block.js +1 -1
  19. data/app/assets/javascripts/spotlight/admin/blocks/pages_block.js +1 -1
  20. data/app/assets/javascripts/spotlight/admin/blocks/resources_block.js +7 -7
  21. data/app/assets/javascripts/spotlight/admin/blocks/solr_documents_base_block.js +3 -3
  22. data/app/assets/javascripts/spotlight/admin/blocks/uploaded_items_block.js +7 -7
  23. data/app/assets/javascripts/spotlight/admin/catalog_edit.js +2 -2
  24. data/app/assets/javascripts/spotlight/admin/multi_image_selector.js +2 -2
  25. data/app/assets/javascripts/spotlight/admin/reindex_monitor.js +1 -1
  26. data/app/assets/javascripts/spotlight/admin/search_typeahead.js +2 -2
  27. data/app/assets/javascripts/spotlight/admin/sir-trevor/block_controls.js +1 -1
  28. data/app/assets/javascripts/spotlight/admin/users.js +1 -1
  29. data/app/assets/javascripts/spotlight/user/index.js +1 -0
  30. data/app/assets/javascripts/spotlight/user/zpr_links.js.erb +6 -6
  31. data/app/assets/stylesheets/spotlight/_blacklight_configuration.scss +44 -4
  32. data/app/assets/stylesheets/spotlight/_blacklight_overrides.scss +4 -8
  33. data/app/assets/stylesheets/spotlight/_bootstrap_overrides.scss +31 -14
  34. data/app/assets/stylesheets/spotlight/_browse.scss +16 -13
  35. data/app/assets/stylesheets/spotlight/_catalog.scss +13 -7
  36. data/app/assets/stylesheets/spotlight/_collapse_toggle.scss +10 -14
  37. data/app/assets/stylesheets/spotlight/_curation.scss +34 -32
  38. data/app/assets/stylesheets/spotlight/_exhibit_admin.scss +4 -29
  39. data/app/assets/stylesheets/spotlight/_exhibits_index.scss +16 -14
  40. data/app/assets/stylesheets/spotlight/_featured_browse_categories_block.scss +22 -20
  41. data/app/assets/stylesheets/spotlight/_footer.scss +2 -2
  42. data/app/assets/stylesheets/spotlight/_header.scss +18 -39
  43. data/app/assets/stylesheets/spotlight/_item_text_block.scss +1 -24
  44. data/app/assets/stylesheets/spotlight/_mixins.scss +3 -8
  45. data/app/assets/stylesheets/spotlight/_multi_up_item_grid.scss +1 -1
  46. data/app/assets/stylesheets/spotlight/_nestable.scss +1 -2
  47. data/app/assets/stylesheets/spotlight/_pages.scss +33 -54
  48. data/app/assets/stylesheets/spotlight/_report_a_problem.scss +7 -1
  49. data/app/assets/stylesheets/spotlight/_sir-trevor_overrides.scss +9 -9
  50. data/app/assets/stylesheets/spotlight/_slideshow_block.scss +13 -11
  51. data/app/assets/stylesheets/spotlight/_spotlight.scss +0 -1
  52. data/app/assets/stylesheets/spotlight/_translations.scss +12 -12
  53. data/app/assets/stylesheets/spotlight/_variables.scss +14 -15
  54. data/app/assets/stylesheets/spotlight/_variables_bootstrap.scss +7 -7
  55. data/app/assets/stylesheets/spotlight/typeahead.css +1 -1
  56. data/app/builders/spotlight/bootstrap_breadcrumbs_builder.rb +3 -2
  57. data/app/controllers/concerns/spotlight/catalog.rb +1 -1
  58. data/app/controllers/concerns/spotlight/controller.rb +3 -3
  59. data/app/controllers/concerns/spotlight/search_helper.rb +23 -0
  60. data/app/controllers/spotlight/browse_controller.rb +18 -4
  61. data/app/controllers/spotlight/catalog_controller.rb +13 -17
  62. data/app/controllers/spotlight/dashboards_controller.rb +5 -1
  63. data/app/controllers/spotlight/exhibits_controller.rb +1 -1
  64. data/app/controllers/spotlight/home_pages_controller.rb +32 -3
  65. data/app/controllers/spotlight/pages_controller.rb +19 -1
  66. data/app/controllers/spotlight/search_configurations_controller.rb +3 -3
  67. data/app/controllers/spotlight/searches_controller.rb +4 -1
  68. data/app/controllers/spotlight/solr_controller.rb +1 -2
  69. data/app/helpers/spotlight/application_helper.rb +1 -1
  70. data/app/helpers/spotlight/browse_helper.rb +1 -1
  71. data/app/helpers/spotlight/crud_link_helpers.rb +19 -0
  72. data/app/helpers/spotlight/pages_helper.rb +1 -1
  73. data/app/mailers/spotlight/contact_mailer.rb +1 -1
  74. data/app/models/concerns/spotlight/access_controls_enforcement_search_builder.rb +2 -2
  75. data/app/models/concerns/spotlight/exhibit_analytics.rb +1 -3
  76. data/app/models/concerns/spotlight/exhibit_documents.rb +1 -1
  77. data/app/models/sir_trevor_rails/blocks/solr_documents_block.rb +11 -3
  78. data/app/models/spotlight/ability.rb +1 -1
  79. data/app/models/spotlight/analytics/ga.rb +25 -35
  80. data/app/models/spotlight/analytics/ga_model.rb +29 -0
  81. data/app/models/spotlight/blacklight_configuration.rb +5 -3
  82. data/app/models/spotlight/contact_form.rb +11 -4
  83. data/app/models/spotlight/exhibit.rb +0 -4
  84. data/app/models/spotlight/field_metadata.rb +3 -9
  85. data/app/models/spotlight/page.rb +0 -3
  86. data/app/models/spotlight/page_configurations.rb +1 -1
  87. data/app/models/spotlight/role.rb +0 -4
  88. data/app/models/spotlight/search.rb +3 -17
  89. data/app/presenters/spotlight/iiif_manifest_presenter.rb +5 -1
  90. data/app/serializers/spotlight/exhibit_export_serializer.rb +69 -28
  91. data/app/serializers/spotlight/page_representer.rb +1 -1
  92. data/app/views/catalog/_save_search.html.erb +6 -4
  93. data/app/views/devise/mailer/invitation_instructions.html.erb +1 -1
  94. data/app/views/layouts/spotlight/base.html.erb +48 -0
  95. data/app/views/layouts/spotlight/spotlight.html.erb +16 -54
  96. data/app/views/shared/_about_navbar.html.erb +2 -2
  97. data/app/views/shared/_browse_navbar.html.erb +2 -2
  98. data/app/views/shared/_curated_features_navbar.html.erb +4 -4
  99. data/app/views/shared/_exhibit_navbar.html.erb +5 -5
  100. data/app/views/shared/_header_navbar.html.erb +8 -13
  101. data/app/views/shared/_masthead.html.erb +1 -1
  102. data/app/views/shared/_site_sidebar.html.erb +6 -6
  103. data/app/views/shared/_user_util_links.html.erb +47 -0
  104. data/app/views/spotlight/about_pages/_contact.html.erb +3 -4
  105. data/app/views/spotlight/about_pages/_contacts.html.erb +1 -1
  106. data/app/views/spotlight/about_pages/_sidebar.html.erb +3 -5
  107. data/app/views/spotlight/about_pages/index.html.erb +7 -6
  108. data/app/views/spotlight/admin_users/index.html.erb +78 -79
  109. data/app/views/spotlight/appearances/edit.html.erb +26 -23
  110. data/app/views/spotlight/browse/_search.html.erb +2 -2
  111. data/app/views/spotlight/browse/_search_box.html.erb +9 -6
  112. data/app/views/spotlight/browse/_search_title.html.erb +1 -1
  113. data/app/views/spotlight/browse/_sort_and_per_page.html.erb +3 -5
  114. data/app/views/spotlight/browse/index.html.erb +4 -6
  115. data/app/views/spotlight/browse/show.html.erb +1 -1
  116. data/app/views/spotlight/catalog/_admin_header.html.erb +2 -2
  117. data/app/views/spotlight/catalog/_curation_mode_toggle_default.html.erb +1 -1
  118. data/app/views/spotlight/catalog/_document_admin_table.html.erb +4 -4
  119. data/app/views/spotlight/catalog/_edit_sidecar.html.erb +1 -1
  120. data/app/views/spotlight/catalog/_index_compact_default.html.erb +1 -2
  121. data/app/views/spotlight/catalog/_reindex_progress_panel.html.erb +3 -5
  122. data/app/views/spotlight/catalog/admin.html.erb +12 -12
  123. data/app/views/spotlight/contact_forms/new.html.erb +1 -3
  124. data/app/views/spotlight/contacts/edit.html.erb +6 -5
  125. data/app/views/spotlight/contacts/new.html.erb +6 -5
  126. data/app/views/spotlight/custom_fields/edit.html.erb +6 -5
  127. data/app/views/spotlight/custom_fields/new.html.erb +6 -5
  128. data/app/views/spotlight/dashboards/_analytics.html.erb +3 -3
  129. data/app/views/spotlight/dashboards/_page.html.erb +6 -6
  130. data/app/views/spotlight/dashboards/_page_activity.html.erb +5 -5
  131. data/app/views/spotlight/dashboards/_reindexing_activity.html.erb +12 -12
  132. data/app/views/spotlight/dashboards/analytics.html.erb +11 -11
  133. data/app/views/spotlight/dashboards/show.html.erb +13 -13
  134. data/app/views/spotlight/exhibits/_confirmation_status.html.erb +3 -4
  135. data/app/views/spotlight/exhibits/_contact.html.erb +3 -3
  136. data/app/views/spotlight/exhibits/_delete.html.erb +7 -5
  137. data/app/views/spotlight/exhibits/_exhibit_card.html.erb +2 -2
  138. data/app/views/spotlight/exhibits/_exhibit_card_front.html.erb +2 -2
  139. data/app/views/spotlight/exhibits/_form.html.erb +5 -5
  140. data/app/views/spotlight/exhibits/_languages.html.erb +2 -2
  141. data/app/views/spotlight/exhibits/_new_exhibit_form.html.erb +0 -2
  142. data/app/views/spotlight/exhibits/edit.html.erb +43 -42
  143. data/app/views/spotlight/exhibits/index.html.erb +40 -41
  144. data/app/views/spotlight/exhibits/new.html.erb +4 -5
  145. data/app/views/spotlight/feature_pages/_header.html.erb +12 -14
  146. data/app/views/spotlight/feature_pages/_sidebar.html.erb +2 -4
  147. data/app/views/spotlight/featured_images/_form.html.erb +4 -4
  148. data/app/views/spotlight/filters/_form.html.erb +1 -1
  149. data/app/views/spotlight/home_pages/_edit_page_link.html.erb +1 -1
  150. data/app/views/spotlight/home_pages/_sidebar.html.erb +1 -3
  151. data/app/views/spotlight/metadata_configurations/_metadata_field.html.erb +4 -4
  152. data/app/views/spotlight/metadata_configurations/edit.html.erb +5 -4
  153. data/app/views/spotlight/pages/_edit_page_link.html.erb +1 -1
  154. data/app/views/spotlight/pages/_form.html.erb +7 -7
  155. data/app/views/spotlight/pages/_order_pages.html.erb +2 -2
  156. data/app/views/spotlight/pages/_page.html.erb +11 -11
  157. data/app/views/spotlight/pages/_view_type_group.html.erb +1 -1
  158. data/app/views/spotlight/pages/edit.html.erb +2 -4
  159. data/app/views/spotlight/pages/index.html.erb +5 -4
  160. data/app/views/spotlight/pages/show.html.erb +5 -4
  161. data/app/views/spotlight/resources/_external_resources_form.html.erb +2 -2
  162. data/app/views/spotlight/resources/_form.html.erb +1 -1
  163. data/app/views/spotlight/resources/csv_upload/_form.html.erb +1 -1
  164. data/app/views/spotlight/resources/iiif/_form.html.erb +1 -1
  165. data/app/views/spotlight/resources/json_upload/_form.html.erb +1 -1
  166. data/app/views/spotlight/resources/new.html.erb +25 -23
  167. data/app/views/spotlight/resources/upload/_form.html.erb +2 -2
  168. data/app/views/spotlight/roles/index.html.erb +60 -57
  169. data/app/views/spotlight/search_configurations/_facet_metadata.html.erb +3 -1
  170. data/app/views/spotlight/search_configurations/_facets.html.erb +19 -18
  171. data/app/views/spotlight/search_configurations/_search_fields.html.erb +6 -6
  172. data/app/views/spotlight/search_configurations/_sort.html.erb +6 -6
  173. data/app/views/spotlight/search_configurations/edit.html.erb +42 -40
  174. data/app/views/spotlight/searches/_form.html.erb +15 -10
  175. data/app/views/spotlight/searches/_search.html.erb +29 -22
  176. data/app/views/spotlight/searches/edit.html.erb +6 -5
  177. data/app/views/spotlight/searches/index.html.erb +32 -31
  178. data/app/views/spotlight/shared/_configuration_sidebar.html.erb +6 -6
  179. data/app/views/spotlight/shared/_curation_sidebar.html.erb +8 -9
  180. data/app/views/spotlight/shared/_exhibit_sidebar.html.erb +6 -8
  181. data/app/views/spotlight/shared/_locale_picker.html.erb +3 -3
  182. data/app/views/spotlight/shared/_report_a_problem.html.erb +2 -2
  183. data/app/views/spotlight/sir_trevor/blocks/_browse_block.html.erb +1 -1
  184. data/app/views/spotlight/sir_trevor/blocks/_link_to_search_block.html.erb +1 -1
  185. data/app/views/spotlight/sir_trevor/blocks/_oembed_block.html.erb +2 -2
  186. data/app/views/spotlight/sir_trevor/blocks/_search_results_block.html.erb +2 -2
  187. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_block.html.erb +8 -8
  188. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_carousel_block.html.erb +8 -8
  189. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_embed_block.html.erb +3 -4
  190. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_features_block.html.erb +32 -31
  191. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_grid_block.html.erb +5 -5
  192. data/app/views/spotlight/sir_trevor/blocks/_uploaded_items_block.html.erb +8 -10
  193. data/app/views/spotlight/sites/edit.html.erb +31 -34
  194. data/app/views/spotlight/sites/edit_exhibits.html.erb +28 -29
  195. data/app/views/spotlight/tags/index.html.erb +25 -24
  196. data/app/views/spotlight/translations/_browse_categories.html.erb +20 -15
  197. data/app/views/spotlight/translations/_general.html.erb +69 -91
  198. data/app/views/spotlight/translations/_metadata.html.erb +18 -14
  199. data/app/views/spotlight/translations/_page.html.erb +2 -2
  200. data/app/views/spotlight/translations/_search_fields.html.erb +26 -20
  201. data/app/views/spotlight/translations/edit.html.erb +16 -14
  202. data/config/locales/spotlight.en.yml +3 -0
  203. data/config/routes.rb +1 -1
  204. data/lib/generators/spotlight/install_generator.rb +2 -2
  205. data/lib/generators/spotlight/scaffold_resource_generator.rb +1 -1
  206. data/lib/generators/spotlight/templates/spotlight.scss +0 -1
  207. data/lib/spotlight/engine.rb +12 -0
  208. data/lib/spotlight/version.rb +1 -1
  209. data/spec/controllers/application_controller_spec.rb +2 -2
  210. data/spec/controllers/spotlight/browse_controller_spec.rb +1 -1
  211. data/spec/controllers/spotlight/catalog_controller_spec.rb +13 -13
  212. data/spec/controllers/spotlight/dashboards_controller_spec.rb +2 -1
  213. data/spec/controllers/spotlight/search_configurations_controller_spec.rb +1 -1
  214. data/spec/examples.txt +50 -1489
  215. data/spec/features/add_items_spec.rb +2 -2
  216. data/spec/features/browse_category_admin_spec.rb +3 -3
  217. data/spec/features/browse_category_spec.rb +3 -3
  218. data/spec/features/catalog_spec.rb +1 -1
  219. data/spec/features/exhibits/translation_editing_spec.rb +21 -21
  220. data/spec/features/feature_page_spec.rb +1 -1
  221. data/spec/features/home_page_spec.rb +3 -3
  222. data/spec/features/javascript/blocks/featured_browse_categories_block_spec.rb +1 -1
  223. data/spec/features/javascript/blocks/link_to_search_block_spec.rb +1 -1
  224. data/spec/features/javascript/blocks/search_result_block_spec.rb +9 -4
  225. data/spec/features/javascript/blocks/solr_documents_block_spec.rb +23 -15
  226. data/spec/features/javascript/blocks/solr_documents_carousel_block_spec.rb +29 -0
  227. data/spec/features/javascript/blocks/uploaded_items_block_spec.rb +2 -2
  228. data/spec/features/javascript/edit_in_place_spec.rb +1 -0
  229. data/spec/features/javascript/feature_page_admin_spec.rb +11 -11
  230. data/spec/features/javascript/locale_selector_spec.rb +0 -1
  231. data/spec/features/javascript/multi_image_select_spec.rb +3 -3
  232. data/spec/features/javascript/reindex_monitor_spec.rb +2 -2
  233. data/spec/features/javascript/roles_admin_spec.rb +2 -2
  234. data/spec/features/javascript/search_context_spec.rb +4 -6
  235. data/spec/features/site_users_management_spec.rb +1 -1
  236. data/spec/helpers/spotlight/application_helper_spec.rb +2 -1
  237. data/spec/helpers/spotlight/crud_link_helpers_spec.rb +19 -0
  238. data/spec/helpers/spotlight/languages_helper_spec.rb +1 -0
  239. data/spec/lib/spotlight/controller_spec.rb +2 -2
  240. data/spec/models/sir_trevor_rails/blocks/solr_documents_block_spec.rb +38 -0
  241. data/spec/models/spotlight/access_controls_enforcement_search_builder_spec.rb +7 -6
  242. data/spec/models/spotlight/analytics/ga_spec.rb +16 -1
  243. data/spec/models/spotlight/contact_form_spec.rb +37 -5
  244. data/spec/models/spotlight/exhibit_spec.rb +8 -4
  245. data/spec/presenters/spotlight/iiif_manifest_presenter_spec.rb +4 -0
  246. data/spec/routing/spotlight/exhibit_catalog_spec.rb +15 -11
  247. data/spec/serializers/spotlight/exhibit_export_serializer_spec.rb +60 -0
  248. data/spec/test_app_templates/Gemfile.extra +3 -0
  249. data/spec/test_app_templates/catalog_controller.rb +4 -0
  250. data/spec/test_app_templates/lib/generators/test_app_generator.rb +2 -2
  251. data/spec/views/shared/_header_navbar.html.erb_spec.rb +1 -1
  252. data/spec/views/shared/_masthead.html.erb_spec.rb +1 -1
  253. data/spec/views/{_user_util_links.html.erb_spec.rb → shared/_user_util_links.html.erb_spec.rb} +1 -1
  254. data/spec/views/spotlight/about_pages/_sidebar.html.erb_spec.rb +2 -2
  255. data/spec/views/spotlight/about_pages/index.html.erb_spec.rb +2 -2
  256. data/spec/views/spotlight/browse/_search.html.erb_spec.rb +1 -1
  257. data/spec/views/spotlight/browse/_sort_and_per_page.html.erb_spec.rb +2 -13
  258. data/spec/views/spotlight/browse/show.html.erb_spec.rb +2 -2
  259. data/spec/views/spotlight/catalog/admin.html.erb_spec.rb +1 -1
  260. data/spec/views/spotlight/dashboards/_reindexing_activity.html.erb_spec.rb +5 -5
  261. data/spec/views/spotlight/dashboards/analytics.html.erb_spec.rb +1 -1
  262. data/spec/views/spotlight/exhibits/_exhibit_card_front.html.erb_spec.rb +2 -2
  263. data/spec/views/spotlight/exhibits/edit.html.erb_spec.rb +1 -1
  264. data/spec/views/spotlight/exhibits/index.html.erb_spec.rb +1 -1
  265. data/spec/views/spotlight/feature_pages/_sidebar.html.erb_spec.rb +7 -7
  266. data/spec/views/spotlight/metadata_configurations/_metadata_field.html.erb_spec.rb +3 -2
  267. data/spec/views/spotlight/metadata_configurations/edit.html.erb_spec.rb +2 -1
  268. data/spec/views/spotlight/pages/index.html.erb_spec.rb +2 -2
  269. data/spec/views/spotlight/pages/show.html.erb_spec.rb +3 -3
  270. data/spec/views/spotlight/searches/_search.html.erb_spec.rb +1 -1
  271. data/spec/views/spotlight/searches/edit.html.erb_spec.rb +3 -3
  272. data/spec/views/spotlight/sir_trevor/blocks/_solr_documents_carousel_block.html.erb_spec.rb +3 -3
  273. data/spec/views/spotlight/sir_trevor/blocks/_solr_documents_embed_block.html.erb_spec.rb +1 -1
  274. data/spec/views/spotlight/sir_trevor/blocks/_solr_documents_features_block.html.erb_spec.rb +2 -2
  275. data/spec/views/spotlight/sir_trevor/blocks/_solr_documents_grid_block.html.erb_spec.rb +1 -1
  276. data/spec/views/spotlight/translations/_page.html.erb_spec.rb +2 -2
  277. data/vendor/assets/javascripts/bootstrap-tagsinput.js +1 -1
  278. data/vendor/assets/stylesheets/sir-trevor/_variables.scss +15 -8
  279. metadata +31 -28
  280. data/app/assets/stylesheets/spotlight/_navbar.scss +0 -48
  281. data/app/views/_user_util_links.html.erb +0 -50
  282. data/app/views/shared/_modal.html.erb +0 -6
@@ -19,7 +19,7 @@ describe 'Uploading a non-repository item', type: :feature do
19
19
 
20
20
  within('form#new_resources_upload') do
21
21
  expect(page).to have_css('#resources_upload_url[type="file"]')
22
- expect(page).to have_css('.help-block', text: 'Valid file types: jpg jpeg png')
22
+ expect(page).to have_css('.form-text', text: 'Valid file types: jpg jpeg png')
23
23
  expect(page).to have_css('#resources_upload_data_full_title_tesim[type="text"]')
24
24
  expect(page).to have_css('textarea#resources_upload_data_spotlight_upload_description_tesim')
25
25
  expect(page).to have_css('#resources_upload_data_spotlight_upload_attribution_tesim[type="text"]')
@@ -72,7 +72,7 @@ describe 'Uploading a non-repository item', type: :feature do
72
72
 
73
73
  within('form#new_resources_csv_upload') do
74
74
  expect(page).to have_css('#resources_csv_upload_url[type="file"]')
75
- expect(page).to have_css('.help-block a', text: 'Download template')
75
+ expect(page).to have_css('.form-text a', text: 'Download template')
76
76
  end
77
77
  end
78
78
 
@@ -9,7 +9,7 @@ describe 'Browse Category Administration', type: :feature do
9
9
  describe 'index' do
10
10
  it 'has searches' do
11
11
  visit spotlight.exhibit_searches_path(exhibit)
12
- expect(page).to have_css('.panel .search .title', text: search.title)
12
+ expect(page).to have_css('.card-title', text: search.title)
13
13
  end
14
14
  end
15
15
 
@@ -40,7 +40,7 @@ describe 'Browse Category Administration', type: :feature do
40
40
  visit spotlight.edit_exhibit_search_path(exhibit, search)
41
41
  expect(page).to have_css('h1 small', text: 'Edit Browse Category')
42
42
  expect(find_field('search_title').value).to eq search.title
43
- within '.appliedFilter' do
43
+ within '.appliedParams' do
44
44
  expect(page).to have_content 'Genre'
45
45
  expect(page).to have_content 'Value'
46
46
  end
@@ -119,7 +119,7 @@ describe 'Browse Category Administration', type: :feature do
119
119
  it 'destroys a tag' do
120
120
  skip('TODO: Allow searches to be destroyed without javascript')
121
121
  visit spotlight.exhibit_searches_path(exhibit)
122
- within('.panel .search') do
122
+ within('.card .search') do
123
123
  click_link('Delete')
124
124
  end
125
125
  expect(page).to have_content('Search was deleted')
@@ -9,7 +9,7 @@ feature 'Browse pages' do
9
9
  let(:mock_response) { Blacklight::Solr::Response.new({ response: { numFound: 10, docs: mock_documents } }, {}) }
10
10
  let(:mock_documents) { [] }
11
11
  before do
12
- allow_any_instance_of(Spotlight::BrowseController).to receive(:search_results).and_return([mock_response, mock_documents])
12
+ allow_any_instance_of(Blacklight::SearchService).to receive(:search_results).and_return([mock_response, mock_documents])
13
13
  end
14
14
 
15
15
  context 'with the standard exhibit masthead' do
@@ -20,7 +20,7 @@ feature 'Browse pages' do
20
20
  expect(page).to have_selector 'h1', text: 'Some Saved Search'
21
21
  end
22
22
 
23
- expect(page).not_to have_selector '.masthead .h1', text: 'Some Saved Search'
23
+ expect(page).not_to have_selector '.masthead .h2', text: 'Some Saved Search'
24
24
  end
25
25
 
26
26
  it 'shows the search bar' do
@@ -57,7 +57,7 @@ feature 'Browse pages' do
57
57
  it 'has a contextual masthead with the title and resource count' do
58
58
  visit spotlight.exhibit_browse_path(exhibit, search)
59
59
 
60
- expect(page).to have_selector '.masthead .h1', text: 'Some Saved Search'
60
+ expect(page).to have_selector '.masthead .h2', text: 'Some Saved Search'
61
61
 
62
62
  within '#main-container' do
63
63
  expect(page).not_to have_selector 'h1', text: 'Some Saved Search'
@@ -23,7 +23,7 @@ describe 'Catalog', type: :feature do
23
23
 
24
24
  it "has a 'Item Visiblity' facet" do
25
25
  visit spotlight.search_exhibit_catalog_path(exhibit)
26
- expect(page).to have_selector '.panel-title', text: 'Item Visibility'
26
+ expect(page).to have_selector '.card-header', text: 'Item Visibility'
27
27
  end
28
28
  end
29
29
 
@@ -21,13 +21,13 @@ describe 'Translation editing', type: :feature do
21
21
  end
22
22
 
23
23
  it 'selects the correct language' do
24
- expect(page).to have_css '.nav-pills li.active', text: 'French'
24
+ expect(page).to have_css '.nav-pills .nav-link.active', text: 'French'
25
25
  end
26
26
  describe 'basic settings' do
27
27
  it 'successfully adds translations' do
28
28
  within '.translation-edit-form #general' do
29
- expect(page).to have_css '.help-block', text: 'Sample'
30
- expect(page).to have_css '.help-block', text: 'SubSample'
29
+ expect(page).to have_css '.form-text', text: 'Sample'
30
+ expect(page).to have_css '.form-text', text: 'SubSample'
31
31
  fill_in 'Title', id: 'exhibit_translations_attributes_0_value', with: 'Titre français'
32
32
  fill_in 'Subtitle', with: 'Sous-titre français'
33
33
  click_button 'Save changes'
@@ -35,14 +35,14 @@ describe 'Translation editing', type: :feature do
35
35
  expect(page).to have_css '.flash_messages', text: 'The exhibit was successfully updated.'
36
36
  within '.translation-basic-settings-title' do
37
37
  expect(page).to have_css 'input[value="Titre français"]'
38
- expect(page).to have_css 'span.glyphicon.glyphicon-ok'
38
+ expect(page).to have_css '.translation-complete'
39
39
  end
40
40
  within '.translation-basic-settings-subtitle' do
41
41
  expect(page).to have_css 'input[value="Sous-titre français"]'
42
- expect(page).to have_css 'span.glyphicon.glyphicon-ok'
42
+ expect(page).to have_css '.translation-complete'
43
43
  end
44
44
  within '.translation-basic-settings-description' do
45
- expect(page).to_not have_css 'span.glyphicon.glyphicon-ok'
45
+ expect(page).to_not have_css '.translation-complete'
46
46
  end
47
47
  end
48
48
  end
@@ -59,7 +59,7 @@ describe 'Translation editing', type: :feature do
59
59
 
60
60
  it 'adds translations to exhibit navbar' do
61
61
  within '.translation-edit-form #general' do
62
- expect(page).to have_css '.help-block', text: 'Home'
62
+ expect(page).to have_css '.form-text', text: 'Home'
63
63
  fill_in 'Home', with: 'Maison'
64
64
  fill_in 'Browse', with: 'parcourir ceci!'
65
65
  click_button 'Save changes'
@@ -67,17 +67,17 @@ describe 'Translation editing', type: :feature do
67
67
  expect(page).to have_css '.flash_messages', text: 'The exhibit was successfully updated.'
68
68
  within '.translation-main-menu-home' do
69
69
  expect(page).to have_css 'input[value="Maison"]'
70
- expect(page).to have_css 'span.glyphicon.glyphicon-ok'
70
+ expect(page).to have_css '.translation-complete'
71
71
  end
72
72
  within '.translation-main-menu-browse' do
73
73
  expect(page).to have_css 'input[value="parcourir ceci!"]'
74
- expect(page).to have_css 'span.glyphicon.glyphicon-ok'
74
+ expect(page).to have_css '.translation-complete'
75
75
  end
76
- within '.translation-main-menu-curated-features' do
77
- expect(page).to_not have_css 'span.glyphicon.glyphicon-ok'
76
+ within '.translation-main-menu-curated_features' do
77
+ expect(page).to_not have_css '.translation-complete'
78
78
  end
79
79
  within '.translation-main-menu-about' do
80
- expect(page).to_not have_css 'span.glyphicon.glyphicon-ok'
80
+ expect(page).to_not have_css '.translation-complete'
81
81
  end
82
82
  I18n.locale = :fr
83
83
  expect(exhibit.main_navigations.browse.label).to eq 'parcourir ceci!'
@@ -175,8 +175,8 @@ describe 'Translation editing', type: :feature do
175
175
  click_button 'Save changes'
176
176
  end
177
177
 
178
- expect(page).to have_css '.nav-pills li.active', text: 'French'
179
- expect(page).to have_css '.nav-tabs li.active', text: 'Metadata field labels'
178
+ expect(page).to have_css '.nav-pills .nav-link.active', text: 'French'
179
+ expect(page).to have_css '.nav-tabs .nav-link.active', text: 'Metadata field labels'
180
180
  end
181
181
 
182
182
  describe 'configured fields' do
@@ -252,8 +252,8 @@ describe 'Translation editing', type: :feature do
252
252
  click_button 'Save changes'
253
253
  end
254
254
 
255
- expect(page).to have_css '.nav-pills li.active', text: 'French'
256
- expect(page).to have_css '.nav-tabs li.active', text: 'Search field labels'
255
+ expect(page).to have_css '.nav-pills .nav-link.active', text: 'French'
256
+ expect(page).to have_css '.nav-tabs .nav-link.active', text: 'Search field labels'
257
257
  end
258
258
 
259
259
  describe 'field-based search fields' do
@@ -315,7 +315,7 @@ describe 'Translation editing', type: :feature do
315
315
 
316
316
  visit spotlight.search_exhibit_catalog_path(exhibit, q: '*', locale: 'fr')
317
317
 
318
- expect(page).to have_css('.dropdown-toggle', text: 'Trier par French Relevance', visible: true)
318
+ expect(page).to have_css('#sort-dropdown', text: 'Trier par French Relevance', visible: true)
319
319
  end
320
320
  end
321
321
  end
@@ -334,7 +334,7 @@ describe 'Translation editing', type: :feature do
334
334
 
335
335
  expect(page).to have_field 'All Exhibit Items'
336
336
  expect(page).to have_field 'Browse Category 1'
337
- expect(page).to have_css('.help-block', text: 'All items in this exhibit.')
337
+ expect(page).to have_css('.form-text', text: 'All items in this exhibit.')
338
338
  end
339
339
  end
340
340
 
@@ -345,8 +345,8 @@ describe 'Translation editing', type: :feature do
345
345
  click_button 'Save changes'
346
346
  end
347
347
 
348
- expect(page).to have_css '.nav-pills li.active', text: 'French'
349
- expect(page).to have_css '.nav-tabs li.active', text: 'Browse categories'
348
+ expect(page).to have_css '.nav-pills .nav-link.active', text: 'French'
349
+ expect(page).to have_css '.nav-tabs .nav-link.active', text: 'Browse categories'
350
350
  end
351
351
 
352
352
  it 'persists changes', js: true do
@@ -355,7 +355,7 @@ describe 'Translation editing', type: :feature do
355
355
  within('#browse', visible: true) do
356
356
  fill_in 'All Exhibit Items', with: "Tous les objets d'exposition"
357
357
 
358
- first('.tanslation-description-toggle').click
358
+ first('.translation-description-toggle').click
359
359
 
360
360
  textarea = page.find('textarea')
361
361
  textarea.set('Tous les articles de cette exposition.')
@@ -42,7 +42,7 @@ describe 'Feature page', type: :feature, versioning: true do
42
42
  # the sidebar should display
43
43
  within('#sidebar') do
44
44
  # the current page should be the sidebar header
45
- expect(page).to have_css('h4', text: parent_feature_page.title)
45
+ expect(page).to have_css('li', text: parent_feature_page.title)
46
46
  # within the sidebar navigation
47
47
  within('ol.sidenav') do
48
48
  # there should be a link to the child page
@@ -9,7 +9,7 @@ describe 'Home page', type: :feature, versioning: true do
9
9
  visit spotlight.exhibit_dashboard_path(exhibit)
10
10
  click_link 'Feature pages'
11
11
  expect(page).to have_selector 'h3', text: 'Homepage'
12
- expect(page).to have_selector 'h3.panel-title', text: 'Exhibit Home'
12
+ expect(page).to have_selector 'h3.card-title', text: 'Exhibit Home'
13
13
  end
14
14
 
15
15
  it 'allows users to edit the home page title' do
@@ -27,12 +27,12 @@ describe 'Home page', type: :feature, versioning: true do
27
27
  end
28
28
  click_link 'Feature pages'
29
29
  expect(page).to have_content 'New Home Page Title'
30
- expect(page).to have_selector '.panel-title a', text: 'New Home Page Title'
30
+ expect(page).to have_selector '.card-title a', text: 'New Home Page Title'
31
31
  end
32
32
 
33
33
  it 'has working facet links' do
34
34
  visit spotlight.exhibit_home_page_path(exhibit.home_page)
35
- click_link 'Genre'
35
+ click_button 'Genre'
36
36
  click_link 'map'
37
37
  expect(page).to have_content exhibit.title
38
38
  expect(page).to have_content 'You searched for: Genre map'
@@ -21,7 +21,7 @@ describe 'Featured Browse Category Block', type: :feature, js: true do
21
21
 
22
22
  fill_in_typeahead_field with: 'Title1'
23
23
 
24
- within(:css, '.panel') do
24
+ within(:css, '.card') do
25
25
  uncheck 'Display?'
26
26
  end
27
27
 
@@ -21,7 +21,7 @@ describe 'Link to Search Block', type: :feature, js: true do
21
21
 
22
22
  fill_in_typeahead_field with: 'Title1'
23
23
 
24
- within(:css, '.panel') do
24
+ within(:css, '.card') do
25
25
  uncheck 'Display?'
26
26
  end
27
27
 
@@ -11,14 +11,19 @@ describe 'Search Result Block', type: :feature, js: true do
11
11
  login_as exhibit_curator
12
12
 
13
13
  exhibit.searches.each { |x| x.update published: true }
14
-
15
14
  visit spotlight.edit_exhibit_feature_page_path(exhibit, feature_page)
16
15
  add_widget 'search_results'
17
16
  end
18
17
 
19
- pending 'allows a curator to select from existing browse categories' do
20
- pending('Prefetched autocomplete does not work the same way as solr-backed autocompletes')
21
- fill_in_typeahead_field with: 'All Exhibit Items'
18
+ it 'allows a curator to select from existing browse categories' do
19
+ # Manually inject the inputs to the widget that the autocomplete would.
20
+ # fill_in_typeahead_field does not work here for us for some reason.
21
+ page.execute_script <<-JS
22
+ $("[data-twitter-typeahead]:visible").after(
23
+ "<input type='hidden' name='item[item_0][id]' value='all-exhibit-items' />" +
24
+ "<input type='hidden' name='item[item_0][display]' value='true' />"
25
+ );
26
+ JS
22
27
 
23
28
  check 'Gallery'
24
29
  check 'Slideshow'
@@ -29,7 +29,7 @@ feature 'Solr Document Block', feature: true, versioning: true, default_max_wait
29
29
 
30
30
  scenario 'it should allow you to add a solr document to the widget', js: true do
31
31
  fill_in_solr_document_block_typeahead_field with: 'dq287tq6352'
32
- within(:css, '.panel') do
32
+ within(:css, '.card') do
33
33
  expect(page).to have_content "L'AMERIQUE"
34
34
  end
35
35
 
@@ -37,8 +37,7 @@ feature 'Solr Document Block', feature: true, versioning: true, default_max_wait
37
37
 
38
38
  # verify that the item + image widget is displaying an image from the document.
39
39
  within(:css, '.items-block', visible: true) do
40
- expect(page).to have_css('.thumbnail')
41
- expect(page).to have_css('.thumbnail a img')
40
+ expect(page).to have_css('.img-thumbnail')
42
41
  expect(page).not_to have_css('.title')
43
42
  end
44
43
  end
@@ -66,7 +65,7 @@ feature 'Solr Document Block', feature: true, versioning: true, default_max_wait
66
65
  save_page
67
66
 
68
67
  # The thumbnail on the rendered block should be correct
69
- thumb = find('.thumbnail img')
68
+ thumb = find('.img-thumbnail')
70
69
  expect(thumb['src']).to match(%r{xd327cm9378_05_0002/full})
71
70
 
72
71
  # revisit the edit page
@@ -74,20 +73,20 @@ feature 'Solr Document Block', feature: true, versioning: true, default_max_wait
74
73
 
75
74
  # Expect the image on the rendered edit screen to be correct
76
75
  expect(page).to have_css('[data-panel-image-pagination]', text: /Image 2 of 2/, visible: true)
77
- thumb = find('.pic.thumbnail img')
76
+ thumb = find('.pic .img-thumbnail')
78
77
  expect(thumb['src']).to match(%r{xd327cm9378_05_0002/full})
79
78
 
80
79
  save_page
81
80
 
82
81
  # Expect that the original image selection was retained
83
- thumb = find('.thumbnail img')
82
+ thumb = find('.img-thumbnail')
84
83
  expect(thumb['src']).to match(%r{xd327cm9378_05_0002/full})
85
84
  end
86
85
 
87
86
  scenario 'it should allow you toggle visibility of solr documents', js: true do
88
87
  fill_in_solr_document_block_typeahead_field with: 'dq287tq6352'
89
88
 
90
- within(:css, '.panel') do
89
+ within(:css, '.card') do
91
90
  uncheck 'Display?'
92
91
  end
93
92
 
@@ -104,6 +103,16 @@ feature 'Solr Document Block', feature: true, versioning: true, default_max_wait
104
103
  expect(page).to have_selector '.items-block .box', count: 1, visible: true
105
104
  expect(page).to have_content '[World map]'
106
105
  expect(page).not_to have_content "L'AMERIQUE"
106
+
107
+ visit spotlight.edit_exhibit_feature_page_path(exhibit, feature_page)
108
+ # display the title as the primary caption
109
+ within('.primary-caption') do
110
+ uncheck('Primary caption')
111
+ end
112
+
113
+ save_page
114
+ expect(page).to have_selector '.items-block .box', count: 1, visible: true
115
+ expect(page).not_to have_content '[World map]'
107
116
  end
108
117
 
109
118
  scenario 'should allow you to optionally display captions with the image', js: true do
@@ -124,8 +133,7 @@ feature 'Solr Document Block', feature: true, versioning: true, default_max_wait
124
133
 
125
134
  # verify that the item + image widget is displaying image and title from the requested document.
126
135
  within(:css, '.items-block', visible: true) do
127
- expect(page).to have_css('.thumbnail')
128
- expect(page).to have_css('.thumbnail a img')
136
+ expect(page).to have_css('.img-thumbnail')
129
137
  expect(page).to have_css('.primary-caption', text: '[World map]')
130
138
  expect(page).to have_css('.secondary-caption', text: 'Latin')
131
139
  end
@@ -168,9 +176,9 @@ feature 'Solr Document Block', feature: true, versioning: true, default_max_wait
168
176
  fill_in_solr_document_block_typeahead_field with: 'dq287tq6352'
169
177
 
170
178
  # Select to align the text right
171
- choose 'Right'
179
+ choose 'Left'
172
180
  # this seems silly, but also seems to help with the flappy-ness of this spec
173
- expect(find_field('Right', checked: true)).to be_checked
181
+ expect(find_field('Left', checked: true)).to be_checked
174
182
 
175
183
  # fill in the content editable div
176
184
  content_editable = find('.st-text-block')
@@ -180,18 +188,18 @@ feature 'Solr Document Block', feature: true, versioning: true, default_max_wait
180
188
  save_page
181
189
 
182
190
  # verify that the item + image widget is displaying image and title from the requested document.
183
- within(:css, '.items-block') do
191
+ within(:css, '.items-block.flex-row-reverse') do
184
192
  within('.text-col') do
185
193
  expect(page).to have_content 'zzz'
186
194
  end
187
- expect(page).to have_css('.items-col.pull-left')
195
+ expect(page).to have_css('.items-col')
188
196
  end
189
197
  end
190
198
 
191
199
  scenario 'round-trip data', js: true do
192
200
  fill_in_solr_document_block_typeahead_field with: 'dq287tq6352'
193
201
 
194
- within(:css, '.panel') do
202
+ within(:css, '.card') do
195
203
  uncheck 'Display?'
196
204
  end
197
205
 
@@ -213,7 +221,7 @@ feature 'Solr Document Block', feature: true, versioning: true, default_max_wait
213
221
 
214
222
  click_on 'Edit'
215
223
 
216
- expect(page).to have_selector '.panel', count: 2, visible: true
224
+ expect(page).to have_selector '.card', count: 2, visible: true
217
225
 
218
226
  # for some reason, the text area above isn't getting filled in
219
227
  # expect(page).to have_selector ".st-text-block", text: "zzz"
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ describe 'Solr Documents Carousel Block', type: :feature, js: true do
4
+ let(:exhibit) { FactoryBot.create(:exhibit) }
5
+ let(:exhibit_curator) { FactoryBot.create(:exhibit_curator, exhibit: exhibit) }
6
+
7
+ let!(:feature_page) { FactoryBot.create(:feature_page, exhibit: exhibit) }
8
+
9
+ before do
10
+ login_as exhibit_curator
11
+
12
+ visit spotlight.edit_exhibit_feature_page_path(exhibit, feature_page)
13
+ add_widget 'solr_documents_carousel'
14
+ end
15
+
16
+ it 'allows a curator to select a caption to display' do
17
+ fill_in_typeahead_field with: 'dq287tq6352'
18
+
19
+ check 'Primary caption'
20
+ select 'Title', from: 'primary-caption-field'
21
+
22
+ save_page
23
+
24
+ within '.carousel-block' do
25
+ expect(page).to have_css('.carousel-item', count: 1)
26
+ expect(page).to have_css('.carousel-caption .primary', text: "L'AMERIQUE")
27
+ end
28
+ end
29
+ end
@@ -24,7 +24,7 @@ feature 'Uploaded Items Block', feature: true, js: true, versioning: true do
24
24
 
25
25
  expect(page).to have_css('.dd-list li', count: 1)
26
26
  within('.dd-list') do
27
- expect(page).to have_css('.panel-title', text: '800x600.png')
27
+ expect(page).to have_css('.card-title', text: '800x600.png')
28
28
  fill_in 'Caption', with: 'Some caption text'
29
29
  end
30
30
 
@@ -32,7 +32,7 @@ feature 'Uploaded Items Block', feature: true, js: true, versioning: true do
32
32
 
33
33
  expect(page).to have_css('.dd-list li', count: 2)
34
34
  within('.dd-list') do
35
- expect(page).to have_css('.panel-title', text: 'avatar.png')
35
+ expect(page).to have_css('.card-title', text: 'avatar.png')
36
36
  end
37
37
 
38
38
  save_page