diff --git a/src/bundle/Resources/public/scss/_search-form.scss b/src/bundle/Resources/public/scss/_search-form.scss index 881a463290..672c63e3ea 100644 --- a/src/bundle/Resources/public/scss/_search-form.scss +++ b/src/bundle/Resources/public/scss/_search-form.scss @@ -108,6 +108,15 @@ display: flex; } + &__spellcheck-suggestion { + font-style: italic; + font-size: $ibexa-text-font-size-small; + + a { + font-weight: bold; + } + } + .ibexa-btn--secondary.ibexa-btn { max-width: 100%; overflow: hidden; diff --git a/src/bundle/Resources/translations/ibexa_search.en.xliff b/src/bundle/Resources/translations/ibexa_search.en.xliff index 5a797913c1..8b679589e1 100644 --- a/src/bundle/Resources/translations/ibexa_search.en.xliff +++ b/src/bundle/Resources/translations/ibexa_search.en.xliff @@ -156,6 +156,11 @@ Section key: search.section + + Did you mean "%s"? + Did you mean "%s"? + key: search.spellcheck.suggestion + Subtree Subtree diff --git a/src/bundle/Resources/views/themes/admin/ui/search/results.html.twig b/src/bundle/Resources/views/themes/admin/ui/search/results.html.twig index 2968a53d4c..625b474554 100644 --- a/src/bundle/Resources/views/themes/admin/ui/search/results.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/search/results.html.twig @@ -17,10 +17,21 @@

{{ 'search.no_results.title'|trans({'%query%': form.query.vars.value})|desc('No results found for "%query%"') }}

+ {% if spellcheck is not null and spellcheck.incorrect %} +
+ {% set suggestion_link %} + + {{ spellcheck.query }} + + {% endset %} + + {{ 'search.spellcheck.suggestion'|trans|desc('Did you mean "%s"?')|e('html')|format(suggestion_link)|raw }} +
+ {% endif %}
{% for hint in no_results_hints %}
-
+
@@ -182,7 +193,19 @@ } %} {% trans_default_domain 'ibexa_search' %} {% block between_header_and_table %} - + {% if spellcheck is not null and spellcheck.incorrect %} +
+ {% set suggestion_link %} + + {{ spellcheck.query }} + + {% endset %} + + {{ 'search.spellcheck.suggestion'|trans|desc('Did you mean "%s"?')|e('html')|format(suggestion_link)|raw }} +
+ {% endif %} + + {% if form.children.search_language.vars.value != '' %} {{ 'search.in_language'|trans({ '%search_language%': form.children.search_language.vars.data.name,