Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 3421 → Rev 3422

/trunk/jrest/bibliotheque/RechercheInfosZoneGeo.php
102,6 → 102,14
return $retour;
}
 
public function obtenirInfosPourCodeInseeCommune($code_insee) {
$code_insee = trim($code_insee);
 
$retour = $this->chercherCentroideCommuneInseeBdd($code_insee);
 
return $retour;
}
 
/**
* Renvoie tous les codes de zones pour le groupe $groupe
*/
352,7 → 360,36
}
return $retour;
}
 
/**
* Renvoie les infos d'une commune, incluant les coordonnées du centroïde,
* en fonction du code insee (plus fiable)
*/
protected function chercherCentroideCommuneInseeBdd($code_insee) {
$code_insee = trim($code_insee);
$commune_coordonnees = array();
if ($code_insee != null) {
$requete = 'SELECT `wgs84_latitude`, `wgs84_longitude`, `nom` FROM `cel_zones_geo` '
. 'WHERE `code`=' .Cel::db()->proteger($code_insee)
. ' -- '.__FILE__.':'.__LINE__;
 
$commune_coordonnees = Cel::db()->requeter($requete);
}
 
$retour = false;
if ($commune_coordonnees && is_array($commune_coordonnees) && count($commune_coordonnees) > 0) {
$retour = array(
'lat' => (float) $commune_coordonnees[0]['wgs84_latitude'],
'lng' => (float) $commune_coordonnees[0]['wgs84_longitude'],
'nom' => $commune_coordonnees[0]['nom'],
'code_zone' => $code_insee,
'code_pays' => 'FR',
'type' => 'france'
);
}
 
return $retour;
}
public function obtenirListeInfosPourNom($lieu) {
$lieux_retour = $this->obtenirListeCommunes($lieu);
514,4 → 551,4
$lieu = str_replace(['+', ' ', '-'], '_', $lieu);
return $lieu;
}
}
}