// <![CDATA[

var map;

function onLoad2() {
  if (GBrowserIsCompatible()) {
    map = new GMap2(document.getElementById("map")); 
    
    var geoXml = new GGeoXml("http://veloroutes.org/rss/?n=100&l=1");

    map.addControl(new GLargeMapControl());
    map.setCenter(new GLatLng(42.496675,-62.65625), 3);
    map.addOverlay(geoXml);
  }
}

//loads route from backend
function loadRouteByID(id,moveMap) {
		this.moveMap = moveMap;
		var ajaxObj = createAjaxObj();//GXmlHttp.create();
		//ajaxObj.onreadystatechange = readyStateGetRoute;
		ajaxObj.open("GET", "/cgi-bin/get_routes.cgi?route_id=" + id, false);
		
		ajaxObj.onreadystatechange = function() {
	  try {
		if (ajaxObj && ajaxObj.readyState == 4) {
		if (ajaxObj.status==200 || ajaxObj.status==302 || ajaxObj.status==304)
		{ //if request was successful

			//GLog.write("=---->" + ajaxObj);

			var xmldata=ajaxObj.responseXML;
			
			if (!xmldata || xmldata.getElementsByTagName("route").length==0)
			{
				//if no <item> elements found in returned content
				alert("Sorry, no routes found with that criteria.");
			}
			else 
			{
				loadXMLRoute(xmldata);
			}
		}
		else {
			alert('There was a problem getting the route!\nError Code: ' + ajaxObj.status);
		}	
		} 
	   } 
		catch(e) { alert("Error getting route data: " + e); }
	}

	ajaxObj.send(null);
}//end func

//loads a route from XML
function loadXMLRoute(xmldata) {

try {
	if(!xmldata || xmldata.getElementsByTagName("routes").length == 0) { return; }
 	var route=xmldata.getElementsByTagName("data")[0].childNodes[0].nodeValue.split("|");
	this.totalDist=parseFloat(xmldata.getElementsByTagName("dist")[0].childNodes[0].nodeValue.toString());

	/*
	getElem('totalDist').innerHTML = (totalDist * metricRatio).toFixed(2).toString() + " " + distUnit;
	setVal("feedbackBar", buildSpeedAvgs(this.totalDist));
	getElem("routeName").value =  xmldata.getElementsByTagName("name")[0].childNodes[0].nodeValue.toString();
	*/

	/*
	var tags = xmldata.getElementsByTagName("tags")[0];
	tags = getNode(tags);
	if(tags != null) { getElem("routeTags").value= tags;}
	var comm = xmldata.getElementsByTagName("comment")[0];
	comm = getNode(comm);
	if(comm != null) { getElem("routeComm").value= comm; }
	var gain = xmldata.getElementsByTagName("gain")[0];
	gain = getNode(gain);
	if(gain != null) 
	{ 
		this.totalEleGain = parseFloat(gain);
	}
	else { this.totalEleGain = 0.0; }
	*/

	loadRouteFromString(route,routeColor,0.95,true);
	loadElevationGraphFromString(getNode(xmldata.getElementsByTagName("ele")[0]).split(","));
	
	this.maxGrade = 0;
/*	document.getElementById("deleteLastPoint").disabled = true; */
   }catch(e) { alert("ERROR loading route: " + e); }
}

//]]

