//<![CDATA[	

// Funciones comunes	

function loadControls(map)
{
}

function loadControlsAdmin(map)
{
	map.addControl(new GLargeMapControl());
}


//Centra la vista del mapa
function loadMapCenter(map, lat, lng, zoom, vista)
{		
	map.setCenter(new GLatLng(lat,lng),zoom);
	map.setMapType(vista); 
}

function loadMarker(map, lat, lng, html, info)
{
	var point = new GLatLng(lat,lng);
	switch(info)
	{
		case 4:
			var marker = createMarker(point,html,"icon31","pal3"); 
			break;
		case 5:
			var marker = createMarker(point,html,"icon43","pal3"); 
			break;
		default:
			var marker = createMarker(point,html,"","");
			break;
	}	
	map.addOverlay(marker);	
}


function loadActiveMarker(map, lat, lng, html, info)
{		
	var point = new GLatLng(lat,lng);
	map.closeInfoWindow(); 
	switch (info)
	{
		case 4:
			var marker = createMarker(point, html, "icon23", "pal3");
			map.addOverlay(marker);
			if (html.length != 0)
				marker.openInfoWindowHtml(html);
			break;
		case 5:
			var marker = createMarker(point, html, "icon35", "pal3");
			map.addOverlay(marker);	
			if(html.length != 0)
				marker.openInfoWindowHtml(html);
			break;
		default:
			var marker = createMarker(point, html, "", "");
			map.addOverlay(marker);	
			break;
	}
}

//Crea los markers
function createMarker(point, html, ico, col) 
{		
	var baseIcon = new GIcon();
	baseIcon.iconSize = new GSize(32, 32);
	baseIcon.shadowSize = new GSize(56, 32);
	baseIcon.iconAnchor = new GPoint(16, 32);
	baseIcon.infoWindowAnchor = new GPoint(16, 0);

	var icono = new GIcon(baseIcon, "http://maps.google.com/mapfiles/kml/"+col+"/"+ico+".png", null, "http://maps.google.com/mapfiles/kml/"+col+"/"+ico+"s.png");
	if (ico.length == 0)
		var marker = new GMarker(point, G_DEFAULT_ICON);
	else
		var marker = new GMarker(point, icono);
	GEvent.addListener(marker, "click", function()
	{
		if (html.length != 0)
			marker.openInfoWindowHtml(html);
	});		
	
	return marker;
}
	
function createPolylines(map, lng1, lat1, lng2, lat2)
{
	var polyline = new GPolyline([new GPoint(lng1, lat1), new GPoint(lng2, lat2)], "#ff0000", 3, 0.6); 
	map.addOverlay(polyline); 
}

// Funciones para administracion
function defineMarker(map)
{
	GEvent.addListener(map, "click", function(marker, point) 
	{
		map.clearOverlays();
		var marker = createMarker(point, "", "", "")
		map.addOverlay(marker);
		document.getElementById("UCLocalizacion_txtLatitud").value = point.lat();
		document.getElementById("UCLocalizacion_txtLongitud").value = point.lng();
	});
}
	
function definePolylines(map)
{
	GEvent.addListener(map, "click", function(marker, point) 
	{
		var marker = createMarker(point, "", "", "")
		map.addOverlay(marker);
		points.push(point);
		var poly = new GPolyline(points, "#ff0000", 3, 0.6); 
		map.addOverlay(poly); 			
		document.getElementById("UCLocalizacion_txtSuperficie").value += point.lat()+" , "+point.lng()+" , ";
	});
}
	
function deletePolylines()
{
	points = [];
	map.clearOverlays();	
	document.getElementById("UCLocalizacion_txtSuperficie").value ="";
}



//Activa y desactiva los estilos de visualizacion
function activarEstilos(enlace)
{
	try
	{
		switch(enlace)
		{
			case "G_SATELLITE_TYPE":
				document.getElementById(enlace).className = "solactiva";
				document.getElementById("G_MAP_TYPE").className = "solnoactiva";
				document.getElementById("G_HYBRID_TYPE").className = "solnoactiva";
				break;
			case "G_MAP_TYPE":
				document.getElementById(enlace).className = "solactiva";
				document.getElementById("G_SATELLITE_TYPE").className = "solnoactiva";
				document.getElementById("G_HYBRID_TYPE").className = "solnoactiva";
				break;
			case "G_HYBRID_TYPE":
				document.getElementById(enlace).className = "solactiva";
				document.getElementById("G_SATELLITE_TYPE").className = "solnoactiva";
				document.getElementById("G_MAP_TYPE").className = "solnoactiva";
				break;
		}
	}
	catch(e) {}
}

function cambiarVista(modo)
{
	try
	{
		switch(modo)
		{
			case "G_SATELLITE_TYPE":
				map.setMapType(G_SATELLITE_TYPE)
				break;
			case "G_MAP_TYPE":
				map.setMapType(G_MAP_TYPE)
				break;
			case "G_HYBRID_TYPE":
				map.setMapType(G_HYBRID_TYPE)
				break;
		}
	}
	catch(e) {}
}


//]]>

