forked from ZwiiCMS-Team/ZwiiCMS
Traduction de la recherche ok
This commit is contained in:
parent
7b4bfcc484
commit
e7b320e5ad
@ -39,7 +39,7 @@ class search extends common {
|
|||||||
];
|
];
|
||||||
|
|
||||||
// Message par défaut
|
// Message par défaut
|
||||||
public static $messagePlaceHolder = 'Un ou plusieurs mots-clés séparés par des espaces ou des guillemets';
|
public static $messagePlaceHolder = '<span class="notranslate">Un ou plusieurs mots-clés séparés par des espaces ou des guillemets</span>';
|
||||||
public static $messageButtontext = 'Rechercher';
|
public static $messageButtontext = 'Rechercher';
|
||||||
|
|
||||||
const SEARCH_VERSION = '1.1';
|
const SEARCH_VERSION = '1.1';
|
||||||
@ -104,7 +104,8 @@ class search extends common {
|
|||||||
|
|
||||||
// Récupération du mot clef passé par le formulaire de ...view/index.php, avec caractères accentués
|
// Récupération du mot clef passé par le formulaire de ...view/index.php, avec caractères accentués
|
||||||
self::$motclef=$this->getInput('searchMotphraseclef');
|
self::$motclef=$this->getInput('searchMotphraseclef');
|
||||||
|
// Variable de travail, on conserve la variable globale pour l'affichage du résultat
|
||||||
|
$motclef = self::$motclef;
|
||||||
|
|
||||||
// Traduction du mot clé si le script Google Trad est actif
|
// Traduction du mot clé si le script Google Trad est actif
|
||||||
// Le multi langue est sélectionné
|
// Le multi langue est sélectionné
|
||||||
@ -126,29 +127,22 @@ class search extends common {
|
|||||||
)
|
)
|
||||||
{
|
{
|
||||||
// Découper la chaîne
|
// Découper la chaîne
|
||||||
$f = str_getcsv(self::$motclef, ' ');
|
$f = str_getcsv($motclef, ' ');
|
||||||
$f = str_replace(' ','',$f);
|
|
||||||
$f = str_replace('"','',$f);
|
|
||||||
// Lire le cookie GoogTrans et déterminer les langues cibles
|
// Lire le cookie GoogTrans et déterminer les langues cibles
|
||||||
$language['target'] = substr($_COOKIE['googtrans'],4,2);
|
$language['origin'] = substr($_COOKIE['googtrans'],4,2);
|
||||||
$language['origin'] = substr($_COOKIE['googtrans'],1,2);
|
$language['target'] = substr($_COOKIE['googtrans'],1,2);
|
||||||
if ($language['target'] !== $language['origin']) {
|
if ($language['target'] !== $language['origin']) {
|
||||||
foreach ($f as $key => $value) {
|
foreach ($f as $key => $value) {
|
||||||
echo $value. "<br>";
|
$e = $this->translate($language['origin'],$language['target'],$value);
|
||||||
/*$e = $this->translate($language['target'],$language['origin'],$value);
|
$motclef = str_replace($value,$e,$motclef);
|
||||||
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
|
// 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);
|
self::$motentier=$this->getInput('searchMotentier', helper::FILTER_BOOLEAN);
|
||||||
|
|
||||||
if (self::$motclef !== '' ) {
|
if ($motclef !== '' ) {
|
||||||
foreach($this->getHierarchy(null,false,null) as $parentId => $childIds) {
|
foreach($this->getHierarchy(null,false,null) as $parentId => $childIds) {
|
||||||
if ($this->getData(['page', $parentId, 'disable']) === false &&
|
if ($this->getData(['page', $parentId, 'disable']) === false &&
|
||||||
$this->getUser('group') >= $this->getData(['page', $parentId, 'group']) &&
|
$this->getUser('group') >= $this->getData(['page', $parentId, 'group']) &&
|
||||||
@ -157,7 +151,7 @@ class search extends common {
|
|||||||
$titre = $this->getData(['page', $parentId, 'title']);
|
$titre = $this->getData(['page', $parentId, 'title']);
|
||||||
$contenu = ' ' . $titre . ' ' . $this->getData(['page', $parentId, 'content']);
|
$contenu = ' ' . $titre . ' ' . $this->getData(['page', $parentId, 'content']);
|
||||||
// Pages sauf pages filles et articles de blog
|
// Pages sauf pages filles et articles de blog
|
||||||
$tempData = $this->occurrence($url, $titre, $contenu, self::$motclef, self::$motentier);
|
$tempData = $this->occurrence($url, $titre, $contenu, $motclef, self::$motentier);
|
||||||
if (is_array($tempData) ) {
|
if (is_array($tempData) ) {
|
||||||
$result [] = $tempData;
|
$result [] = $tempData;
|
||||||
}
|
}
|
||||||
@ -172,7 +166,7 @@ class search extends common {
|
|||||||
$titre = $this->getData(['page', $childId, 'title']);
|
$titre = $this->getData(['page', $childId, 'title']);
|
||||||
$contenu = ' ' . $titre . ' ' . $this->getData(['page', $childId, 'content']);
|
$contenu = ' ' . $titre . ' ' . $this->getData(['page', $childId, 'content']);
|
||||||
//Pages filles
|
//Pages filles
|
||||||
$tempData = $this->occurrence($url, $titre, $contenu, self::$motclef, self::$motentier);
|
$tempData = $this->occurrence($url, $titre, $contenu, $motclef, self::$motentier);
|
||||||
if (is_array($tempData) ) {
|
if (is_array($tempData) ) {
|
||||||
$result [] = $tempData;
|
$result [] = $tempData;
|
||||||
}
|
}
|
||||||
@ -187,7 +181,7 @@ class search extends common {
|
|||||||
$titre = $article['title'];
|
$titre = $article['title'];
|
||||||
$contenu = ' ' . $titre . ' ' . $article['content'];
|
$contenu = ' ' . $titre . ' ' . $article['content'];
|
||||||
// Articles de sous-page de type blog
|
// Articles de sous-page de type blog
|
||||||
$tempData = $this->occurrence($url, $titre, $contenu, self::$motclef, self::$motentier);
|
$tempData = $this->occurrence($url, $titre, $contenu, $motclef, self::$motentier);
|
||||||
if (is_array($tempData) ) {
|
if (is_array($tempData) ) {
|
||||||
$result [] = $tempData;
|
$result [] = $tempData;
|
||||||
}
|
}
|
||||||
@ -205,7 +199,7 @@ class search extends common {
|
|||||||
$titre = $article['title'];
|
$titre = $article['title'];
|
||||||
$contenu = ' ' . $titre . ' ' . $article['content'];
|
$contenu = ' ' . $titre . ' ' . $article['content'];
|
||||||
// Articles de Blog
|
// Articles de Blog
|
||||||
$tempData = $this->occurrence($url, $titre, $contenu, self::$motclef, self::$motentier);
|
$tempData = $this->occurrence($url, $titre, $contenu, $motclef, self::$motentier);
|
||||||
if (is_array($tempData) ) {
|
if (is_array($tempData) ) {
|
||||||
$result [] = $tempData;
|
$result [] = $tempData;
|
||||||
}
|
}
|
||||||
@ -298,7 +292,7 @@ class search extends common {
|
|||||||
|
|
||||||
// Requête de traduction avec le script Google
|
// Requête de traduction avec le script Google
|
||||||
private function translate($from_lan, $to_lan, $text) {
|
private function translate($from_lan, $to_lan, $text) {
|
||||||
$arrayjson = json_decode(file_get_contents('https://translate.googleapis.com/translate_a/single?client=gtx&sl='.$from_lan.'&tl='.$to_lan.'&dt=t&q='.$text));
|
$arrayjson = json_decode(file_get_contents('https://translate.googleapis.com/translate_a/single?client=gtx&sl='.$from_lan.'&tl=fr&dt=t&q='.$text),true);
|
||||||
return $arrayjson;
|
return $arrayjson[0][0][0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user