/trunk/services/modules/0.1/bdtxa/CommunNomsTaxons.php |
---|
244,13 → 244,14 |
public function remplirTableCompositionNom($valeur) { |
$structure_nom = explode(',', $valeur); |
foreach ($structure_nom as $structure) { |
$structure = trim($structure); |
$patterns = array('/^an$/', '/^au$/', '/^bib$/', '/^ad$/', '/^sp$/', '/^gen$/', '/^ssp$/','/^fam$/', |
'/^au_ss$/','/^bib_ss$/'); |
$champs = array('annee', 'auteur', 'biblio_origine', 'nom_addendum', 'epithete_sp', 'genre', |
'epithete_infra_sp','famille','auteur', 'biblio_origine'); |
//avec str_replace() 'sp' est inclu dans 'ssp', et la conversion pour 'ssp' est mauvaise |
$this->compo_nom[$structure] = |
preg_replace(array('/^an$/', '/^au$/', '/^bib$/', '/^ad$/', |
'/^sp$/', '/^gen$/', '/^ssp$/','/^fam$/','/^au_ss$/','/^bib_ss$/'), |
array('annee', 'auteur', 'biblio_origine', 'nom_addendum', |
'epithete_sp', 'genre', 'epithete_infra_sp','famille','auteur', 'biblio_origine'), |
$structure); |
$this->compo_nom[$structure] = preg_replace($patterns, $champs, $structure); |
} |
} |
/trunk/services/modules/0.1/bdtxa/Noms.php |
---|
573,16 → 573,13 |
return $table_retour_json; |
} |
public function remplirJsonResultat($resultat) { |
$champs = null; |
if (array_key_exists('retour.champs', $this->parametres)) { |
$champs = explode(',', $this->parametres['retour.champs']); |
} |
$resultat_json = null; |
$noms = array(); |
$nomsRetenus = array(); |
foreach ($resultat as $tab) { |
$this->table_retour = array(); |
$num = $tab['num_nom']; |
595,11 → 592,25 |
$this->ajouterChampsPersonnalises($champs, $reponse_id); |
$retour = array_merge($retour, $this->table_retour); |
} |
$resultat_json[$num] = $retour; |
// Sépare les noms retenus des autres noms |
if (isset($retour['retenu']) && $retour['retenu'] == 'true') { |
$nomsRetenus[$num] = $retour; |
} else { |
$noms[$num] = $retour; |
} |
return $resultat_json; |
} |
// Trie par ordre alphabétique de nom_sci |
$nomsRetenus = Tableau::trierMD($nomsRetenus, array('nom_sci' => SORT_ASC)); |
$noms = Tableau::trierMD($noms, array('nom_sci' => SORT_ASC)); |
// Rassemble la liste des noms avec les noms retenus en premier |
$nomsRetour = array(); |
Tableau::etendre($nomsRetour, $nomsRetenus); |
Tableau::etendre($nomsRetour, $noms); |
return $nomsRetour; |
} |
public function remplirJsonEntete() { |
$entete = array(); |
if (isset($this->masque)) { |