var getThereDetailUrl = "/eng/xml/tb-get-there";
var getThereIndexUrl = "/eng/xml/tb-get-there-index.xml";
var getThereIndexArray = new Array();
getThereIndex();
/*
var getThereDetailUrl = "/eng/xml/tb-get-there-ext";
var groupSize = 10000;
*/
function getIndex(req, obj)
{
	var xmlDoc = req.responseXML.documentElement;
	if (req.responseText.indexOf("<getThereIndex>")!=-1)
	{					
		var indexNode = xmlDoc.getElementsByTagName("index");
		var indexCount = indexNode.length;
		//alert("indexCount="+indexCount);
		for (var i=0; i<indexCount; i++)
		{
			//alert("at "+i+" value="+indexNode[i].childNodes[0].nodeValue);
			getThereIndexArray.push(indexNode[i].childNodes[0].nodeValue);
		}
	}
	else 
	{
		//alert("No node");
	}
}


function getThereIndex()
{		
	var myAjax = new Ajax.Request(
		getThereIndexUrl,
		{ 
			method: 'get',
			onSuccess: delegate(this, getIndex),
			onFailure: function(){ alert('AJAX went wrong ...') }
		}
	);
	
	//var t = "<scr"+"ipt language=\"javascript\" type=\"text/javascript\" src=\""+"/eng/js/aabbcc.js"+"\"><"+"/script>";
	//document.write(t);
}

function getThereDetailMulti(idStr, containerName)
{		
	//alert("getThereDetailMulti," + idStr +","+ containerName);
	var idArray = idStr.split(",");
	containerName = (!containerName) ? "getThereDetailContainer" : containerName;
	$(containerName).hide();
	getThereDetail(idArray, 0, containerName, "");
}

function getThereDetail(idArray, idIdx, containerName, combinedInfo)
{
	//alert("getThereDetail," + idArray+","+idIdx+","+containerName+","+combinedInfo);
	id = idArray[idIdx];   
	//alert("@ getThereDetail "+id+" "+idIdx+" "+getThereIndexArray.length);
	
	if (id!="")
	{	
		//var group = Math.floor((id-1)/groupSize)+1;
		//var tmpUrl = getThereDetailUrl + group + ".xml";
		var tmpUrl =  "";
		for (var k=0; k<getThereIndexArray.length; k++)
		{
			//alert("id="+id+" at array "+k+"= "+getThereIndexArray[k]);
			try
			{
				if (parseInt(id)<=parseInt(getThereIndexArray[k]))
				{					
					tmpUrl = getThereDetailUrl+(k+1)+".xml";
					//alert("id "+id+" < than "+getThereIndexArray[k]+" tmpUrl="+tmpUrl);
					break;
				}
				else
				{
					//alert("id="+parseInt(id)+" > array="+parseInt(getThereIndexArray[k]) );
				}
			}
			catch (err)
			{
				alert("err="+err.toString());
			}

		}

		var myAjax = new Ajax.Request(
			tmpUrl,
			{ 
				method: 'get',
				onSuccess: delegate(this, getInfo, idArray, idIdx, containerName, combinedInfo),
				onFailure: function(){ alert('AJAX went wrong ...') }
			}
		);
	}
}

function getInfo(req, obj, idArray, idIdx, containerName, combinedInfo)
{
	//alert("getInfo," + req+","+obj+","+idArray+","+idIdx+","+containerName+","+combinedInfo);
	var xmlDoc = req.responseXML.documentElement;
	var result = "";

	if (req.responseText.indexOf("<getthereinfo>")!=-1)
	{					
		var idNode = xmlDoc.getElementsByTagName("id");
		var infoCount = idNode.length;
		var nameNode = xmlDoc.getElementsByTagName("name");
		var infoNode = xmlDoc.getElementsByTagName("info");
		var recordCnt = 0;
		
		for (var i=0; i<infoCount; i++)
		{
			var id = idNode[i].childNodes[0].nodeValue;
			if (id==idArray[idIdx])
			{				
				var name = nameNode[i].childNodes[0]==null?"":nameNode[i].childNodes[0].nodeValue;
				var info = infoNode[i].childNodes[0]==null?"":infoNode[i].childNodes[0].nodeValue;
			
				if (info!="")
				{
					result +=
						"<div id=\"getThereDetailRow\">"+
						"<div id=\"getThereDetail\"><b>"+name+"</b><br/>"+info+"</div>"+
						"</div>";
				}
					
				recordCnt++;
				break;
			}
		}	
		
	}
	combineGetThere(result, idArray, idIdx, containerName, combinedInfo);
}

function combineGetThere(info, idArray, idIdx, containerName, combinedInfo)
{
	//alert("combineGetThere," + info+","+idArray+","+idIdx+","+containerName+","+combinedInfo);
	idIdx++;
	if (info!="")
	{
		combinedInfo += info+"<div style=\"height:10px; clear:both\"></div>";
	}
	
	if (idIdx==idArray.size())
	{
		if (combinedInfo!="")
		{
			var result = 
				"<div id=\"getThereDetailContentHeading\">"+
				"How To Get There"+
				"</div>"+
				"<div class=\"horizontalLine newLine\"></div>"+
				"<div id=\"getThereDetailContentDetails\">"+
				""+combinedInfo+
				"</div>";
				
			$(containerName).show();
			$(containerName).innerHTML = result;
		}
	}
	else
	{
		getThereDetail(idArray, idIdx, containerName, combinedInfo);
	}
}
