From 5264906eb224cb489dbb29940b0ea527ebefb4b0 Mon Sep 17 00:00:00 2001 From: Daniel Lienert Date: Mon, 18 Jan 2021 22:06:06 +0100 Subject: [PATCH] FEATURE: Make enabling autocomplete / suggestions configurable --- Classes/Controller/SuggestController.php | 14 ++++++++++---- Configuration/Settings.yaml | 2 ++ 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/Classes/Controller/SuggestController.php b/Classes/Controller/SuggestController.php index 893f67d..ec00985 100644 --- a/Classes/Controller/SuggestController.php +++ b/Classes/Controller/SuggestController.php @@ -129,8 +129,10 @@ protected function buildRequestForTerm(string $term, string $contextNodeIdentifi ->queryFilter('prefix', [ 'neos_completion' => $termPlaceholder ]) - ->limit(0) - ->aggregation('autocomplete', [ + ->limit(0); + + if (($this->searchAsYouTypeSettings['autocomplete']['enabled'] ?? false) === true) { + $query->aggregation('autocomplete', [ 'terms' => [ 'field' => 'neos_completion', 'order' => [ @@ -139,8 +141,11 @@ protected function buildRequestForTerm(string $term, string $contextNodeIdentifi 'include' => $termPlaceholder . '.*', 'size' => $this->searchAsYouTypeSettings['autocomplete']['size'] ?? 10 ] - ]) - ->suggestions('suggestions', [ + ]); + } + + if (($this->searchAsYouTypeSettings['suggestions']['enabled'] ?? false) === true) { + $query->suggestions('suggestions', [ 'prefix' => $termPlaceholder, 'completion' => [ 'field' => 'neos_suggestion', @@ -152,6 +157,7 @@ protected function buildRequestForTerm(string $term, string $contextNodeIdentifi ] ] ]); + } $request = $query->getRequest()->toArray(); diff --git a/Configuration/Settings.yaml b/Configuration/Settings.yaml index 2d65555..ea22e75 100644 --- a/Configuration/Settings.yaml +++ b/Configuration/Settings.yaml @@ -3,8 +3,10 @@ Flowpack: searchAsYouType: autocomplete: size: 10 + enabled: true suggestions: size: 10 + enabled: true sourceFields: - neos_path - title