window.onload = f_load;

var gmap  = null;
var gico1 = new GIcon();
var gico2 = new GIcon();


function f_loadFlash(latitud,longitud,zoom) {
	if(GBrowserIsCompatible()) {
		var div = document.getElementById("gmap");
		
	    gico1.image = URLIcons + "icon_googlemaps.png";
		gico1.iconSize   = new GSize(21, 21);
		gico1.iconAnchor = new GPoint(20, 8);
		
	    gico2.image = URLIcons + "icon_googlemaps_roll.png";
		gico2.iconSize   = new GSize(21, 21);
		gico2.iconAnchor = new GPoint(20, 8);

		gmap = new GMap2(div);
		//gmap.setCenter(new GLatLng(40.11794, -2.9503423), 6);
		gmap.setCenter(new GLatLng(latitud, longitud), zoom);
		gmap.addControl(new GLargeMapControl());
		gmap.addControl(new GMapTypeControl());
		gmap.enableDoubleClickZoom();
		
		f_refresh();
	}
}


function f_load() {
	if(GBrowserIsCompatible()) {
		var div = document.getElementById("gmap");
		
	    gico1.image = URLIcons + "icon_googlemaps.png";
		gico1.iconSize   = new GSize(21, 21);
		gico1.iconAnchor = new GPoint(20, 8);
		
	    gico2.image = URLIcons + "icon_googlemaps_roll.png";
		gico2.iconSize   = new GSize(21, 21);
		gico2.iconAnchor = new GPoint(20, 8);

		gmap = new GMap2(div);
		gmap.setCenter(new GLatLng(40.11794, -2.9503423), 6);
		gmap.addControl(new GLargeMapControl());
		gmap.addControl(new GMapTypeControl());
		gmap.enableDoubleClickZoom();
		
		f_refresh();
	}
}

function f_refresh() {
	for(k in aPuntitos) {
		var lat = aPuntitos[k].GMapsLat;
		var lon = aPuntitos[k].GMapsLon;
		var gpnt  = new GLatLng(lat, lon);
		var gmrk1 = new GMarker(gpnt, gico1);
		var gmrk2 = new GMarker(gpnt, gico2);
		aPuntitos[k].key    = k;
		aPuntitos[k].pnt    = gpnt;
		aPuntitos[k].center = f_center;
		aPuntitos[k].mover  = f_mover;
		aPuntitos[k].mout   = f_mout;
		aPuntitos[k].mark1  = gmrk1;
		aPuntitos[k].mark2  = gmrk2;
		gmap.addOverlay(gmrk1);
		gmap.addOverlay(gmrk2);
		gmrk2.hide();
		GEvent.bind(gmrk1, "mouseover", aPuntitos[k], aPuntitos[k].mover);
		GEvent.bind(gmrk2, "mouseout",  aPuntitos[k], aPuntitos[k].mout);
		GEvent.bind(gmrk2, "click",     aPuntitos[k], aPuntitos[k].center);
	}
}

function f_center(k) {
  	var obj = null;
	if((typeof k)=="string") {
		for(key in aPuntitos) { if(key==k) { obj = aPuntitos[key]; } }
	} else {
		obj = this;
	}
	
    var sHtml = "";
    sHtml  = "<strong>" + obj.GMapsNom + "</strong><br/>";
    sHtml += obj.GMapsDir + "<br/>";
    if(obj.GMapsTel)   sHtml += obj.GMapsTel + "<br/>";
    if(obj.GMapsFax)   sHtml += obj.GMapsFax + "<br/>";
    if(obj.GMapsWeb)   sHtml += "<a href=\"" +  obj.GMapsWeb + "\" target=\"_blank\"/>" + obj.GMapsWeb +"</a><br/>";
    if(obj.GMapsEmail) sHtml += obj.GMapsEmail.replace("[a]","@") + "<br/>";
	
	var gp = obj.pnt;
	var giwo = new Object();
	giwo.maxWidth = 260;
	// gmap.setCenter(gp);
	gmap.openInfoWindowHtml(gp, sHtml, giwo);
	giw = gmap.getInfoWindow();
	return false;
}

function f_mover(k) {
  	var obj = null, ii = null;
	if((typeof k)=="string") {
        ii = document.getElementById("itemicon"+k);
		for(key in aPuntitos) { if(key==k) { obj = aPuntitos[key]; } }
	} else {
		obj = this;
        ii = document.getElementById("itemicon"+obj.key);
	}
	
    for(key in aPuntitos) { 
        aPuntitos[key].mark2.hide();
        aPuntitos[key].mark1.show();
    }
    obj.mark1.hide();
    obj.mark2.show();
    //ii.setAttribute("class", "sel");
    //ii.setAttribute("className", "sel");
}

function f_mout(k) {
  	var obj = null, ii = null;
	if((typeof k)=="string") {
        ii = document.getElementById("itemicon"+k);
		for(key in aPuntitos) { if(key==k) { obj = aPuntitos[key]; } }
	} else {
		obj = this;
        ii = document.getElementById("itemicon"+obj.key);
	}
	
    obj.mark1.show();
    obj.mark2.hide();
    //ii.setAttribute("class", "");
    //ii.setAttribute("className", "");
}

