From 184fb45b7079523d259bbf9d06425902f6e9cd39 Mon Sep 17 00:00:00 2001 From: fredtempez Date: Mon, 30 Nov 2020 16:08:46 +0100 Subject: [PATCH] too many requests --- module/search/search.php | 73 ++++++++++++++++++++++------------------ 1 file changed, 41 insertions(+), 32 deletions(-) diff --git a/module/search/search.php b/module/search/search.php index 5bf79572..232aa19e 100755 --- a/module/search/search.php +++ b/module/search/search.php @@ -105,6 +105,46 @@ class search extends common { // Récupération du mot clef passé par le formulaire de ...view/index.php, avec caractères accentués self::$motclef=$this->getInput('searchMotphraseclef'); + + // Traduction du mot clé si le script Google Trad est actif + // Le multi langue est sélectionné + if ( $this->getData(['config','translate','scriptGoogle']) === true + AND + // et la traduction de la langue courante est automatique + ( isset($_COOKIE['googtrans']) + AND ( $this->getData(['config','translate', substr($_COOKIE['googtrans'],4,2)]) === 'script' + // Ou traduction automatique + OR $this->getData(['config','translate','autoDetect']) === true ) + ) + // Cas des pages d'administration + // Pas connecté + AND $this->getUser('password') !== $this->getInput('ZWII_USER_PASSWORD') + // Ou connecté avec option active + OR ($this->getUser('password') === $this->getInput('ZWII_USER_PASSWORD') + AND $this->getData(['config','translate','admin']) === true + ) + ) + { + // Découper la chaîne + $f = str_getcsv(self::$motclef, ' '); + $f = str_replace(' ','',$f); + $f = str_replace('"','',$f); + // Lire le cookie GoogTrans et déterminer les langues cibles + $language['target'] = substr($_COOKIE['googtrans'],4,2); + $language['origin'] = substr($_COOKIE['googtrans'],1,2); + if ($language['target'] !== $language['origin']) { + foreach ($f as $key => $value) { + echo $value. "
"; + /*$e = $this->translate($language['target'],$language['origin'],$value); + self::$motclef = str_replace($value,$e[0][1],self::$motclef);*/ + } + echo self::$motclef; + } + + } + + + // Récupération de l'état de l'option mot entier passé par le même formulaire self::$motentier=$this->getInput('searchMotentier', helper::FILTER_BOOLEAN); @@ -221,40 +261,9 @@ class search extends common { // Construire la clé de recherche selon options de recherche $keywords = '/('; + foreach ($a as $key => $value) { - // Traduction du mot clé si le script Google Trad est actif - // Le multi langue est sélectionné - if ( $this->getData(['config','translate','scriptGoogle']) === true - AND - // et la traduction de la langue courante est automatique - ( isset($_COOKIE['googtrans']) - AND ( $this->getData(['config','translate', substr($_COOKIE['googtrans'],4,2)]) === 'script' - // Ou traduction automatique - OR $this->getData(['config','translate','autoDetect']) === true ) - ) - // Cas des pages d'administration - // Pas connecté - AND $this->getUser('password') !== $this->getInput('ZWII_USER_PASSWORD') - // Ou connecté avec option active - OR ($this->getUser('password') === $this->getInput('ZWII_USER_PASSWORD') - AND $this->getData(['config','translate','admin']) === true - ) - ) - { - // Lire le ccokie GoogTrans - $language['target'] = substr($_COOKIE['googtrans'],4,2); - $language['origin'] = substr($_COOKIE['googtrans'],1,2); - if ($language['target'] !== $language['origin']) { - echo "
";
-						$d = $this->translate($language['target'],$language['origin'],$value);
-						echo $d[0][1];
-						echo "
"; - } - - } - - $keywords .= $motentier === true ? $value . '|' : '\b' . $value . '\b|' ; } $keywords = substr($keywords,0,strlen($keywords) - 1);