web/data/cubicweb.gmap.js
branchstable
changeset 8154 151058945234
parent 5774 0d792bceb25d
child 8163 f0a0bfc4a0c8
equal deleted inserted replaced
8153:e225e70239ed 8154:151058945234
    21             var map = new GMap2(wdgnode);
    21             var map = new GMap2(wdgnode);
    22             map.addControl(new GSmallMapControl());
    22             map.addControl(new GSmallMapControl());
    23             var jsonurl = wdgnode.getAttribute('cubicweb:loadurl');
    23             var jsonurl = wdgnode.getAttribute('cubicweb:loadurl');
    24             var self = this; // bind this to a local variable
    24             var self = this; // bind this to a local variable
    25             jQuery.getJSON(jsonurl, function(geodata) {
    25             jQuery.getJSON(jsonurl, function(geodata) {
       
    26                 var zoomLevel;
       
    27                 var center;
       
    28                 var latlngbounds = new GLatLngBounds( );
       
    29                 for (var i = 0; i < geodata.markers.length; i++) {
       
    30                     var marker = geodata.markers[i];
       
    31                     var latlng = new GLatLng(marker.latitude, marker.longitude);
       
    32                     latlngbounds.extend( latlng );
       
    33                 }
       
    34                 if (geodata.zoomlevel) {
       
    35                     zoomLevel = geodata.zoomlevel;
       
    36                 } else {
       
    37                     zoomLevel = map.getBoundsZoomLevel( latlngbounds ) - 1;
    26                 if (geodata.center) {
    38                 if (geodata.center) {
    27                     var zoomLevel = geodata.zoomlevel;
    39                     center = new GLatng(geodata.center.latitude, geodata.center.longitude);
    28                     map.setCenter(new GLatLng(geodata.center.latitude, geodata.center.longitude), zoomLevel);
    40                 } else {
       
    41                     center = latlngbounds.getCenter();
       
    42                 }
       
    43                 map.setCenter(center, zoomLevel);
    29                 }
    44                 }
    30                 for (var i = 0; i < geodata.markers.length; i++) {
    45                 for (var i = 0; i < geodata.markers.length; i++) {
    31                     var marker = geodata.markers[i];
    46                     var marker = geodata.markers[i];
    32                     self.createMarker(map, marker, i + 1, uselabel);
    47                     self.createMarker(map, marker, i + 1, uselabel);
    33                 }
    48                 }