Line 717... |
Line 717... |
717 |
* Retourne un tableau prêt à être utilisé par coordGuess(), c'est à dire initialisant toutes
|
717 |
* Retourne un tableau prêt à être utilisé par coordGuess(), c'est à dire initialisant toutes
|
718 |
* les clefs nécessaires (même si NULL) et disposant systématiquement d'un pays.
|
718 |
* les clefs nécessaires (même si NULL) et disposant systématiquement d'un pays.
|
719 |
* Cela à partir d'un tableau au format de clefs prédéterminé.
|
719 |
* Cela à partir d'un tableau au format de clefs prédéterminé.
|
720 |
* S'occupe du filtrage basique des éléments pour maximiser les chances de détection.
|
720 |
* S'occupe du filtrage basique des éléments pour maximiser les chances de détection.
|
721 |
*
|
721 |
*
|
722 |
* @param data: un tableau associatif contenant les clefs telles que nommées à l'issue du
|
722 |
* @param in: un tableau associatif contenant les clefs telles que nommées à l'issue du
|
- |
|
723 |
* du formulaire de saisie: 'cs_adresse_01', 'cs_code_postal', 'cs_ville'
|
- |
|
724 |
* @param db: une db optionnelle, utilisée si nécessaire pour converir les code pays
|
723 |
* du formulaire de saisie: 'cs_adresse_01', 'cs_code_postal', 'cs_ville'
|
725 |
* du formulaire de saisie: 'cs_adresse_01', 'cs_code_postal', 'cs_ville'
|
724 |
* @return un tableau associatif contenant une ou plusieurs des clefs suivantes:
|
726 |
* @return un tableau associatif contenant une ou plusieurs des clefs suivantes:
|
725 |
* 'adresse', 'cp', 'ville', 'pays'
|
727 |
* 'adresse', 'cp', 'ville', 'pays'
|
726 |
*/
|
728 |
*/
|
727 |
static function addrReStruct(Array $in) {
|
729 |
static function addrReStruct(Array $in, $db = NULL) {
|
728 |
// TODO: fixer le bug des pays ...
|
730 |
$pays = FALSE;
|
729 |
if(is_numeric($in['cs_ce_truk_pays'])) {
|
731 |
if(is_numeric(@$in['cs_ce_truk_pays'])) {
|
730 |
switch($in['cs_ce_truk_pays']) {
|
- |
|
731 |
case '2654':
|
732 |
if($db) {
|
732 |
$pays = 'france';
|
733 |
$pays= $db->query(sprintf(
|
733 |
break;
|
- |
|
734 |
case '2717':
|
734 |
"SELECT cmlv_nom FROM coel_meta_liste_valeur ".
|
- |
|
735 |
"WHERE cmlv_ce_parent = 1074 AND cmlv_id_valeur = %d",
|
735 |
$pays = 'émirats arabe unis';
|
736 |
intval($in['cs_ce_truk_pays'])))->fetchColumn();
|
736 |
break;
|
- |
|
737 |
default:
|
- |
|
738 |
$pays = '';
|
737 |
}
|
739 |
}
|
738 |
}
|
740 |
} else $pays = @trim($in['cs_ce_truk_pays']);
|
739 |
else $pays = @trim($in['cs_ce_truk_pays']);
|
Line 741... |
Line 740... |
741 |
|
740 |
|
742 |
// pas de précision au n°, mais Nominatim peine avec des préfixes trop élaborés
|
741 |
// pas de précision au n°, mais Nominatim peine avec des préfixes trop élaborés
|
743 |
// coupons jusqu'à un élément reconnaissable s'il existe
|
742 |
// coupons jusqu'à un élément reconnaissable s'il existe
|
744 |
$adresse = @trim($in['cs_adresse_01']);
|
743 |
$adresse = @trim($in['cs_adresse_01']);
|