Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 1708 → Rev 1709

/trunk/jrest/services/Coel.php
719,25 → 719,24
* Cela à partir d'un tableau au format de clefs prédéterminé.
* S'occupe du filtrage basique des éléments pour maximiser les chances de détection.
*
* @param data: un tableau associatif contenant les clefs telles que nommées à l'issue du
* @param in: un tableau associatif contenant les clefs telles que nommées à l'issue du
* du formulaire de saisie: 'cs_adresse_01', 'cs_code_postal', 'cs_ville'
* @param db: une db optionnelle, utilisée si nécessaire pour converir les code pays
* du formulaire de saisie: 'cs_adresse_01', 'cs_code_postal', 'cs_ville'
* @return un tableau associatif contenant une ou plusieurs des clefs suivantes:
* 'adresse', 'cp', 'ville', 'pays'
*/
static function addrReStruct(Array $in) {
// TODO: fixer le bug des pays ...
if(is_numeric($in['cs_ce_truk_pays'])) {
switch($in['cs_ce_truk_pays']) {
case '2654':
$pays = 'france';
break;
case '2717':
$pays = 'émirats arabe unis';
break;
default:
$pays = '';
}
} else $pays = @trim($in['cs_ce_truk_pays']);
static function addrReStruct(Array $in, $db = NULL) {
$pays = FALSE;
if(is_numeric(@$in['cs_ce_truk_pays'])) {
if($db) {
$pays= $db->query(sprintf(
"SELECT cmlv_nom FROM coel_meta_liste_valeur ".
"WHERE cmlv_ce_parent = 1074 AND cmlv_id_valeur = %d",
intval($in['cs_ce_truk_pays'])))->fetchColumn();
}
}
else $pays = @trim($in['cs_ce_truk_pays']);
 
// pas de précision au n°, mais Nominatim peine avec des préfixes trop élaborés
// coupons jusqu'à un élément reconnaissable s'il existe