//funciones para interactuar con los mapas de Google
function iconoPrincipal()
{
	//Creamos el icon por defecto//
	icono = new GIcon();
	icono.image = pathRoot+"/img/gmaps/icono.png";
	icono.shadow = pathRoot+"/img/gmaps/sombra.png";
	icono.iconSize = new GSize(40, 40);
	icono.shadowSize = new GSize(41, 35);
	icono.iconAnchor = new GPoint(5, 40);
	icono.infoWindowAnchor = new GPoint(15, 1);
	return icono;
}

//// funcion que crea cada marca y activa el evento correspondiente para posicionarlo ///////		
function addMarcaEditable(point,icono)
{		
	oficina = new GMarker(point,{draggable: true,icon:icono});//establecemos que tenemos la oficina situada en el mapa
		
	GEvent.addListener(oficina, "mouseover", function(){	
		oficina.setImage(pathRoot+"/img/gmaps/icono2.png");	
	});//resaltamos icono
	
	GEvent.addListener(oficina, "mouseout", function(){		
		oficina.setImage(pathRoot+"/img/gmaps/icono.png");		
	});
	
	GEvent.addListener(oficina, "dragend", function(){		
		//obtenemos coordenadas
			pos=oficina.getPoint(); 
			vLat.value=pos.lat(); 
			vLong.value=pos.lng();
	});
			
	// crea el punto sobre el mapa (addOverlay)	
			map.addOverlay(oficina);
	
	//mostramos enlace para centrar la oficina
	showDiv("lnkCentOf");
}
//// funcion que crea cada marca y la situa en el mapa (no se puede modificar) ///////		
function addMarca(point,icono)
{		
	oficina = new GMarker(point,{icon:icono});//establecemos que tenemos la oficina situada en el mapa
		
	GEvent.addListener(oficina, "mouseover", function(){	
		oficina.setImage(pathRoot+"/img/gmaps/icono2.png");	
	});//resaltamos icono
	
	GEvent.addListener(oficina, "mouseout", function(){		
		oficina.setImage(pathRoot+"/img/gmaps/icono.png");		
	});
				
	// crea el punto sobre el mapa (addOverlay)	
			map.addOverlay(oficina);
	
	//mostramos enlace para centrar la oficina
	showDiv("lnkCentOf");
}

