148,10 → 148,10 |
if ($valeurs['nom_retenu.libelle'] == null) {//sans correspondances |
$sansCorres[$cle] = $valeurs['nom_sci_complet']; |
} elseif ($valeurs['retenu'] == 'true') { // retenus |
if (preg_match('/ x |^x /',$valeurs['nom_sci'] ) ) { |
if (preg_match('/ x |x /',$valeurs['nom_sci'] ) ) { |
//hybrides |
$retenus[2][$cle] = $this->retournerInfosNomRetenu($cle,$valeurs['nom_sci_complet'], $valeurs['rang.libelle']); |
} elseif (strripos($valeurs['nom_sci_complet'], $this->parametres->masqueRecherche) === 0) {//preg_match('/^'.strtolower($this->parametres->masqueRecherche).' |^'.strtolower($this->parametres->masqueRecherche).'$/', strtolower($valeurs['nom_sci']) ) ) { |
} elseif (preg_match('/^'.strtolower($this->parametres->masqueRecherche).' |^'.strtolower($this->parametres->masqueRecherche).'$/', strtolower($valeurs['nom_sci']) ) ) { |
//commence par |
$retenus[0][$cle] = $this->retournerInfosNomRetenu($cle,$valeurs['nom_sci_complet'], $valeurs['rang.libelle']); |
} else { |
160,8 → 160,8 |
} |
} else {//synonymes |
$idNomRetenu = $valeurs['nom_retenu.id']; |
if (in_array($valeurs['nom_retenu.id'], array_keys($this->noms)) == false) { |
//synonymes dont le nom retenu n'est pas un résultat de recherche |
if (preg_match('/'.strtolower($this->parametres->masqueRecherche).'/', strtolower($valeurs['nom_retenu.libelle'])) == 0) { |
//synonymes dont le nom retenu ne contient pas la requête |
$retenus[1][$idNomRetenu] = $this->retournerInfosNomRetenu($cle,$valeurs['nom_retenu_complet'], $valeurs['rang.libelle']); |
$this->infosPourTpl['taxons'][$idNomRetenu] = $valeurs['num_taxonomique']; //num taxon pour images coste |
} |
189,7 → 189,7 |
return $infos; |
} |
public function trier() { |
/*if (count($this->infosPourTpl['noms']) <= 1) { // classement par score |
if ($this->donnerNombreResultatRetenus() <= 3) { // classement par score |
$nomsRetenus = array(); |
foreach ($this->infosPourTpl['noms'] as $categorie) { //ote la division des retenus |
$nomsRetenus += $categorie; |
201,7 → 201,6 |
$this->infosPourTpl['nomsSansCorrespondance'] = |
$this->classerAlphabetiquement('nomSciRetenu', $this->infosPourTpl['nomsSansCorrespondance'] ); |
} else { // classement alphabétique |
*/ |
$nomsRetenus = array(); |
foreach ($this->infosPourTpl['noms'] as $categorie => $valeurs ) { //classement alpha par groupes |
$nomsRetenus += $this->classerAlphabetiquement('nomSciRetenu', $valeurs); |
208,9 → 207,19 |
} |
$this->infosPourTpl['noms'] = $nomsRetenus; |
$this->infosPourTpl['nomsSansCorrespondance'] = |
$this->classerAlphabetiquement('nomSciRetenu', $this->infosPourTpl['nomsSansCorrespondance'] ); |
//} |
$this->classerAlphabetiquement('nomSciRetenu', $this->infosPourTpl['nomsSansCorrespondance'] ); |
} |
} |
private function donnerNombreResultatRetenus() { |
$nbre = 0; |
foreach ($this->infosPourTpl['noms'] as $lignes) { |
$nbre += count($lignes); |
if ($nbre >= 3 ) { |
break; |
} |
} |
return $nbre; |
} |
|
private function ajouterAuxNomsScoreSimilariteAvec($masque) { |
$nom_demande_ss = strtolower($this->manipulateurDeChaine->supprimerAccents($masque)); |