837,9 → 837,13 |
$noms_erreur = array(); |
foreach ($this->noms as &$nom) { |
if ($nom['epithete_sp'] != '') { |
$formule_hybridite = (strpos($nom, ' x ') !== false); |
$mots = explode(' ', $nom['epithete_sp']); |
foreach ($mots as $mot) { |
if (!(preg_match('/^[+x]$/', $mot) || $this->verifierEpitheteSp($mot))) { |
// TODO: créer un test qui vérifie la formule d'hybridité en la reconstruisant à partir des parents |
// afin que seuls des formules valides parviennent à la fonction |
// TODO: verifier que l'épithete n'est pas subsp. var. etc... (faire une liste) |
if (!(preg_match('/^[+x]$/', $mot) || $this->verifierEpitheteSp($mot) || ($formule_hybridite && verifierEpitheteGenre($mot)))) { |
$epithete_traite = $this->repererEspace($nom['epithete_sp']); |
$noms_erreur[] = array($nom['num_nom'], $epithete_traite, $nom['exclure_taxref']); |
break; |