diff --git a/web/profiles/custom/os2loop/modules/os2loop_search_db/assets/js/hideFilters.js b/web/profiles/custom/os2loop/modules/os2loop_search_db/assets/js/hideFilters.js new file mode 100644 index 000000000..89803c73a --- /dev/null +++ b/web/profiles/custom/os2loop/modules/os2loop_search_db/assets/js/hideFilters.js @@ -0,0 +1,15 @@ +/** + * Hide search filters if the search yields no result. + */ +(function (Drupal, drupalSettings) { + 'use strict'; + Drupal.behaviors.hideFilters = { + attach: function (context, settings) { + let noResult = document.getElementById('js-no-result'); + if (noResult) { + document.getElementById('js-search-filters').style.display = 'none'; + } + } + }; + +})(Drupal, drupalSettings); diff --git a/web/profiles/custom/os2loop/modules/os2loop_search_db/os2loop_search_db.libraries.yml b/web/profiles/custom/os2loop/modules/os2loop_search_db/os2loop_search_db.libraries.yml new file mode 100644 index 000000000..5745020eb --- /dev/null +++ b/web/profiles/custom/os2loop/modules/os2loop_search_db/os2loop_search_db.libraries.yml @@ -0,0 +1,4 @@ +hide-filters: + version: 1.x + js: + assets/js/hideFilters.js: {} diff --git a/web/profiles/custom/os2loop/modules/os2loop_search_db/src/Helper/Helper.php b/web/profiles/custom/os2loop/modules/os2loop_search_db/src/Helper/Helper.php index d942d3eb4..40c4c7f50 100644 --- a/web/profiles/custom/os2loop/modules/os2loop_search_db/src/Helper/Helper.php +++ b/web/profiles/custom/os2loop/modules/os2loop_search_db/src/Helper/Helper.php @@ -200,6 +200,7 @@ public function getContentTypeGroups(): array { public function formAlter(array &$form, FormStateInterface $form_state, $form_id) { if ('views_exposed_form' === $form_id && 'views-exposed-form-os2loop-search-db-page-search' === ($form['#id'] ?? NULL)) { + $form['#attached']['library'][] = 'os2loop_search_db/hide-filters'; // Add facet filter query to form to keep the filters when submitting // search form. $request = $this->requestStack->getCurrentRequest(); diff --git a/web/profiles/custom/os2loop/themes/os2loop_theme/templates/form/form--views-exposed-form-os2loop-search-db-page-search.html.twig b/web/profiles/custom/os2loop/themes/os2loop_theme/templates/form/form--views-exposed-form-os2loop-search-db-page-search.html.twig index 3c56d808f..fa7019187 100644 --- a/web/profiles/custom/os2loop/themes/os2loop_theme/templates/form/form--views-exposed-form-os2loop-search-db-page-search.html.twig +++ b/web/profiles/custom/os2loop/themes/os2loop_theme/templates/form/form--views-exposed-form-os2loop-search-db-page-search.html.twig @@ -13,11 +13,11 @@ */ #} {# @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Search_role#examples #} - +
{{ children }}
-
+
{{ 'Search filters'|t }}
diff --git a/web/profiles/custom/os2loop/themes/os2loop_theme/templates/views/no-result-views-os2loop-search-db.html.twig b/web/profiles/custom/os2loop/themes/os2loop_theme/templates/views/no-result-views-os2loop-search-db.html.twig index d34905893..60a712d74 100644 --- a/web/profiles/custom/os2loop/themes/os2loop_theme/templates/views/no-result-views-os2loop-search-db.html.twig +++ b/web/profiles/custom/os2loop/themes/os2loop_theme/templates/views/no-result-views-os2loop-search-db.html.twig @@ -1,6 +1,6 @@ {% set os2loop_settings = get_os2loop_config('os2loop_settings.settings') %} -
+

{{ 'Unfortunately your search yielded no result.'|t }}

{{ 'Check that you have spelled correctly or try another search term.'|t }}