Changeset 96531 in spip-zone


Ignore:
Timestamp:
Apr 8, 2016, 8:27:25 AM (5 years ago)
Author:
kent1@…
Message:

nomajinputs, permet de demander à la saisie carte de ne pas mettre à jour les inputs de lat / lon / zoom et adresse

Sera très utile si on permet plusieurs saisies carte pour des usages différents dans le même formulaire

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/gis_geometries/saisies/carte.html

    r96511 r96531  
    1616        - nodraw = oui                                          permet de désactiver la barre d'édition pour revenir au comportement par défaut
    1717        - noimport = oui                                        permet de masquer le champ d'import de fichier GPX/KML
     18        - nomajinputs = oui                                     permet de ne pas mettre à jour les inputs de lat / lon / zoom et adresse
    1819        - boutons = #ARRAY{marker,non}          permet de spécifier les boutons à ne pas afficher dans la barre d'édition (clés possibles : marker, polyline, polygon)
    1920        - path_styles=#ARRAY{color,#fff}        options de style des éléments de la couche GeoJSON (voir http://leafletjs.com/reference.html#path-options)
     
    5859                if(data.lng <= -180) data.lng = data.lng+360
    5960                else if(data.lng > 180) data.lng = data.lng-360;
    60                 $('#champ_#ENV{champ_zoom,zoom}').val(zoom);
     61                [(#ENV{nomajinputs,non}|=={oui}|non)
     62                $('#champ_#ENV{champ_zoom,zoom}').val(zoom);]
    6163                if(action == 'click'){
     64                        [(#ENV{nomajinputs,non}|=={oui}|non)
    6265                        $('#champ_#ENV{champ_lat,lat}').val(data.lat);
    63                         $('#champ_#ENV{champ_lon,lon}').val(data.lng);
     66                        $('#champ_#ENV{champ_lon,lon}').val(data.lng);]
    6467                        annuler_geocoder = 1;
    6568                        map.panTo(data);
     
    6871                else if(annuler_geocoder != 1){
    6972                        if(data.point == 'undefined'){
     73                                [(#ENV{nomajinputs,non}|=={oui}|non)
    7074                                $('#champ_#ENV{champ_lat,lat}').val(data.lat);
    71                                 $('#champ_#ENV{champ_lon,lon}').val(data.lng);
     75                                $('#champ_#ENV{champ_lon,lon}').val(data.lng);]
    7276                                map.panTo(data);
    7377                                marker.setLatLng(data);
    7478                        }else{
     79                                [(#ENV{nomajinputs,non}|=={oui}|non)
    7580                                $('#champ_#ENV{champ_lat,lat}').val(data.point.lat);
    76                                 $('#champ_#ENV{champ_lon,lon}').val(data.point.lng);
     81                                $('#champ_#ENV{champ_lon,lon}').val(data.point.lng);]
    7782                                map.panTo(data.point);
    7883                                marker.setLatLng(data.point);
     
    8893        function geocode(query) {
    8994                if(! query.error){
     95                        [(#ENV{nomajinputs,non}|=={oui}|non)
    9096                        $('#champ_#ENV{champ_adresse,adresse}').val(query.street);
    9197                        $('#champ_#ENV{champ_code_postal,code_postal}').val(query.postcode);
     
    94100                        $('#champ_#ENV{champ_region,region}').val(query.region);
    95101                        $('#champ_#ENV{champ_pays,pays}').val(query.country);
    96                         $('#champ_#ENV{champ_code_pays,code_pays}').val(query.country_code);
     102                        $('#champ_#ENV{champ_code_pays,code_pays}').val(query.country_code);]
    97103                        maj_inputs(form_map,editableLayers,query,'geocoding');
    98104                }else{
     
    123129                        $('#champ_#ENV{champ_geojson,geojson}').val(JSON.stringify(layer.toGeoJSON()));
    124130                        var center = layer.getBounds().getCenter();
     131                        [(#ENV{nomajinputs,non}|=={oui}|non)
    125132                        $('#champ_#ENV{champ_lat,lat}').val(center.lat);
    126                         $('#champ_#ENV{champ_lon,lon}').val(center.lng);
     133                        $('#champ_#ENV{champ_lon,lon}').val(center.lng);]
    127134                }
    128135                var gisdraw_change_controls = function(options){
     
    181188                // mettre à jour les champs de latitude et longitude quand la carte est chargée
    182189                // a voir si on le fait dans tous les cas, pas seulement pour la boundingbox, comme pour le zoom
     190                [(#ENV{nomajinputs,non}|=={oui}|non)
    183191                form_map.on('load', function(e) {
    184192                        $('#champ_#ENV{champ_lat,lat}').val(e.latlng.lat);
    185193                        $('#champ_#ENV{champ_lon,lon}').val(e.latlng.lon);
    186                 });]
     194                });]]
    187195
    188196                [(#REM)
     
    396404                                       
    397405                                ]
     406                                [(#ENV{nomajinputs,non}|=={oui}|non)
    398407                                $('#champ_[(#ENV{champ_lat,lat})],#champ_[(#ENV{champ_lon,lon})],#champ_[(#ENV{champ_type,type})],#champ_[(#ENV{champ_geojson,geojson})]').val('');
    399                                 $('#champ_[(#ENV{champ_adresse,adresse})],#champ_[(#ENV{champ_code_postal,code_postal})],#champ_[(#ENV{champ_ville,ville})],#champ_[(#ENV{champ_departement,departement})],#champ_[(#ENV{champ_region,region})],#champ_[(#ENV{champ_pays,pays})],#champ_[(#ENV{champ_code_pays,code_pays})]').val('');
     408                                $('#champ_[(#ENV{champ_adresse,adresse})],#champ_[(#ENV{champ_code_postal,code_postal})],#champ_[(#ENV{champ_ville,ville})],#champ_[(#ENV{champ_departement,departement})],#champ_[(#ENV{champ_region,region})],#champ_[(#ENV{champ_pays,pays})],#champ_[(#ENV{champ_code_pays,code_pays})]').val('');]
    400409                                [(#REM)
    401410
     
    445454                });
    446455                // mettre à jour le champ geosjon et le marker quand on change les valeur de lat ou lon
     456                [(#ENV{nomajinputs,non}|=={oui}|non)
    447457                $('#champ_#ENV{champ_lat,lat}, #champ_#ENV{champ_lon,lon}').change(function(){
    448458                        var new_lat = $('#champ_#ENV{champ_lat,lat}').val();
     
    452462                        form_map.panTo(new_center);
    453463                        $('#champ_#ENV{champ_geojson,geojson}').val('{"type":"Point","coordinates":\['+ new_lon +','+ new_lat +'\]}');
    454                 });]
     464                });]]
    455465               
    456466                [(#ENV{nodraw}|oui)
     
    461471               
    462472                // mettre à jour le zoom quand on le modifie
     473                [(#ENV{nomajinputs,non}|=={oui}|non)
    463474                form_map.on('zoomend', function(e) {
    464475                        $('#champ_#ENV{champ_zoom,zoom}').val(e.target._zoom);
    465                 });
     476                });]
    466477               
    467478                [(#GET{geocoder}|oui)
     
    507518        <a id="#ENV{nom}_rechercher_geocodage"><:info_rechercher:></a>
    508519</[(#VAL{li}|saisie_balise_structure_formulaire)]>]
     520#FILTRE{trim}
    509521<!--extragis-->
Note: See TracChangeset for help on using the changeset viewer.