p36c
This commit is contained in:
@@ -332,7 +332,10 @@ final readonly class CommerceQueryParser
|
||||
return false;
|
||||
}
|
||||
|
||||
if (mb_strlen($token) <= $this->config->getMinMeaningfulAlphaTokenLength()) {
|
||||
if (
|
||||
mb_strlen($token) <= $this->config->getMinMeaningfulAlphaTokenLength()
|
||||
&& !$this->isProtectedCommerceSearchToken($token)
|
||||
) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -385,6 +388,25 @@ final readonly class CommerceQueryParser
|
||||
return in_array($token, $this->config->getKnownBrands(), true);
|
||||
}
|
||||
|
||||
private function isProtectedCommerceSearchToken(string $token): bool
|
||||
{
|
||||
$token = trim(mb_strtolower($token, 'UTF-8'));
|
||||
|
||||
if ($token === '') {
|
||||
return false;
|
||||
}
|
||||
|
||||
foreach ($this->languageCleanupConfig->getProtectedTermsForProfile($this->config->getCleanupProfile()) as $protectedTerm) {
|
||||
foreach ($this->normalizeSearchTokens([$protectedTerm]) as $normalizedTerm) {
|
||||
if ($token === $normalizedTerm) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string[] $tokens
|
||||
* @return string[]
|
||||
|
||||
Reference in New Issue
Block a user