Changeset 53804 in spip-zone


Ignore:
Timestamp:
Oct 28, 2011, 3:26:15 PM (8 years ago)
Author:
lesage.sylvain@…
Message:

Nouvelle option de configuration pour GIS: le fond cartographique (maptype), qui vaut ROAD, SATELLITE, HYBRID ou PHYSICAL

  • c'est le fond qui se met par défaut dans toutes las cartes du site. Par défaut, c'est la valeur ROAD, comme avant.
  • on peut le choisir par un select dans la page de configuration
  • on peut le surcharger, comme pour l'API, par les variables _GIS_MAPTYPES, _GIS_MAPTYPES_FORCE et _GIS_MAPTYPES_DEFAUT
  • le type de carte peut toujours etre passe en parametre dans le modele, ca ne change pas
Location:
_plugins_/gis/trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/gis/trunk/formulaires/configurer_gis.html

    r53681 r53804  
    5151                        defaut=#GET{api_defaut},valeur_forcee=#GET{api_forcee},readonly=#GET{api_readonly},disable=#GET{api_disable},explication=#GET{api_explications},
    5252                        datas=#GET{apis}})]
     53
     54                [(#SET{maptypes,[(#ARRAY{
     55                                ROAD,<:gis:cfg_lbl_maptype_carte:>,
     56                                SATELLITE,<:gis:cfg_lbl_maptype_satellite:>,
     57                                HYBRID,<:gis:cfg_lbl_maptype_hybride:>,
     58                                PHYSICAL,<:gis:cfg_lbl_maptype_relief:>})]})]
     59
     60                [(#VAL{_GIS_MAPTYPES}|defined|oui)
     61                        [(#EVAL{_GIS_MAPTYPES}|unserialize|is_array|oui)#SET{apis,#EVAL{_GIS_MAPTYPES}|unserialize}]
     62                ]
     63
     64                [(#SET{maptype_defaut,carte})]
     65                [(#VAL{_GIS_MAPTYPES_DEFAUT}|defined|oui)
     66                        [(#SET{maptype_defaut,[(#EVAL{_GIS_MAPTYPES_DEFAUT})]})]
     67                ]
     68                [(#VAL{_GIS_MAPTYPES_FORCE}|defined|oui)
     69                        [(#SET{maptype_readonly,readonly})]
     70                        [(#SET{maptype_disable,disabled})]
     71                        [(#SET{maptype_force,[(#EVAL{_GIS_MAPTYPES_FORCE})]})]
     72                        [(#SET{maptype_explications,<:gis:explication_maptype_force:>})]
     73                ]
     74                [(#SAISIE{selection,maptype,
     75                        label=<:gis:cfg_lbl_maptype:>,
     76                        cacher_option_intro=oui,
     77                        defaut=#GET{maptype_defaut},valeur_forcee=#GET{maptype_force},readonly=#GET{maptype_readonly},disable=#GET{maptype_disable},explication=#GET{maptype_explications},
     78                        datas=#GET{maptypes}})]
    5379
    5480                [(#SAISIE{oui_non,geocoder,
     
    106132                map = new mxn.Mapstraction(map_container,'[(#REM|gis_api_utilisee)]');
    107133                map.setCenterAndZoom(new mxn.LatLonPoint(#ENV{lat,0},#ENV{lon,0}),#ENV{zoom,0});
    108                
     134        map.setMapType([mxn.Mapstraction.(#REM|gis_maptype_utilise)]);
     135
    109136                map.addControls({
    110137                        pan: true,
  • _plugins_/gis/trunk/gis_fonctions.php

    r50487 r53804  
    144144        }
    145145}
     146
     147/**
     148 * Définition du fond cartographique à utiliser en prenant compte les defines
     149 */
     150function gis_maptype_utilise(){
     151        $defaut = 'ROAD';
     152        if(defined('_GIS_MAPTYPES_FORCE')){
     153                return _GIS_MAPTYPES_FORCE;
     154        }else{
     155                if(defined('_GIS_MAPTYPES_DEFAUT')){
     156                        $defaut = _GIS_MAPTYPES_DEFAUT;
     157                }
     158                $config = @unserialize($GLOBALS['meta']['gis']);
     159                return $config['maptype'] ? $config['maptype'] : $defaut;
     160        }
     161}
    146162?>
  • _plugins_/gis/trunk/lang/gis_en.php

    r51468 r53804  
    4040        'cfg_lbl_geocoder' => 'Geocoder',
    4141        'cfg_lbl_geolocaliser_user_html5' => 'At the creation step, center the map on the location of the user',
     42    'cfg_lbl_maptype' => 'Cartografic background',
     43    'cfg_lbl_maptype_carte' => 'Road',
     44    'cfg_lbl_maptype_satellite' => 'Satellite',
     45    'cfg_lbl_maptype_hybride' => 'Hybrid',
     46    'cfg_lbl_maptype_relief' => 'Physical',
    4247        'cfg_titre_gis' => 'GIS',
    4348
     
    4853        'editer_gis_titre' => 'The geolocated points',
    4954        'erreur_recherche_pas_resultats' => 'No point corresponds to the searched text.',
    50         'explication_api_forcee' => 'L\'API est imposée par un autre plugin ou squelette.', # NEW
     55        'explication_api_forcee' => 'This API has been enforced by another plugin or template.',
     56        'explication_maptype_force' => 'This cartographic background has been enforced by another plugin or template.',
    5157
    5258        // F
  • _plugins_/gis/trunk/lang/gis_es.php

    r53510 r53804  
    4040        'cfg_lbl_geocoder' => 'Geocoder',
    4141        'cfg_lbl_geolocaliser_user_html5' => 'Centrar el mapa sobre la ubicaci&oacute;n del usuario a la creaci&oacute;n',
     42        'cfg_lbl_maptype' => 'Fondo cartográfico',
     43        'cfg_lbl_maptype_carte' => 'Mapa base',
     44        'cfg_lbl_maptype_satellite' => 'Satelital',
     45        'cfg_lbl_maptype_hybride' => 'Híbrido',
     46        'cfg_lbl_maptype_relief' => 'Relieve',
    4247        'cfg_titre_gis' => 'GIS',
    4348
     
    4954        'erreur_recherche_pas_resultats' => 'Ning&uacute;n punto corresponde a la b&uacute;squeda.',
    5055        'explication_api_forcee' => 'La API esta impuesta por un otro plugin o esqueleto.',
     56        'explication_maptype_force' => 'El fondo cartográfico esta impuesto por un otro plugin o esqueleto.',
    5157
    5258        // F
  • _plugins_/gis/trunk/lang/gis_fr.php

    r51277 r53804  
    3838        'cfg_lbl_geocoder' => 'Geocoder',
    3939        'cfg_lbl_geolocaliser_user_html5' => 'Centrer la carte sur l\'emplacement de l\'utilisateur &agrave; la cr&eacute;ation',
     40        'cfg_lbl_maptype' => 'Fond cartographique',
     41        'cfg_lbl_maptype_carte' => 'Carte',
     42        'cfg_lbl_maptype_satellite' => 'Satellite',
     43        'cfg_lbl_maptype_hybride' => 'Hybride',
     44        'cfg_lbl_maptype_relief' => 'Relief',
    4045        'cfg_titre_gis' => 'GIS',
    4146
     
    4752        'erreur_recherche_pas_resultats' => 'Aucun point ne correspond &agrave; la recherche.',
    4853        'explication_api_forcee' => 'L\'API est imposée par un autre plugin ou squelette.',
     54        'explication_maptype_force' => 'Le fond cartographique est imposé par un autre plugin ou squelette.',
    4955
    5056        // F
  • _plugins_/gis/trunk/lang/gis_sk.php

    r51468 r53804  
    4040        'cfg_lbl_geocoder' => 'Geocoder',
    4141        'cfg_lbl_geolocaliser_user_html5' => 'Pri vytváraní vycentrujte mapu na polohe používateľa',
     42    'cfg_lbl_maptype' => 'Fond cartographique', # NEW
     43    'cfg_lbl_maptype_carte' => 'Carte', # NEW
     44    'cfg_lbl_maptype_satellite' => 'Satellite', # NEW
     45    'cfg_lbl_maptype_hybride' => 'Hybride', # NEW
     46    'cfg_lbl_maptype_relief' => 'Relief', # NEW
    4247        'cfg_titre_gis' => 'GIS',
    4348
     
    4954        'erreur_recherche_pas_resultats' => 'Vyhľadávaného textu sa netýka žiaden bod.',
    5055        'explication_api_forcee' => 'L\'API est imposée par un autre plugin ou squelette.', # NEW
     56        'explication_maptype_force' => 'Le fond cartographique est imposé par un autre plugin ou squelette.', # NEW
    5157
    5258        // F
  • _plugins_/gis/trunk/modeles/carte_gis.html

    r53774 r53804  
    9797                ]
    9898
     99                [(#SET{maptype, #REM|gis_maptype_utilise})]
    99100                [(#ENV{type}|oui)
    100                 #SET{type,ROAD}
    101                 [(#ENV{type}|=={'carte'}|oui) #SET{type,ROAD} ]
    102                 [(#ENV{type}|=={'satellite'}|oui) #SET{type,SATELLITE} ]
    103                 [(#ENV{type}|=={'hybride'}|oui) #SET{type,HYBRID} ]
    104                 [(#ENV{type}|=={'relief'}|oui) #SET{type,PHYSICAL} ]
    105                 map[(#GET{id})].setMapType([mxn.Mapstraction.(#GET{type})]);
     101                [(#ENV{type}|=={'carte'}|oui) #SET{maptype,ROAD} ]
     102                [(#ENV{type}|=={'satellite'}|oui) #SET{maptype,SATELLITE} ]
     103                [(#ENV{type}|=={'hybride'}|oui) #SET{maptype,HYBRID} ]
     104                [(#ENV{type}|=={'relief'}|oui) #SET{maptype,PHYSICAL} ]
    106105                ]
     106                map[(#GET{id})].setMapType([mxn.Mapstraction.(#GET{maptype})]);
    107107
    108108                [(#ENV{no_control,#ENV{aucun_controle}}|!={oui}|oui)
  • _plugins_/gis/trunk/modeles/carte_gis_preview.html

    r53674 r53804  
    1313                var marker;
    1414                map_preview = new mxn.Mapstraction(map_preview_container,'[(#REM|gis_api_utilisee)]');
     15                map_preview.setMapType([mxn.Mapstraction.(#REM|gis_maptype_utilise)]);
    1516               
    1617                map_preview.addControls({
  • _plugins_/gis/trunk/saisies/carte.html

    r53628 r53804  
    6666                form_map = new mxn.Mapstraction(map_container,'[(#REM|gis_api_utilisee)]');
    6767                form_map.setCenterAndZoom(new mxn.LatLonPoint(#ENV{lat,#CONFIG{gis/lat,0}},#ENV{lon,#CONFIG{gis/lon,0}}),#ENV{zoom,#CONFIG{gis/zoom,0}});
     68                form_map.setMapType([mxn.Mapstraction.(#REM|gis_maptype_utilise)]);
    6869                form_map.addControls({
    6970                        pan: true,
Note: See TracChangeset for help on using the changeset viewer.