59,13 → 59,14 |
$donnees = $this->chargerDonnees($url); |
$images = (isset($donnees['resultats'])) ? $donnees['resultats'] : array(); |
} |
return $images; |
return $this->formaterResultatImages($images); |
} |
|
public function getInfosImageParIdImage($id_image) { |
$tpl = Config::get('imagesPopupTpl'); |
$tpl = $this->obtenirSqueletteSelonApi('imagesPopup'); |
$url = $this->formaterUrl($tpl, array('id' => $id_image, 'referentiel' => Registre::get('parametres.referentiel'))); |
return $this->chargerDonnees($url); |
$image = $this->chargerDonnees($url); |
return $this->formaterResultatImages($image, true); |
} |
|
public function getInfosImages() { |
72,7 → 73,7 |
$url = $this->getUrlImages(); |
$donnees = $this->chargerDonnees($url); |
$images = (empty($donnees['resultats']) == false) ? $donnees['resultats'] : array(); |
return $images; |
return $this->formaterResultatImages($images); |
} |
|
public function getInfosImagesTaxons() { |
92,37 → 93,130 |
$donnees = $this->chargerDonnees($url); |
$images = (isset($donnees['resultats'])) ? $donnees['resultats'] : array(); |
} |
return $this->formaterResultatImages($images); |
} |
|
public function getInfosPremiereImageParIdsNoms($idsNoms) { |
$url = $this->getUrlPremiereImageParIdsNoms($idsNoms); |
$donnees = $this->chargerDonnees($url); |
$images = (isset($donnees['resultats'])) ? $donnees['resultats'] : array(); |
return $this->formaterResultatImages($images); |
} |
|
public function getInfosImagesGalerieMobile($nn) { |
$url = $this->getUrlImagesGalerieMobile($nn); |
$donnees = $this->chargerDonnees($url); |
$images = (isset($donnees['resultats'])) ? $donnees['resultats'] : array(); |
$this->formaterResultatImagesDel($images); |
return $images; |
} |
|
private function getUrlImagesParIdsNoms($idsNoms) { |
$tpl = Config::get('imagesResultatsDeterminationTpl'); |
$tpl = $this->obtenirSqueletteSelonApi('imagesResultatsDetermination'); |
$params = array('idsNoms' => implode(',', $idsNoms), 'referentiel' => Registre::get('parametres.referentiel')); |
$url = $this->formaterUrl($tpl, $params); |
return $url; |
} |
|
public function getUrlPremiereImageParIdsNoms($idsNoms) { |
$tpl = Config::get('imagesPremiereTpl'); |
private function getUrlPremiereImageParIdsNoms($idsNoms) { |
$tpl = $this->obtenirSqueletteSelonApi('imagesPremiere'); |
$params = array('idsNoms' => implode(',', $idsNoms), 'referentiel' => Registre::get('parametres.referentiel')); |
$url = $this->formaterUrl($tpl, $params); |
$donnees = $this->chargerDonnees($url); |
$images = (isset($donnees['resultats'])) ? $donnees['resultats'] : array(); |
return $images; |
return $this->formaterUrl($tpl, $params); |
} |
|
private function getUrlImages() { |
$tpl = Config::get('imagesTpl'); |
private function getUrlImages($nn = false) { |
$tpl = $this->obtenirSqueletteSelonApi('images'); |
if ($this->getApi() == Eflore::API_EFLORE) { |
$params = array('projet' => $this->getProjet(), 'limite' => $this->limite, 'depart' => $this->depart, 'referentiel' => Registre::get('parametres.referentiel')); |
} |
$url = $this->formaterUrl($tpl, $params); |
return $url; |
} |
|
private function getUrlImagesTaxons($idsTaxons) { |
$tpl = Config::get('imagesTaxonsTpl'); |
$tpl = $this->obtenirSqueletteSelonApi('imagesTaxons'); |
$params = array('projet' => $this->getProjet(),'nntaxon'=> $idsTaxons, 'referentiel' => Registre::get('parametres.referentiel')); |
$url = $this->formaterUrl($tpl, $params); |
return $url; |
} |
|
private function getUrlImagesGalerieMobile($nn) { |
$tpl = Config::get('delGalerieMobileTpl'); |
$params = array('nn' => $nn); |
$url = $this->formaterUrl($tpl, $params); |
return $url; |
} |
|
/** |
* Transforme les résultats issus des Webservices autres que eflore/cel afin de conserver un format homogène |
* @param mixed $images |
*/ |
private function formaterResultatImages($images, $seulementUne = false) { |
switch ($this->getApi()) { |
case Eflore::API_DEL: |
return $this->formaterResultatImagesDel($images, $seulementUne); |
break; |
default: |
return $images; |
} |
} |
|
private function formaterResultatImagesDel($images, $seulementUne = false) { |
if ($seulementUne) { |
return $this->formaterUnResultatImagesDel($images); |
} else { |
$retour = array(); |
foreach ($images as $idObsImage => $image) { |
$retour[$image['id_image']] = array_merge($images[$idObsImage], $this->formaterUnResultatImagesDel($image)); |
} |
return $retour; |
} |
} |
|
/** |
* Convertit un array venant d'un Webservice del vers le format retourné par eflore/cel |
* @param array $image |
* @return array |
*/ |
private function formaterUnResultatImagesDel(array $image) { |
//echo "FORMAT DEL: <pre>"; print_r($image); echo "</pre>"; |
$libelleAuteur = $image['observation']['auteur.prenom'].' '.$image['observation']['auteur.nom']; |
$codeReferentiel = substr($image['observation']['determination.referentiel'], 0, strpos($image['observation']['determination.referentiel'], ':')); |
$localiteLibelle = array($image['observation']['zone_geo'], |
$image['observation']['lieudit'], |
$image['observation']['station'], |
$image['observation']['milieu']); |
$retourImage = array( |
'date' => $image['observation']['date_observation'], |
'mime' => 'image/jpeg', |
'auteur.libelle' => $libelleAuteur, |
'auteur.id' => $image['observation']['auteur.id'], |
'binaire.href' => $image['binaire.href'], |
'observation.id' => $image['observation']['id_observation'], |
'determination.libelle' => $image['observation']['determination.ns'].'[Dét. : '.$libelleAuteur.']', |
'determination.nom_sci' => $image['observation']['determination.ns'], |
'determination.nom_sci.code' => $codeReferentiel.'.'.$image['observation']['determination.nn'], |
'station.commune' => $image['observation']['zone_geo'], |
'station.lieudit' => $image['observation']['lieudit'], |
'station.station' => $image['observation']['station'], |
'station.milieu' => $image['observation']['milieu'], |
'station.libelle' => $this->formaterLocalite($localiteLibelle) |
); |
//echo "FORMAT CEL: <pre>"; print_r($retourImage); echo "</pre>"; |
return $retourImage; |
} |
|
private function formaterLocalite($infosLocalite) { |
$localiteFmt = array(); |
foreach ($infosLocalite as $localite) { |
if($localite != '') { |
$localiteFmt[] = $localite; |
} |
} |
if (empty($localiteFmt)) { |
$localiteFmt[0] = 'localité inconnue'; |
} |
return implode(" > ", $localiteFmt); |
} |
} |
?> |