Changeset 107723 in spip-zone


Ignore:
Timestamp:
Nov 23, 2017, 5:52:11 PM (17 months ago)
Author:
brunobergot@…
Message:

version 4.44.8 : bugfix geocoder

Depuis qu'on tape dans une action locale pour les appels du geodocer, il n'est plus nécessaire d'utiliser JSONP dans la requête AJAX. De plus, cela générait une erreur de callback avec le geocoder Photon qui renvoie du JSON et ne prend pas en charge le JSONP. Par conséquent, on change de méthode pour repérer la réponse de Photon/Nominatim? la fonction _callback() du geocoder.
On en profite pour passer le paramètre de la langue en cours aussi lors d'un reverse geocoding.

Location:
_plugins_/gis/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/gis/trunk/action/gis_geocoder_rechercher.php

    r104884 r107723  
    2424
    2525        /* On filtre les arguments à renvoyer à Nomatim (liste blanche) */
    26         $arguments = collecter_requests(array('json_callback', 'format', 'q', 'limit', 'addressdetails', 'accept-language', 'lat', 'lon'), array());
     26        $arguments = collecter_requests(array('format', 'q', 'limit', 'addressdetails', 'accept-language', 'lat', 'lon'), array());
    2727
    2828        $geocoder = defined('_GIS_GEOCODER') ? _GIS_GEOCODER : 'photon';
  • _plugins_/gis/trunk/javascript/gis_geocoder.js

    r107722 r107723  
    4848                                format: 'json',
    4949                                lat: latlng.lat,
    50                                 lon: latlng.lng
     50                                lon: latlng.lng,
     51                                'accept-language': this.options.acceptLanguage
    5152                        }
    5253                );
     
    5859                        context: this,
    5960                        data: data,
    60                         dataType: 'jsonp',
    61                         jsonp: 'json_callback',
    6261                        success: this._callback,
    63                         error: function (e) {
    64                                 /**
    65                                  * Photon me renvoie une erreur à chaque fois
    66                                  */
    67                                 if (e.statusText == 'OK' && e.status == '200') {
    68                                         this._callback(e.responseText,e.status,e);
    69                                 }
    70                         },
    7162                        url: url
    7263                });
     
    7970                        return_location.search = this.options.search;
    8071                }
    81                 if (typeof response === 'string') {
     72                if (response.type === 'FeatureCollection') {
    8273                        geocoder_server = 'photon';
    83                         response = JSON.parse(response);
    8474                }
    8575                if (((response instanceof Array) && (!response.length)) || ((response instanceof Object) && (response.error))) {
  • _plugins_/gis/trunk/paquet.xml

    r107687 r107723  
    22        prefix="gis"
    33        categorie="divers"
    4         version="4.44.7"
     4        version="4.44.8"
    55        schema="2.1.0"
    66        etat="stable"
Note: See TracChangeset for help on using the changeset viewer.