Changeset 21333 in spip-zone


Ignore:
Timestamp:
Jul 7, 2008, 5:01:20 PM (11 years ago)
Author:
horaciogd@…
Message:

Open Street Maps by default in Open Layers Plugin

Location:
_plugins_/_dev_/open_layers
Files:
2 added
4 deleted
7 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/_dev_/open_layers/inc/openlayer_append_clicable_map.php

    r21145 r21333  
    5858
    5959                trigger: function(e) {
    60                         var lonlat = map.getLonLatFromViewPortPx(e.xy);
     60                    var lonlat = map.getLonLatFromViewPortPx(e.xy);
    6161                    var zoom = map.getZoom();
    6262                    markers.destroy();
    6363                    markers = new OpenLayers.Layer.Markers("Markers");
    64                                         map.addLayer(markers);
    65                         var marcador = new OpenLayers.Marker(lonlat, icon);
    66                                         markers.addMarker(marcador);
    67                                         jQuery("#'.$target_lat_id.'").val(lonlat.lat);
    68                         jQuery("#'.$target_long_id.'").val(lonlat.lon);'
    69                         . ($target_zoom_id?'jQuery("#'.$target_zoom_id.'").val(zoom);':'') .
    70                                         'map.setCenter(lonlat);
     64                    map.addLayer(markers);
     65                    var marcador = new OpenLayers.Marker(lonlat, icon);
     66                    markers.addMarker(marcador);
     67                    jQuery("#'.$target_lat_id.'").val(lonlat.fromDisplayToData().lat);
     68                    jQuery("#'.$target_long_id.'").val(lonlat.fromDisplayToData().lon);'
     69                    . ($target_zoom_id?'jQuery("#'.$target_zoom_id.'").val(zoom);':'') .
     70                    'map.setCenter(lonlat);
    7171                }
    7272
    7373        });
    7474        function init(){
    75             map = new OpenLayers.Map(\''.$target_id.'\');
     75            map = new OpenLayers.Map("'.$target_id.'",{
     76                maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
     77                numZoomLevels: 19,
     78                maxResolution: 156543.0399,
     79                units: "m",
     80                projection: new OpenLayers.Projection("EPSG:900913"),
     81                displayProjection: new OpenLayers.Projection("EPSG:4326")
     82            });
    7683            var lon = '.$view_long.';
    7784            var lat = '.$view_lat.';
     
    8390                {layers: \'basic\'}
    8491            );
    85             map.addLayer(wms);
     92            var nasa = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
     93                "http://t1.hypercube.telascience.org/cgi-bin/landsat7",
     94                {layers: "landsat7"}
     95            );
     96            var osm = new OpenLayers.Layer.OSM.Osmarender("Osmarender");
     97            map.addLayers([osm, nasa, wms]);
    8698            map.zoomTo(zoom);
    87             map.setCenter(lonlat);
     99            map.setCenter(lonlat.fromDataToDisplay());
    88100            markers = new OpenLayers.Layer.Markers("Markers");
    89                         map.addLayer(markers);
    90                         var size = new OpenLayers.Size(20,34);
    91                         var calculateOffset = function(size) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
    92                         icon = new OpenLayers.Icon(
    93                                                 \''._DIR_PLUGIN_OPENLAYER.'img_pack/correxir.png\',
    94                                                 size,
    95                                                 null,
    96                                                 calculateOffset
    97                                         );'
    98             . ($Marker?'var marcador = new OpenLayers.Marker(lonlat, icon);
     101            map.addLayer(markers);
     102            var size = new OpenLayers.Size(20,34);
     103            var calculateOffset = function(size) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
     104            icon = new OpenLayers.Icon(
     105                \''._DIR_PLUGIN_OPENLAYER.'img_pack/correxir.png\',
     106                size,
     107                null,
     108                calculateOffset
     109            );
     110            '. ($Marker?'var marcador = new OpenLayers.Marker(lonlat.fromDataToDisplay(), icon);
    99111            markers.addMarker(marcador);':'').'
     112            map.addControl(new OpenLayers.Control.LayerSwitcher());
    100113            var click = new OpenLayers.Control.Click();
    101114            map.addControl(click);
  • _plugins_/_dev_/open_layers/inc/openlayer_append_mini_map.php

    r21145 r21333  
    6565                        var marcador = new OpenLayers.Marker(lonlat, icon);
    6666                                        markers.addMarker(marcador);
    67                                         jQuery(\'#'.$target_lat_id.'\').val(lonlat.lat);
    68                         jQuery(\'#'.$target_long_id.'\').val(lonlat.lon);'
    69                         . ($target_zoom_id?'jQuery(\'#'.$target_zoom_id.'\').val(zoom);':'') .
     67                                        jQuery("#'.$target_lat_id.'").val(lonlat.fromDisplayToData().lat);
     68                        jQuery("#'.$target_long_id.'").val(lonlat.fromDisplayToData().lon);'
     69                        . ($target_zoom_id?'jQuery("#'.$target_zoom_id.'").val(zoom);':'') .
    7070                                        'map.setCenter(lonlat);
    7171                }
     
    7373        });
    7474        function init(){
    75             map = new OpenLayers.Map(\''.$target_id.'\');
     75            map = new OpenLayers.Map("'.$target_id.'",{
     76                maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
     77                numZoomLevels: 19,
     78                maxResolution: 156543.0399,
     79                units: "m",
     80                projection: new OpenLayers.Projection("EPSG:900913"),
     81                displayProjection: new OpenLayers.Projection("EPSG:4326")
     82            });
    7683            var lon = '.$view_long.';
    7784            var lat = '.$view_lat.';
     
    8390                {layers: \'basic\'}
    8491            );
    85             map.addLayer(wms);
     92            var nasa = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
     93                "http://t1.hypercube.telascience.org/cgi-bin/landsat7",
     94                {layers: "landsat7"}
     95            );
     96            var osm = new OpenLayers.Layer.OSM.Osmarender("Osmarender");
     97            map.addLayers([osm, nasa, wms]);
    8698            map.zoomTo(zoom);
    87             map.setCenter(lonlat);
     99            map.setCenter(lonlat.fromDataToDisplay());
    88100            markers = new OpenLayers.Layer.Markers("Markers");
    89                         map.addLayer(markers);
    90                         var size = new OpenLayers.Size(20,34);
    91                         var calculateOffset = function(size) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
    92                         icon = new OpenLayers.Icon(
    93                                                 \''._DIR_PLUGIN_OPENLAYER.'img_pack/correxir.png\',
    94                                                 size,
    95                                                 null,
    96                                                 calculateOffset
    97                                         );'
    98             . ($Marker?'var marcador = new OpenLayers.Marker(lonlat, icon);
     101            map.addLayer(markers);
     102            var size = new OpenLayers.Size(20,34);
     103            var calculateOffset = function(size) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
     104            icon = new OpenLayers.Icon(
     105                "'._DIR_PLUGIN_OPENLAYER.'img_pack/correxir.png",
     106                size,
     107                null,
     108                calculateOffset
     109            );
     110            '. ($Marker?'var marcador = new OpenLayers.Marker(lonlat.fromDataToDisplay(), icon);
    99111            markers.addMarker(marcador);':'').'
     112            map.addControl(new OpenLayers.Control.LayerSwitcher());
    100113            var click = new OpenLayers.Control.Click();
    101114            map.addControl(click);
  • _plugins_/_dev_/open_layers/inc/openlayer_append_moveend_map.php

    r21145 r21333  
    6060                        var lonlat = map.getCenter();
    6161                        var zoom = map.getZoom();
    62                         jQuery(\'#'.$target_lat_id.'\').val(lonlat.lat);
    63                         jQuery(\'#'.$target_long_id.'\').val(lonlat.lon);
    64                         jQuery(\'#'.$target_zoom_id.'\').val(zoom);
     62                        jQuery("#'.$target_lat_id.'").val(lonlat.fromDisplayToData().lat);
     63                        jQuery("#'.$target_long_id.'").val(lonlat.fromDisplayToData().lon);
     64                        jQuery("#'.$target_zoom_id.'").val(zoom);
    6565                }
    6666
    6767        });
    6868        function init(){
    69             map = new OpenLayers.Map(\''.$target_id.'\');
     69            map = new OpenLayers.Map("'.$target_id.'",{
     70                maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
     71                numZoomLevels: 19,
     72                maxResolution: 156543.0399,
     73                units: "m",
     74                projection: new OpenLayers.Projection("EPSG:900913"),
     75                displayProjection: new OpenLayers.Projection("EPSG:4326")
     76            });
    7077            var lon = '.$view_long.';
    7178            var lat = '.$view_lat.';
     
    7784                {layers: \'basic\'}
    7885            );
    79             map.addLayer(wms);
     86            var nasa = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
     87                "http://t1.hypercube.telascience.org/cgi-bin/landsat7",
     88                {layers: "landsat7"}
     89            );
     90            var osm = new OpenLayers.Layer.OSM.Osmarender("Osmarender");
     91            map.addLayers([osm, nasa, wms]);
    8092            map.zoomTo(zoom);
    81             map.setCenter(lonlat);
     93            map.setCenter(lonlat.fromDataToDisplay());
     94            map.addControl(new OpenLayers.Control.LayerSwitcher());
    8295            var click = new OpenLayers.Control.Click();
    8396            map.addControl(click);
  • _plugins_/_dev_/open_layers/inc/openlayer_append_view_map.php

    r21145 r21333  
    3636        var viewMapMarkers  = null;
    3737        function initViewMap(){
    38             viewMap = new OpenLayers.Map(\''.$target_id.'\', { controls: [] });
     38            viewMap = new OpenLayers.Map("'.$target_id.'",{
     39                controls: [new OpenLayers.Control.LayerSwitcher()],
     40                maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
     41                numZoomLevels: 19,
     42                maxResolution: 156543.0399,
     43                units: "m",
     44                projection: new OpenLayers.Projection("EPSG:900913"),
     45                displayProjection: new OpenLayers.Projection("EPSG:4326")
     46            });
    3947            var lon = '.$view_long.';
    4048            var lat = '.$view_lat.';
     
    4654                {layers: \'basic\'}
    4755            );
    48             viewMap.addLayer(wms);
     56            var nasa = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
     57                "http://t1.hypercube.telascience.org/cgi-bin/landsat7",
     58                {layers: "landsat7"}
     59            );
     60            var osm = new OpenLayers.Layer.OSM.Osmarender("Osmarender");
     61            viewMap.addLayers([osm, nasa, wms]);
    4962            viewMap.zoomTo(zoom);
    50             viewMap.setCenter(lonlat);
     63            viewMap.setCenter(lonlat.fromDataToDisplay());
    5164            viewMapMarkers = new OpenLayers.Layer.Markers("Markers");
    5265                        viewMap.addLayer(viewMapMarkers);
     
    6275                        calculateOffset = function(size) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
    6376                        icon = new OpenLayers.Icon(
    64                                                 \'/IMG/'.$view_icon.'\',
     77                                                "/IMG/'.$view_icon.'",
    6578                                                size,
    6679                                                null,
     
    7285                        calculateOffset = function(size) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
    7386                        icon = new OpenLayers.Icon(
    74                                                 \''._DIR_PLUGIN_GEOMAP.'img_pack/correxir.png\',
     87                                                "'._DIR_PLUGIN_OPENLAYER.'img_pack/correxir.png",
    7588                                                size,
    7689                                                null,
     
    7992                        }
    8093                        $out .= '
    81                         marcador = new OpenLayers.Marker(lonlat, icon);
     94                        marcador = new OpenLayers.Marker(lonlat.fromDataToDisplay(), icon);
    8295            viewMapMarkers.addMarker(marcador);';
    8396                }
     
    89102        });
    90103    </script>';
    91         //por algunha razon o view map interfire co cliclable map en openlayers impedindo o funcionamento do cotrol que permite facer click
    92         //return $out;
     104        return $out;
    93105}
    94106?>
  • _plugins_/_dev_/open_layers/inc/openlayer_public_script_init.php

    r21145 r21333  
    1313
    1414function inc_openlayer_public_script_init_dist(){
    15         $out = '<script type="text/javascript" src="http://www.openlayers.org/api/OpenLayers.js"></script>';
     15        $out = '<script type="text/javascript" src="http://www.openlayers.org/api/OpenLayers.js"></script>
     16        <script type="text/javascript" src="'._DIR_PLUGIN_OPENLAYER.'js/openlayers.js"></script>
     17        <script type="text/javascript" src="http://openstreetmap.org/openlayers/OpenStreetMap.js"></script>';
    1618        return $out;
    1719}
  • _plugins_/_dev_/open_layers/inc/openlayer_script_init.php

    r21145 r21333  
    1515        static $deja_insere = false;
    1616        if ($deja_insere) return "";
    17         $out = '<script type="text/javascript" src="http://www.openlayers.org/api/OpenLayers.js"></script>';
     17        $out = '<script type="text/javascript" src="http://www.openlayers.org/api/OpenLayers.js"></script>
     18        <script type="text/javascript" src="'._DIR_PLUGIN_OPENLAYER.'js/openlayers.js"></script>
     19        <script type="text/javascript" src="http://openstreetmap.org/openlayers/OpenStreetMap.js"></script>';
    1820        return $out;
    1921}
  • _plugins_/_dev_/open_layers/inc_public_map.html

    r21195 r21333  
    11[(#SET{id_carte_gis,#ENV{id_carte_gis,1}})]
    22<script type="text/javascript">
    3         function extraerID(url){
    4                 var posicion = url.indexOf("article");
    5                 if (posicion != -1) {
    6                         url = url.substring(posicion + 7);
    7                         posicion = url.indexOf ("&");
    8                         if (posicion != -1) {
    9                                 url = url.substring(0,posicion);
    10                         }
    11                         //se non e un artigo de spip que lle dean
    12                 } else {
    13                         url = url.substring(url.length - 4);
    14                 }
    15                 return url;
    16         }
    17         function agregarMarcador (xmlItem, markerLayer, map) {
    18                 var xmlLat = $("geo_lat",xmlItem);
    19                 var xmlLng = $("geo_long",xmlItem);
    20                 var xmlSon = $("enclosure",xmlItem);
    21                 var popup = null;
    22                 if ((xmlLat.length == 0) || (xmlLng.length == 0)) return;
    23                 else {
    24                         var lat = parseFloat(xmlLat.text());
    25                         var lng = parseFloat(xmlLng.text());
    26                         var id = extraerID($("link",xmlItem).text());
    27                         var html = $("description",xmlItem).text();
    28                         var icon = $("geo_icon",xmlItem).text();
    29                         var son;
    30                         if (xmlSon.length != 0) son = xmlSon.attr("url");
    31                         var point = new OpenLayers.LonLat(lng,lat);
    32                         var size = new OpenLayers.Size(20,34);
    33                         var calculateOffset = function(size) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
    34                         var urlicon = (icon != "" ? icon : URLbase + "/gis/img_pack/correxir.png");
    35                         var icon = new OpenLayers.Icon(
    36                                 urlicon,
    37                                 size,
    38                                 null,
    39                                 calculateOffset
    40                         );
    41                         var marcador = new OpenLayers.Marker(point, icon);
    42                         marcador.events.register("mousedown", marcador, function mousedown(evt) {
    43                                 if (popup == null) {
    44                                         popup = new OpenLayers.Popup.FramedCloud("popup"+id, new OpenLayers.LonLat(lng,lat));
    45                                 popup.panMapIfOutOfView = true;
    46                                 popup.autoSize = true;
    47                                 popup.closeBox = true;
    48                                 popup.padding = 10;
    49                                 popup.contentDiv.style.overflow = 'visible';
    50                                 popup.setContentHTML(html);
    51                                         map.addPopup(popup);
    52                                 } else {
    53                         popup.toggle();
    54                                 }
    55                                 OpenLayers.Event.stop(evt);
    56                 });
    57                         markerLayer.addMarker(marcador);
    58                 }       
    59         }
    603        var URLbase = "[(#CHEMIN{plugins}|url_absolue)]";
    614        var map[(#GET{id_carte_gis})] = null;
     
    7013        #SET{zoommapa, #ENV{zoom,#CONFIG**{gis_default_zoom,0}}
    7114        <//B_centrado>
    72                
    7315        function init[(#GET{id_carte_gis})](){
    74                 map[(#GET{id_carte_gis})] = new OpenLayers.Map("map[(#GET{id_carte_gis})]");
     16                map[(#GET{id_carte_gis})] = new OpenLayers.Map("map[(#GET{id_carte_gis})]",{
     17                        maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
     18                        numZoomLevels: 19,
     19                        maxResolution: 156543.0399,
     20                        units: 'm',
     21                        projection: new OpenLayers.Projection("EPSG:900913"),
     22                        displayProjection: new OpenLayers.Projection("EPSG:4326")
     23                });
    7524                markers[(#GET{id_carte_gis})] = new OpenLayers.Layer.Markers("Markers");
    76                 map[(#GET{id_carte_gis})].addLayer(markers[(#GET{id_carte_gis})]);
    7725                var lon = #GET{lonxitude};
    7826                var lat = #GET{latitude};
    7927                var zoom = #ENV{zoom,#CONFIG**{gis_default_zoom,0}};
    8028                var lonlat = new OpenLayers.LonLat(lon, lat);
    81                 var wms = new OpenLayers.Layer.WMS(
     29                var nasa = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
     30                        "http://t1.hypercube.telascience.org/cgi-bin/landsat7",
     31                        {layers: "landsat7"}
     32                );
     33                var wms = new OpenLayers.Layer.WMS(
    8234                        "#EVAL{$map_wms_name = isset($GLOBALS['meta']['openlayer_wmsname'])?$GLOBALS['meta']['openlayer_wmsname']:'OpenLayers WMS';}",
    8335                        "#EVAL{$map_wms_url = isset($GLOBALS['meta']['openlayer_wmsurl'])?$GLOBALS['meta']['openlayer_wmsurl']:'http://labs.metacarta.com/wms/vmap0';}",
    8436                        {layers: 'basic'}
    8537                );
    86                 map[(#GET{id_carte_gis})].addLayer(wms);
     38                var osm = new OpenLayers.Layer.OSM.Osmarender("Osmarender");
     39                map[(#GET{id_carte_gis})].addLayers([osm, wms, nasa]);
     40                map[(#GET{id_carte_gis})].addLayer(markers[(#GET{id_carte_gis})]);
    8741                map[(#GET{id_carte_gis})].zoomTo(zoom);
    88                 map[(#GET{id_carte_gis})].setCenter(lonlat);
    89                
     42                map[(#GET{id_carte_gis})].setCenter(lonlat.fromDataToDisplay());
     43                map[(#GET{id_carte_gis})].addControl(new OpenLayers.Control.LayerSwitcher());
    9044        [(#ENV{recursive}|=={1}|?{' ',''})
    9145                jQuery.get('[(#URL_PAGE{rss-gis-recursive})]', {[limit:(#ENV{limit, 50})][, id_rubrique:(#ID_RUBRIQUE)][, id_parent:(#ID_RUBRIQUE)][, id_secteur:(#ID_SECTEUR)][, id_mot:(#ID_MOT)][, id_auteur:(#ID_AUTEUR)][, recherche:(#RECHERCHE)][, id_article:(#ID_ARTICLE)][, id_groupe:(#ID_GROUPE)]}, function(xml[(#GET{id_carte_gis})]){
     
    9347                jQuery.get('[(#URL_PAGE{rss-gis})]', {[limit:(#ENV{limit, 50})][, id_rubrique:(#ID_RUBRIQUE)][, id_secteur:(#ID_SECTEUR)][, id_mot:(#ID_MOT)][, id_auteur:(#ID_AUTEUR)][, recherche:(#RECHERCHE)][, id_article:(#ID_ARTICLE)][, id_groupe:(#ID_GROUPE)]}, function(xml[(#GET{id_carte_gis})]){
    9448        ]
    95                        
    9649                        jQuery("item", xml[(#GET{id_carte_gis})]).each(function(item[(#GET{id_carte_gis})]){
    9750                                var xmlItem[(#GET{id_carte_gis})] = xml[(#GET{id_carte_gis})].documentElement.getElementsByTagName("item")[item[(#GET{id_carte_gis})]];
    9851                                agregarMarcador(xmlItem[(#GET{id_carte_gis})], markers[(#GET{id_carte_gis})], map[(#GET{id_carte_gis})]);
    9952                        });
    100                 });     
     53                });
    10154        }
    10255        $(document).ready(function(){
Note: See TracChangeset for help on using the changeset viewer.