
function parseBounds(xml){
	var xdoc = GXml.parse(xml);
	var ne = xdoc.getElementsByTagName('ne')[0];
	var ne_lat = ne.getElementsByTagName('lat')[0].firstChild.nodeValue;
	var ne_lng = ne.getElementsByTagName('lng')[0].firstChild.nodeValue;
	var sw = xdoc.getElementsByTagName('ne')[0];
	var sw_lat = sw.getElementsByTagName('lat')[0].firstChild.nodeValue;
	var sw_lng = sw.getElementsByTagName('lng')[0].firstChild.nodeValue;
	var swLL = new GLatLng(sw_lat, sw_lng);
	var neLL = new GLatLng(ne_lat, ne_lng);
	var bounds = new GLatLngBounds(swLL, neLL);
	return bounds;
}

function parseCenter(xml){
	var xdoc = GXml.parse(xml);
	var lat = xdoc.getElementsByTagName('clat')[0].firstChild.nodeValue;
	var lng = xdoc.getElementsByTagName('lng')[0].firstChild.nodeValue;
	var center = new GLatLng(lat, lng);
	return center;
}

function parseZoom(xml){
	var xdoc = GXml.parse(xml);
	var zoom = xdoc.getElementsByTagName('zoom')[0].firstChild.nodeValue;
	return zoom;
}

function parseMarkers(xml){
	var xdoc = GXml.parse(xml);
	var yes = xdoc.getElementsByTagName('marker')[0];
	var ms = xdoc.getElementsByTagName('marker');
	var markers = new Array();
	for (var i = 0; i<ms.length; i++){
		var m = ms[i];
		var obj = new Object();
		var lat = m.getElementsByTagName('lat')[0].firstChild.nodeValue;
		var lng = m.getElementsByTagName('lng')[0].firstChild.nodeValue;
		var ll = new GLatLng(lat, lng);
		obj.latLng = ll;
		var info = m.getElementsByTagName('info')[0];
		if (info){
			obj.info = info.firstChild.nodeValue;
		}
		var head = m.getElementsByTagName('head')[0];
		if (head){
			obj.head = head.firstChild.nodeValue;
		}
		markers[i] = obj;
	}
	return markers;
}

function makeMap(){
	var center = parseCenter(xml);
	var zoom = parseZoom(xml);
	var markers = parseMarkers(xml);
	var map = new GMap2(document.getElementById('map'));
	map.setCenter(center, Number(zoom));
	map.checkResize();
	map.addControl(new GSmallZoomControl());
	for (var i=0; i<markers.length; i++){
		var marker = new GMarker(markers[i].latLng);
		var string = '';
		if (markers[i].head){
			string += '<h3>'+markers[i].head+'</h3>';
		}
		if (markers[i].info){
			string += '<p>'+markers[i].info+'</p>';
		}
		marker.bindInfoWindowHtml(string);
		map.addOverlay(marker);
	}
}

function makeMap2(){
	var map = new GMap2(document.getElementById('map'));
	map.setCenter(new GLatLng(37.4419, -122.1419), Number(12));
}

function startMap(){
	if (GBrowserIsCompatible()){
		makeMap();
	}
}