//<![CDATA[ 

 var iconBlue = new GIcon(); 
   iconBlue.image = 'images/icono_map.png';
    iconBlue.shadow = 'images/shadow_icono_map.png';
    iconBlue.iconSize = new GSize(16, 16);
    iconBlue.shadowSize = new GSize(17, 17);
    iconBlue.iconAnchor = new GPoint(11, 16);
     iconBlue.infoWindowAnchor = new GPoint(10, 10);

   

    var customIcons = [];
    customIcons["isla"] = iconBlue;
  
 var map; 
   function load() {  
    if (GBrowserIsCompatible()) { 
   // Iniciamos el mapa   
     map = new GMap2(document.getElementById("map"));  
  var center = new GLatLng(28.430053, -16.094971);   
     map.setCenter(center, 7);  
  map.addControl(new GLargeMapControl());  
  // Aplicamos las restricciones   
 map._restricter = new TRestricter(map);   
 map._restricter.zoomLevels(7, 8);  
  map._restricter.restrict(new GLatLng(28.430053, -16.094971), new GLatLng(30.430053, -14.094971));
	
 

 GDownloadUrl("include/islas_phpsqlajax_genxml.php", function(data) {
  var xml = GXml.parse(data);
  var markers = xml.documentElement.getElementsByTagName("marker");
  for (var i = 0; i < markers.length; i++) {
    var name = (markers[i].getAttribute("name"));
    var type = markers[i].getAttribute("type");
	var html = markers[i].getAttribute("html");
	var isla = markers[i].getAttribute("isla");
var foto1 = markers[i].getAttribute("foto1");
var foto2 = markers[i].getAttribute("foto2");
var foto3 = markers[i].getAttribute("foto3");
    var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                            parseFloat(markers[i].getAttribute("lng")));
//(point,html1,html2,label1,label2)
    var marker = createTabbedMarker(point, type, foto1, foto2, foto3, name, html, 'Isla', 'Info');
     map.addOverlay(marker);
  }
});


      }
    }

    function createTabbedMarker(point, type, foto1, foto2, foto3, name, html, label1, label2) {
   var marker = new GMarker(point, customIcons[type]);
      var hhh = "<table><tr><td colspan=3><div class=\"cuadro_new\">" + name + "</div></td></tr><tr><td><div id=\"fotos_bubble_isla\">" + foto1 + "</div></td><td><div id=\"fotos_bubble_isla\">" + foto2 + "</div></td><td><div id=\"fotos_bubble_isla\">" + foto3 + "</div></td></tr></table>";
		var hhhg = "<div>" + html + "</div>";
       GEvent.addListener(marker, 'mouseover', function() {
        marker.openInfoWindowTabsHtml([new GInfoWindowTab(label1,hhh), new GInfoWindowTab(label2,hhhg)]);
      });
      return marker;
    }



 /******  TRestricter  **********************************************/ 
   // Constructor  
  TRestricter = function (map) {   
     this.map = map;   
 }   
 // Función que activa la limitación del desplazamiento   
 TRestricter.prototype.restrict = function (sw, ne) { 
       this.map._allowedBounds = new GLatLngBounds(sw, ne);   
     GEvent.addListener(this.map, 'move', this.checkBounds);  
  }   
 // Función que desactiva la limitación del desplazamiento 
   TRestricter.prototype.unrestrict = function () {    
    this.map._allowedBounds = null;  
  }   
 // Listener encargado de comprobar el desplazamiento   
 TRestricter.prototype.checkBounds = function() {   
         if (!this._allowedBounds || this._allowedBounds.contains(this.getCenter())) return;  
      var x = Math.min(Math.max(this.getCenter().lng(), this._allowedBounds.getSouthWest().lng()), this._allowedBounds.getNorthEast().lng());    
    var y = Math.min(Math.max(this.getCenter().lat(), this._allowedBounds.getSouthWest().lat()), this._allowedBounds.getNorthEast().lat());        
         this.setCenter(new GLatLng(y,x));  
  }   
 // Establece los límites de zoom del mapa 
   TRestricter.prototype.zoomLevels = function (min, max) {  
      var array = this.map.getMapTypes() || [];     
   for (var i=0; i<array.length; i++) {          
  array[i].getMinimumResolution = function () { return min };     
           array[i].getMaximumResolution = function () { return max };    
    } 
   }  
  //]]>  
