
// precarga imágenes

	var cache = 
	[ 
		"letras.png",
		"logo.png"
	];
	var img = [];
	for (var i=0; i<cache.length; i++)
	{
		img[i] = new Image;
		img[i].src = "http://thebiggestad.org/img/" + cache[i];
	}
	
// valores iniciales

	var posicion =
	[
		{ 
			nombre	: "SW",
			lat: 40.76785044388771,
			lng: -73.97892951965332,
			scale	: 17,
			video	: "aCxDZRJKkqY",
			texto	: "",
			foto	: "test.jpg"
		},
		{ 
			nombre	: "NE",
			lat		: 40.79006214334579,
			lng		: -73.96126985549927,
			scale	: 17,	
			video	: "aDoTh9VDJpk",
			texto	: "",
			foto	: "test.jpg"
		}
	];

	var lat = 40.77521183717103;
	var lng = -73.9712905883789;
	
	var scale = 16;
	
	var geocoder;
	
	var mapa;
	var map;
	var icon;
	
	var marcas = [];
	
// mapa init
	
	function mapa_init()
	{
		if (!GBrowserIsCompatible()) return;
		
		// geocoder
			
			geocoder = new GClientGeocoder();
		
		// map
			
			mapa = document.getElementById("mapa");
			map = new GMap2(mapa);
			map.addControl(new GLargeMapControl());
			//map.addControl(new GSmallMapControl());
			//map.addControl(new GMapTypeControl());
			map.setCenter(new GLatLng(lat, lng), scale, G_SATELLITE_MAP); 	// G_NORMAL_MAP | G_SATELLITE_MAP | G_HYBRID_MAP
			
			map.enableDoubleClickZoom();
			map.enableContinuousZoom();
		
		// thumbnail map
			
			var Tsize = new GSize(190, 150);
			map.addControl(new GOverviewMapControl(Tsize));

		// parche
		
			// pone las letras
			letrasOverlay = pon_parche(map,posicion[0].lat,posicion[0].lng,img[0]);

			// pone el logo
			logoOverlay = pon_parche(map,posicion[1].lat,posicion[1].lng,img[1]);
			
		// pone las marcas iniciales
			
			/*//
			for (var i=0; i<posicion.length; i++)
			{
				var point = new GLatLng(posicion[i].lat, posicion[i].lng);
				var mk = crea_marca(point,i);
				map.addOverlay(mk);
				marcas.push(mk);
			}
			//*/
			
		// pone el asterísco
		
			var asterisco = new GLatLng(40.78151631145502,-73.96991729736328);
			var marker = new GMarker(asterisco,{draggable:false});
			var html = "<img src='http://thebiggestad.org/img/legal.gif' width=300 height=300 border=0><br>";
			GEvent.addListener(marker, "click", function() { marker.openInfoWindowHtml(html); });
			map.addOverlay(marker);

		// centra el mapa y lo dibuja
		
			map.setCenter(new GLatLng(40.74745203753725,-73.99137496948242), scale-2, G_SATELLITE_MAP);

		// vuela hasta el centro de central park
		
			demonio = setInterval("vuela()",3000);
	}

/* ----------------- funciones internas ----------------- */


	function vuela()
	{
		if (map.isLoaded())
		{
			clearInterval(demonio);
			map.panTo(new GLatLng(lat,lng));
		}
	}

	function pon_parche(mapa,lat,lng,img)
	{
		var point1 = new GLatLng(lat,lng);
		var point1XY = mapa.fromLatLngToContainerPixel(point1);
		
		var point2 = map.fromDivPixelToLatLng(new GPoint((point1XY.x+img.width),(point1XY.y-img.height)));
		var point2XY = map.fromLatLngToContainerPixel(point2);
				
		var groundOverlay = new GGroundOverlay(img.src,new GLatLngBounds(point1, point2));
		mapa.addOverlay(groundOverlay);		
		
		return groundOverlay;
	}

	function crea_marca (point,n,texto) 
	{
		var marker = new GMarker(point,{draggable:true});
		
		var html = "<b>" + point + "</b>";
		if (texto) html += "<br/><br/>" + texto;
		
		if (n!=null) html = pon_html(n);
		
		GEvent.addListener (marker, "click", function() { marker.openInfoWindowHtml(html); });
		
		GEvent.addListener(marker, "dragstart", function() { map.closeInfoWindow(); });
		GEvent.addListener(marker, "dragend", 
			function() 
			{ 
				var pos = marker.getPoint();
				var lat = pos.lat();
				var lng = pos.lng();
				marker.openInfoWindowHtml
				(
					"lat: "+lat+",<br>lng: "+lng
				); 
			}
		); 	
		
		return marker;
	}
	
	function pon_html(n)
	{
		var html = "";
		
		html += "<div id=\"bocadillo\">";
			
			html += "<div id=\"bocadillo_imagen\">";
			
			if (posicion[n].video)
			{
				var cod = posicion[n].video;
				var ancho = 400;
				var alto = 325;
				html += "<br><object width=\""+ancho+"\" height=\""+alto+"\"><param name=\"movie\" value=\"http://www.youtube.com/v/"+cod+"\"></param><param name=\"wmode\" value=\"transparent\"></param><embed src=\"http://www.youtube.com/v/"+cod+"\" type=\"application/x-shockwave-flash\" wmode=\"transparent\" width=\""+ancho+"\" height=\""+alto+"\"></embed></object>";
			}
			else
				html += "<img src='img/"+posicion[n].foto+"'><br/>";
			
			html += "</div>";
			
			html += "<div id=\"bocadillo_texto\">";
			html += "<div id='bocadillo_descripcion'>"+posicion[n].texto+"<br/></div>";
			html += "</div>";
			
		html += "</div>";
		
		return html;
	}


