From 7700d2a0e4ec85c679b762deaaa3402982cad4d6 Mon Sep 17 00:00:00 2001 From: Ingolf Steinhardt Date: Sun, 25 Aug 2024 14:07:59 +0200 Subject: [PATCH 1/3] Fix search in fallback language see https://github.com/MetaModels/attribute_tags/issues/93 --- src/Attribute/TranslatedReference.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Attribute/TranslatedReference.php b/src/Attribute/TranslatedReference.php index 900b999e1..28d1ab660 100644 --- a/src/Attribute/TranslatedReference.php +++ b/src/Attribute/TranslatedReference.php @@ -277,7 +277,12 @@ public function unsetDataFor($arrIds) */ public function searchFor($strPattern) { - return $this->searchForInLanguages($strPattern, [$this->getActiveLanguage()]); + $languages[] = $this->getActiveLanguage(); + if ($this->getActiveLanguage() !== $this->getFallbackLanguage()) { + $languages[] = $this->getFallbackLanguage(); + } + + return $this->searchForInLanguages($strPattern, $languages); } /** From 6fe864e0881710e528272bf75c208d0760d157d8 Mon Sep 17 00:00:00 2001 From: Ingolf Steinhardt Date: Sun, 25 Aug 2024 14:07:59 +0200 Subject: [PATCH 2/3] Fix search in fallback language see https://github.com/MetaModels/attribute_tags/issues/93 --- src/Attribute/TranslatedReference.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Attribute/TranslatedReference.php b/src/Attribute/TranslatedReference.php index 900b999e1..28d1ab660 100644 --- a/src/Attribute/TranslatedReference.php +++ b/src/Attribute/TranslatedReference.php @@ -277,7 +277,12 @@ public function unsetDataFor($arrIds) */ public function searchFor($strPattern) { - return $this->searchForInLanguages($strPattern, [$this->getActiveLanguage()]); + $languages[] = $this->getActiveLanguage(); + if ($this->getActiveLanguage() !== $this->getFallbackLanguage()) { + $languages[] = $this->getFallbackLanguage(); + } + + return $this->searchForInLanguages($strPattern, $languages); } /** From f26c9a3e4ad48a0760aab8c72e43f2ed5c21b957 Mon Sep 17 00:00:00 2001 From: Ingolf Steinhardt Date: Wed, 28 Aug 2024 18:39:23 +0200 Subject: [PATCH 3/3] =?UTF-8?q?Search=20f=C3=BCr=20fallback=20only=20if=20?= =?UTF-8?q?no=20findings=20at=20active=20language=20as=20second=20step?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Attribute/TranslatedReference.php | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/Attribute/TranslatedReference.php b/src/Attribute/TranslatedReference.php index 28d1ab660..8a8f1800a 100644 --- a/src/Attribute/TranslatedReference.php +++ b/src/Attribute/TranslatedReference.php @@ -277,12 +277,18 @@ public function unsetDataFor($arrIds) */ public function searchFor($strPattern) { - $languages[] = $this->getActiveLanguage(); + // Search at active language and return findings. + if ([] !== ($items = $this->searchForInLanguages($strPattern, [$this->getActiveLanguage()]))) { + return $items; + } + + // Search at fallback language as alternative and return findings. if ($this->getActiveLanguage() !== $this->getFallbackLanguage()) { - $languages[] = $this->getFallbackLanguage(); + return $this->searchForInLanguages($strPattern, [$this->getFallbackLanguage()]); } - return $this->searchForInLanguages($strPattern, $languages); + // No finding in one language. + return []; } /**