var map;

function makeMap() 
{
	//http://maps.google.com/maps?f=q&hl=en&ll=34.815669,-78.843000
	
	map = new GMap(document.getElementById("map"));
	var main_Marker = new GPoint(-78.843000, 34.815669);
	map.addControl(new GSmallZoomControl());
	map.centerAndZoom(main_Marker, 4);
	
	var marker = createMarker(main_Marker, "<b>Camp Dixie</b><br />373 W Bladen Union Church Rd<br />Fayetteville, NC 28306",null, "Camp Dixie");
	//var marker = new GMarker(point);
	map.addOverlay(marker);
	
}

/*function makeNewMap(type) 
{
	map = new GMap(document.getElementById("map"));
	var main_Marker = new GPoint(-78.647150, 35.786440);
	map.addControl(new GSmallZoomControl());
	map.centerAndZoom(main_Marker, 5);
}*/

// Creates a marker whose info window displays the given number
function createMarker(point, info, icn, hover) 
{
	if(icn == "np")
	{
		var icon = new GIcon();
		icon.image = "../images/np.png";
		icon.shadow = "";
		icon.iconSize = new GSize(30, 30);
		icon.shadowSize = new GSize(22, 20);
		icon.iconAnchor = new GPoint(6, 20);
		icon.infoWindowAnchor = new GPoint(5, 1);
	}
	else if(icn == "person")
	{
		var icon = new GIcon();
		icon.image = "../images/man.png";
		icon.shadow = "";
		icon.iconSize = new GSize(24, 38);
		icon.shadowSize = new GSize(22, 20);
		icon.iconAnchor = new GPoint(6, 20);
		icon.infoWindowAnchor = new GPoint(5, 1);
	}
	else
	{
		icon = null;
	}
	
	var marker = new GxMarker(point, icon, hover);
	
	// Show this marker's index in the info window when it is clicked
	var html = info;
	GEvent.addListener(marker, "click", function() {
		marker.openInfoWindowHtml(html); } );

	return marker;
}

function updateMarker(string)
{
	map.clearOverlays();
	loadXml(string);
}

function loadXml(Str)
{
	//this reads out of the xml, and adds the longitude/latitude coordinates as markers.
	var request = GXmlHttp.create();
	//var request = new XMLHttpRequest();
	request.open("GET", "../utils/map.xml", true);
	request.onreadystatechange = function() {
		if (request.readyState == 4) 
		{
			var xmlDoc = request.responseXML;
			//alert(xmlDoc);
			if(xmlDoc != null)
			{
				var markers = xmlDoc.documentElement.getElementsByTagName("marker");
				for (var i = 0; i < markers.length; i++) 
				{
					var point = new GPoint(parseFloat(markers[i].getAttribute("lng")),
																 parseFloat(markers[i].getAttribute("lat")));
					var html = "<b>" + markers[i].getAttribute("name") + "</b>" + '<br>' +
										 markers[i].getAttribute("address1") + '<br>' +
										 markers[i].getAttribute("address2") + '<br>';
					var iconType = markers[i].getAttribute("icon");
					var hover = markers[i].getAttribute("hover");
					
					var type = markers[i].getAttribute("type");
					
					if(type == Str)
					{
						var marker = createMarker(point, html, iconType, hover);
						//var marker = new GMarker(point);
						map.addOverlay(marker);
					}
				}
			}
			else
			{
				alert("Error Streaming XML Doc");
			}
		}
	}
	request.send(null);
	
}

