Line 365... |
Line 365... |
365 |
$table_retour_json['entete']['href.precedent'] = $url['precedent'];
|
365 |
$table_retour_json['entete']['href.precedent'] = $url['precedent'];
|
366 |
}
|
366 |
}
|
367 |
if (isset($url['suivant']) && $url['suivant'] != '') {
|
367 |
if (isset($url['suivant']) && $url['suivant'] != '') {
|
368 |
$table_retour_json['entete']['href.suivant'] = $url['suivant'];
|
368 |
$table_retour_json['entete']['href.suivant'] = $url['suivant'];
|
369 |
}
|
369 |
}
|
370 |
|
- |
|
371 |
foreach ($resultat as &$tab) {
|
370 |
foreach ($resultat as &$tab) {
|
372 |
$resultat_json[$tab['num_nom_vernaculaire']]['id'] = $tab['id'];
|
371 |
$resultat_json[$tab['num_nom_vernaculaire']]['id'] = $tab['id'];
|
373 |
$resultat_json[$tab['num_nom_vernaculaire']]['nom_vernaculaire'] = $tab['nom_vernaculaire'];
|
372 |
$resultat_json[$tab['num_nom_vernaculaire']]['nom_vernaculaire'] = $tab['nom_vernaculaire'];
|
374 |
$resultat_json[$tab['num_nom_vernaculaire']]['code_langue'] = $tab['code_langue'];
|
373 |
$resultat_json[$tab['num_nom_vernaculaire']]['code_langue'] = $tab['code_langue'];
|
375 |
$resultat_json[$tab['num_nom_vernaculaire']]['taxon.code'] = 'bdtfx.nt:'.$tab['num_taxon'];
|
374 |
$resultat_json[$tab['num_nom_vernaculaire']]['taxon.code'] = 'bdtfx.nt:'.$tab['num_taxon'];
|
Line 383... |
Line 382... |
383 |
if($this->champs_supp != array()) {
|
382 |
if($this->champs_supp != array()) {
|
384 |
$resultat_json[$tab['num_nom_vernaculaire']] = $this->ajouterChampsOntologieLigneResultat($tab);
|
383 |
$resultat_json[$tab['num_nom_vernaculaire']] = $this->ajouterChampsOntologieLigneResultat($tab);
|
385 |
}
|
384 |
}
|
386 |
}
|
385 |
}
|
387 |
}
|
386 |
}
|
388 |
|
387 |
|
389 |
if ($this->retour_format == 'max') {
|
388 |
if ($this->retour_format == 'max') {
|
390 |
// On est obligé de faire un deuxième boucle pour demander tous les taxons présents en une
|
389 |
// On est obligé de faire un deuxième boucle pour demander tous les taxons présents en une
|
391 |
// fois et les attribuer aux noms car c'est beaucoup plus rapide
|
390 |
// fois et les attribuer aux noms car c'est beaucoup plus rapide
|
392 |
$noms_sci = $this->recupererNomTaxons();
|
391 |
$noms_sci = $this->recupererNomTaxons();
|
393 |
foreach ($resultat_json as $num_nom => &$tab) {
|
392 |
foreach ($resultat_json as $num_nom => &$tab) {
|
394 |
$tab = $this->ajouterTaxonsAttributionsLigneResultat($tab, $noms_sci);
|
393 |
$tab = $this->ajouterTaxonsAttributionsLigneResultat($tab, $noms_sci);
|
- |
|
394 |
if($tab == null) {
|
- |
|
395 |
unset($resultat_json[$num_nom]);
|
- |
|
396 |
}
|
395 |
}
|
397 |
}
|
396 |
}
|
398 |
}
|
Line 397... |
Line 399... |
397 |
|
399 |
|
398 |
uasort($resultat_json, array($this,'trierLigneTableau'));
|
400 |
uasort($resultat_json, array($this,'trierLigneTableau'));
|
Line 447... |
Line 449... |
447 |
*/
|
449 |
*/
|
448 |
public function ajouterTaxonsAttributionsLigneResultat(&$ligne_tableau_resultat, &$noms_sci) {
|
450 |
public function ajouterTaxonsAttributionsLigneResultat(&$ligne_tableau_resultat, &$noms_sci) {
|
449 |
if (isset($noms_sci[$ligne_tableau_resultat['num_taxon']])) {
|
451 |
if (isset($noms_sci[$ligne_tableau_resultat['num_taxon']])) {
|
450 |
$ligne_tableau_resultat['nom_retenu.code'] = $noms_sci[$ligne_tableau_resultat['num_taxon']]['id'];
|
452 |
$ligne_tableau_resultat['nom_retenu.code'] = $noms_sci[$ligne_tableau_resultat['num_taxon']]['id'];
|
451 |
$ligne_tableau_resultat['taxon'] = $noms_sci[$ligne_tableau_resultat['num_taxon']]['nom_sci'];
|
453 |
$ligne_tableau_resultat['taxon'] = $noms_sci[$ligne_tableau_resultat['num_taxon']]['nom_sci'];
|
- |
|
454 |
} else {
|
- |
|
455 |
$ligne_tableau_resultat = null;
|
452 |
}
|
456 |
}
|
453 |
return $ligne_tableau_resultat;
|
457 |
return $ligne_tableau_resultat;
|
454 |
}
|
458 |
}
|
Line 455... |
Line 459... |
455 |
|
459 |
|
Line 578... |
Line 582... |
578 |
}
|
582 |
}
|
579 |
}
|
583 |
}
|
580 |
}
|
584 |
}
|
Line 581... |
Line 585... |
581 |
|
585 |
|
- |
|
586 |
public function recupererNomTaxons() {
|
582 |
public function recupererNomTaxons() {
|
587 |
$taxons = array_unique($this->taxons);
|
583 |
$url = Config::get('url_service_base').'bdtfx/taxons?navigation.limite=500&masque.nt='.
|
- |
|
584 |
implode(',', $this->taxons);
|
588 |
$url = Config::get('url_service_base').'bdtfx/taxons?navigation.limite=500&ns.structure=au&masque.nt='.implode(',', $taxons);
|
585 |
$res = $this->consulterHref($url);
|
589 |
$res = $this->consulterHref($url);
|
586 |
foreach ($res->resultat as $id=>$taxon) {
|
590 |
foreach ($res->resultat as $id=>$taxon) {
|
587 |
$resultat[$taxon->num_taxonomique]['id'] = 'bdtfx.nn:'.$id;
|
591 |
$resultat[$taxon->num_taxonomique]['id'] = 'bdtfx.nn:'.$id;
|
588 |
$resultat[$taxon->num_taxonomique]['nom_sci'] = $taxon->nom_sci;
|
592 |
$resultat[$taxon->num_taxonomique]['nom_sci'] = $taxon->nom_sci_complet;
|
589 |
}
|
593 |
}
|
590 |
return $resultat;
|
594 |
return $resultat;
|
Line 591... |
Line 595... |
591 |
}
|
595 |
}
|