function clickSobreMapa(point,icono)
{
	if(oficina)
	{	
		oficina.setLatLng(point);
	}
	else addMarcaEditable(point,icono);
	
	vLat.value=point.lat(); 
	vLong.value=point.lng();
}
function centrarMapa(lat,long,zoom)
{
	var centroMapa= new GLatLng(lat,long,zoom); 	
	map.setCenter(centroMapa);
	map.setZoom(zoom);
}
function centrarOficina()
{
	centrarMapa(document.getElementById("clat").value,document.getElementById("clong").value,15);
}
//centra el mapa segun la provincia elegida
function provToMap(id)
{	
	var p= new Array();
	 p[2]=9; //Zoom
	switch(id){
		case "1": p[0]=42.88200212690442; p[1]=-2.54058837890625; break; //Álava
		case "2": p[0]=39.01064750994083; p[1]=-1.82098388671875; break; //Albacete
		case "3": p[0]=38.69194132204093; p[1]=-0.692138671875; break; //Alicante
		case "4": p[0]=37.228141500433615; p[1]=-2.4664306640625; break; //Almería
		case "5": p[0]=43.21718664827096; p[1]=-5.8392333984375; break; //Asturias
		case "6": p[0]=40.67438908251788; p[1]=-4.70489501953125; break; //Ávila
		case "7": p[0]=38.91240739487225; p[1]=-6.976318359375; break; //Badajoz
		case "8": p[0]=41.54353338440556; p[1]=1.91436767578125; break; //Barcelona
		case "9": p[0]=42.35448465106744; p[1]=-3.71612548828125; break; //Burgos
		case "10": p[0]=39.482845404533336; p[1]=-6.3995361328125; break; //Cáceres
		case "11": p[0]=36.58465761247169; p[1]=-5.77056884765625; break; //Cádiz
		case "12": p[0]=43.229195113965005; p[1]=-3.83697509765625; break; //Cantabria
		case "13": p[0]=40.20614809577503; p[1]=-0.21148681640625; break; //Castellón
		case "14": p[0]=35.88459964717596; p[1]=-5.42449951171875; break; //Ceuta
		case "15": p[0]=39.01064750994083; p[1]=-3.85894775390625; break; //Ciudad Real
		case "16": p[0]=37.90953361677018; p[1]=-4.73785400390625; break; //Córdoba
		case "17": p[0]=43.393073720674415; p[1]=-8.3770751953125; break; //Coruña, A
		case "18": p[0]=40.157885249506506; p[1]=-2.20001220703125; break; //Cuenca
		case "19": p[0]=42.01052981889534; p[1]=2.50213623046875; break; //Girona
		case "20": p[0]=37.21501884556323; p[1]=-3.636474609375; break; //Granada
		case "21": p[0]=40.63479884404164; p[1]=-3.13934326171875; break; //Guadalajara
		case "22": p[0]=43.32118142926661; p[1]=-1.97479248046875; break; //Guipúzcoa
		case "23": p[0]=37.622933594900864; p[1]=-6.73187255859375; break; //Huelva
		case "24": p[0]=41.9921602333763; p[1]=-0.08514404296875; break; //Huesca
		case "25": p[0]=39.436192999314066; p[1]=2.39501953125; p[2]=7; break; //Illes Balears
		case "26": p[0]=37.8813571797486; p[1]=-3.7957763671875; break; //Jaén
		case "27": p[0]=42.60970621339408; p[1]=-5.5316162109375; break; //León
		case "28": p[0]=41.63392025225949; p[1]=0.59600830078125; break; //Lleida
		case "29": p[0]=43.01268088642034; p[1]=-7.5421142578125; break; //Lugo
		case "30": p[0]=40.41767833585549; p[1]=-3.69964599609375; break; //Madrid
		case "31": p[0]=37.04202441635081; p[1]=-4.6307373046875; break; //Málaga
		case "32": p[0]=35.20523334751453; p[1]=-2.99652099609375; break; //Melilla
		case "33": p[0]=37.96801944035648; p[1]=-1.42822265625; break; //Murcia
		case "34": p[0]=42.8215952943695; p[1]=-1.63970947265625; break; //Navarra
		case "35": p[0]=42.35042512243457; p[1]=-7.88818359375; break; //Ourense
		case "36": p[0]=42.02481360781777; p[1]=-4.51812744140625; break; //Palencia
		case "37": p[0]=28.63756808932784; p[1]=-14.7161865234375; p[2]=8; break; //Palmas, Las
		case "38": p[0]=42.4923525914282; p[1]=-8.5968017578125; break; //Pontevedra
		case "39": p[0]=42.459940352216556; p[1]=-2.43621826171875; break; //Rioja, La
		case "40": p[0]=40.97575093157534; p[1]=-5.66619873046875; break; //Salamanca
		case "41": p[0]=28.37690204653979; p[1]=-17.1112060546875; p[2]=8; break; //Santa Cruz de Tenerife
		case "42": p[0]=40.95708558389897; p[1]=-4.11163330078125; break; //Segovia
		case "43": p[0]=37.4530574713902; p[1]=-5.74859619140625; break; //Sevilla
		case "44": p[0]=41.7672146942102; p[1]=-2.47467041015625; break; //Soria
		case "45": p[0]=41.11453808726831; p[1]=0.8294677734375; break; //Tarragona
		case "46": p[0]=40.72228267283148; p[1]=-0.71136474609375; break; //Teruel
		case "47": p[0]=39.842286020743394; p[1]=-3.98529052734375; break; //Toledo
		case "48": p[0]=39.36190883564925; p[1]=-0.73883056640625; break; //Valencia
		case "49": p[0]=41.65649719441145; p[1]=-4.75433349609375; break; //Valladolid
		case "50": p[0]=43.28920196020124; p[1]=-2.87567138671875; break; //Vizcaya
		case "51": p[0]=41.529141988723104; p[1]=-5.74859619140625; break; //Zamora
		case "52": p[0]=41.644183479397455; p[1]=-0.92559814453125; break; //Zaragoza
		default: p=false; return true;
	}
	if(p) { centrarMapa(p[0],p[1],p[2]);}
}

