1519,25 → 1519,22 |
|
// Réalisation du test |
$noms_erreur = array(); |
$this->noms_ok = array(); |
$noms_ok = array(); |
foreach ($this->noms as &$nom) { |
if ($nom['num_nom_retenu'] == $nom['num_nom']) { |
if (isset($this->noms_ok[$nom['num_tax_sup']])) { |
$this->noms_ok[$nom['num_nom']] = true; |
if (isset($noms_ok[$nom['num_tax_sup']])) { |
$noms_ok[$nom['num_nom']] = true; |
} else { |
$this->detection_boucle_infini = array(); |
$classif_ok = $this->remonterClassif($nom); |
unset($this->detection_boucle_infini); |
|
if ($classif_ok === false) { |
$noms_erreur[] = $nom['num_nom']; |
} else { |
$this->noms_ok[$nom['num_nom']] = $classif_ok; |
$noms_ok[$nom['num_nom']] = $classif_ok; |
} |
} |
} |
} |
unset($this->noms_ok); |
unset($noms_ok); |
|
// Analyse des résultats |
if (count($noms_erreur) > 0) { |
1549,26 → 1546,15 |
$this->traiterResultatTest($info); |
} |
|
private function remonterClassif(&$nom) { |
$this->detection_boucle_infini[$nom['num_nom']] = true; |
private function remonterClassif($nom) { |
if (preg_match('/^[0-9]*$/', $nom['num_tax_sup'])) { |
if (isset($this->noms_ok[$nom['num_tax_sup']])) { |
$this->noms_ok[$nom['num_nom']] = true; |
if (!isset($this->noms[$nom['num_tax_sup']]) && $nom['num_tax_sup'] == '0') { |
return true; |
} else if (!isset($this->noms[$nom['num_tax_sup']]) && $nom['num_tax_sup'] == '0') { |
$this->noms_ok[$nom['num_nom']] = true; |
return true; |
} else if (!isset($this->noms[$nom['num_tax_sup']]) && $nom['num_tax_sup'] != '0') { |
return false; |
} else if (isset($this->detection_boucle_infini[$nom['num_tax_sup']])) { |
return false; |
} else { |
$retour = $this->remonterClassif($this->noms[$nom['num_tax_sup']]); |
if ($retour === true) { |
$this->noms_ok[$nom['num_tax_sup']] = true; |
return $this->remonterClassif($this->noms[$nom['num_tax_sup']]); |
} |
return $retour; |
} |
} else { |
return false; |
} |