Subversion Repositories eFlore/Applications.eflore-consultation

Compare Revisions

Ignore whitespace Rev 930 → Rev 931

/trunk/modules/resultat/formateurs/nom_scientifique/DeterminationFormateur.php
38,24 → 38,27
}
 
public function formater() {
$this->obtenirUrlsImagesCoste();
$this->obtenirUrlsDessins();
$this->obtenirUrlsPhotos();
$this->chargerRepartition();
$this->extraireInfosNomsPourTplDetermination();
$this->infosPourTpl['urlWidget'] = Config::get('base_url_widget')."?referentiel=".Registre::get('parametres.referentiel');
}
private function obtenirUrlsImagesCoste() {
$this->extraireInfosTaxons();
$this->imagesService->setProjet('coste');
$tax = implode(',', $this->infosPourTpl['taxons']);
$this->imagesService->setNnTaxon($tax);
$costeImg = $this->imagesService->getInfosImagesTaxons();
if (!empty($costeImg)) {
foreach ($costeImg as $infos) {
$num_taxon = $infos['num_taxonomique'];
$images[$num_taxon][] = $infos['binaire.href'];
$this->infosPourTpl['imagesCoste'] = $images;
private function obtenirUrlsDessins() {
if (Config::get(Registre::get('parametres.referentiel').'.baseDessins') != "") {
$this->extraireInfosTaxons();
$this->imagesService->setProjet(Config::get(Registre::get('parametres.referentiel').'.baseDessins'));
$tax = implode(',', $this->infosPourTpl['taxons']);
$this->imagesService->setNnTaxon($tax);
$costeImg = $this->imagesService->getInfosImagesTaxons();
if (!empty($costeImg)) {
foreach ($costeImg as $infos) {
$num_taxon = $infos['num_taxonomique'];
$images[$num_taxon][] = $infos['binaire.href'];
$this->infosPourTpl['dessins'] = $images;
}
}
}
}
71,7 → 74,7
$this->imagesService->setProjet('cel');
$ids = $this->extraireIdDesNoms();
$urls = $this->imagesService->getUrlsImagesParIdsNoms($ids);
$this->infosPourTpl['imagesUrls'] = $this->supprimerCodeReftaxDesIds($urls);
$this->infosPourTpl['imagesUrls'] = $this->supprimerCodeReferentielDesIds($urls);
}
private function extraireIdDesNoms() {
$ids = array();
91,37 → 94,39
}
return $ids;
}
private function supprimerCodeReftaxDesIds($urls) {
private function supprimerCodeReferentielDesIds($urls) {
$urlsNettoyees = array();
foreach ($urls as $id => $url) {
$id = $this->supprimerCodeReftax($id);
$id = $this->supprimerCodeReferentiel($id);
$urlsNettoyees[$id] = $url;
}
return $urlsNettoyees;
}
private function supprimerCodeReftax($chaine) {
$codeReftax = $this->parametres->reftaxCourant.'.';
$chaine = str_replace($codeReftax, '', $chaine);
private function supprimerCodeReferentiel($chaine) {
$codeReferentiel = $this->parametres->referentielCourant.'.';
$chaine = str_replace($codeReferentiel, '', $chaine);
return $chaine;
}
// TODO : utiliser le conteneur pour charger tous les objets de cette classe
private function chargerRepartition() {
$conteneur = new Conteneur();
$cartesWs = $conteneur->getApiCartes();
$cartesWs->setProjet('chorodep');
$cartesWs->setLargeur('108x101');
$urls = array();
foreach ($this->noms as $id => $nom) {
if (array_key_exists('nom_retenu.id', $nom)) {
$id = $nom['nom_retenu.id'];
$cartesWs->setId("nn:$id");
if (array_key_exists($id, $urls) == false) {
$urls[$id] = $cartesWs->getUrlPng();
if (Config::get(Registre::get('parametres.referentiel').'.baseRepartition') != "") {
$conteneur = new Conteneur();
$cartesWs = $conteneur->getApiCartes();
$cartesWs->setProjet(Config::get(Registre::get('parametres.referentiel').'.baseRepartition'));
$cartesWs->setLargeur('108x101');
$urls = array();
foreach ($this->noms as $id => $nom) {
if (array_key_exists('nom_retenu.id', $nom)) {
$id = $nom['nom_retenu.id'];
$cartesWs->setId("nn:$id");
if (array_key_exists($id, $urls) == false) {
$urls[$id] = $cartesWs->getUrlPng();
}
}
}
$this->infosPourTpl['repartition']['urls'] = $urls;
}
$this->infosPourTpl['repartition']['urls'] = $urls;
}
 
private function extraireInfosNomsPourTplDetermination() {
227,7 → 232,7
}
private function classerAlphabetiquement($champs, $valeurs) {
$this->trieur->setTableau($valeurs);
$this->trieur->setChampsEtOrdres(array($champs => SORT_NATURAL));
$this->trieur->setChampsEtOrdres(array($champs => 'nat'));
return $this->trieur->trier();
}