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; |
} |
} |
} |