var g_host = "http://vip.chinaquest.com"; 
var g_mapno = 2; 
var g_host2 = "http://www.chinaquest.com"; 
var g_mapno2 = 3; 
var g_wait
var com_logo
var ip
g_wait = null;
function invokeServer(target){
	var xmlObj = new ActiveXObject("Msxml2.XMLHTTP");
	var xmlDoc;
	xmlObj.open("GET",target+"&rnd="+Math.random(),false);
	xmlObj.send();
	xmlDoc = xmlObj.responseXML;
	if (xmlDoc==null || xmlDoc.xml=="")
	{
		alert("服务器端出现意外错误，请与网站管理员联系。稍后再试...");
		//prompt("src url",target);
		return null;
	}
	xmlObj = null;
	return xmlDoc;
}

function doGeocode(addr,label)
{
	var turl;
	if (label==null)
		label = "";
	if (addr=="")
	{
		alert("请首先输入一个查询关键字...");
		return;
	}
	turl = g_host+"/cqx_svr/geocode_map.asp?addr="+addr+"&mapno="+g_mapno+"&label="+label;
	var doc = invokeServer(turl);
	if (doc==null || doc.documentElement.getAttribute("err")=="1")
	{
		addr = showFuzzyMap("请选择相匹配的地址:",addr,false);
		if (addr!="")
		{
			var i = addr.lastIndexOf("$");
			if (i>=0)
			{
				var t = addr.substr(i+1);
				addr = addr.substr(0,i);			
				if (t=="1")
					doGeocode(addr,label);				
			}
		}
		return;
	}
	else
		showMap(doc);
}
 

 function showFuzzyMap(msg,addr,noroad)
{	if (noroad)
		t = 1
	else
		t = 0
	addr = showModalDialog("/map/AddrFuzzyDlg.asp?msg="+escape(msg)+"&addr="+escape(addr)+"&noroad="+t,null,"dialogWidth:320px;dialogHeight:400px,scroll:no");
	return addr;
}

function doGeocode_free(addr,label)
{
	var turl;
	if (label==null)
		label = "";
	if (addr=="")
	{
		alert("请首先输入一个查询关键字...");
		return;
	}
	turl =g_host+"/cqx_svr/geocode_map.asp?isfree=1&addr="+addr+"&mapno="+g_mapno+"&label="+label;
	//prompt("",turl);
	var doc = invokeServer(turl);
	if (doc==null || doc.documentElement.getAttribute("err")=="1")
	{
		addr = showFuzzyMap("请选择相匹配的地址:",addr,false);
		if (addr!="")
		{
			var i = addr.lastIndexOf("$");
			if (i>=0)
			{var t = addr.substr(i+1);
				addr = addr.substr(0,i);
				if (t=="1")
					doGeocode(addr,label);
			}
		}
		return;
	}
	else
		showMap(doc,addr);
}


function showMap(doc,addr)
{
	var mapid,l,r,t,b,label,x,y;
	var bound,pt;
	var maptype,busline,poitype;
	mapid = doc.documentElement.getAttribute("mapid");
	maptype = doc.documentElement.getAttribute("maptype");
	busline = doc.documentElement.getAttribute("busline");
	poitype = doc.documentElement.getAttribute("poitype");
	bound = doc.documentElement.selectSingleNode("bound");
	l = bound.getAttribute("l");
	r = bound.getAttribute("r");
	t = bound.getAttribute("t");
	b = bound.getAttribute("b");
	pt = doc.documentElement.selectSingleNode("point");
	x = pt.getAttribute("x");
	y = pt.getAttribute("y");
	label = pt.text;

		var seturl = g_host+"/map/mapforyellowpage2.asp?"
		var turl =g_host+"/map/mapforyellowpage.asp?"
		var tempurl  = "mapno="+g_mapno+"&mapid="+mapid+"&maptype="+maptype;
		tempurl += "&l="+l+"&r="+r+"&t="+t+"&b="+b;
		tempurl += "&lbl="+escape(label)+"&x="+x+"&y="+y;
		if (busline!="")
			tempurl += "&busline="+busline;
		if (poitype!="")
			tempurl += "&poitype="+poitype;
			tempurl+="&address="+addr;
			
		seturl +=tempurl;
		
		tempurl += "&xzs=" +com_logo;
		turl +=tempurl;
		//turl += "&securl='" + seturl + "'";
	//prompt('',turl);			
		location.replace(turl);
	
}

function showmap_free(s,t)
{
	var turl=g_host + "/geturl.asp?name=" +s + "&addr=" + t + "&xzs=" + com_logo ;
	var wnd = open(turl,"mapwnd","left=10,top=10,width=680,height=540,toolbar=0,menubar=0");
	if (wnd!=null)
	wnd.focus();
}

function showmap_free4(s,t,cityno)
{
	setghost();
	if (cityno==3)
	{
		//alert("333");
		g_host=g_host2;
		g_mapno=cityno;
	}
	//alert(g_host);
	var turl=g_host+"/geturlx.asp?name=" +s + "&addr=" + t + "&xzs=" + com_logo + "&cityno=" +  g_mapno;
	var wnd = open(turl,"mapwnd","left=10,top=10,width=680,height=540,toolbar=0,menubar=0");
	if (wnd!=null)
	wnd.focus();
}

function showmap_free5(s,t,x,y,cityno)
{
	setghost();
	if (cityno==3)
	{
		g_host=g_host2;
		g_mapno=cityno;
	}
	//alert(g_host);
	var turl=g_host+"/geturlx.asp?name=" +s + "&addr=" + t + "&xzs=" + com_logo + "&x=" + x + "&y=" + y+ "&cityno=" + cityno ;
	//prompt("",turl);
	var wnd = open(turl,"mapwnd","left=10,top=10,width=680,height=540,toolbar=0,menubar=0");
	if (wnd!=null)
	wnd.focus();
}

function domap_free(addr,label,cityno)
{
	setghost();
	//alert(g_host);
	var turl;
	if (label==null)
		label = "";
	if (addr=="")
	{
		alert("请首先输入一个查询关键字...");
		return;
	}
	if (cityno==3)
	{
		g_host=g_host2;
		g_mapno=cityno;
	}
	turl =g_host+"/cqx_svr/geocode_map.asp?isfree=1&addr="+addr+"&mapno="+g_mapno+"&label="+label;
	//prompt("",turl);
	var doc = invokeServer(turl);
	if (doc==null || doc.documentElement.getAttribute("err")=="1")
	{
		addr = showFuzzyMap("请选择相匹配的地址:",addr,false);
		if (addr!="")
		{
			var i = addr.lastIndexOf("$");
			if (i>=0)
			{var t = addr.substr(i+1);
				addr = addr.substr(0,i);
				if (t=="1")
					doGeocode(addr,label);
			}
		}
		return;
	}
	else
		showMap3(doc,addr,g_mapno);
}

function domap_free2(addr,label,x,y,cityno)
{
	setghost();
	var turl;
	if (label==null)
		label = "";
	if (addr=="")
	{
		alert("请首先输入一个查询关键字...");
		return;
	}
	if (cityno==3)
	{
		g_host=g_host2;
		g_mapno=cityno;
	}
	turl =g_host+"/cqx_svr/geocode_map_free.asp?isfree=1&addr="+addr+"&mapno="+g_mapno+"&label="+label+"&x="+x+"&y="+y;
	//prompt("",turl);
	var doc = invokeServer(turl);
	//prompt("",doc);
	if (doc==null || doc.documentElement.getAttribute("err")=="1")
	{
		addr = showFuzzyMap("请选择相匹配的地址:",addr,false);
		if (addr!="")
		{
			var i = addr.lastIndexOf("$");
			if (i>=0)
			{var t = addr.substr(i+1);
				addr = addr.substr(0,i);
				if (t=="1")
					doGeocode(addr,label);
			}
		}
		return;
	}
	else
		showMap3(doc,addr,g_mapno);
}

function showMap3(doc,addr,cityno)
{
	setghost();
	//alert("showmap2");
	if (cityno==3)
	{
		g_host=g_host2;
		g_mapno=cityno;
	}
	var mapid,l,r,t,b,label,x,y;
	var bound,pt;
	var maptype,busline,poitype;
	mapid = doc.documentElement.getAttribute("mapid");
	maptype = doc.documentElement.getAttribute("maptype");
	busline = doc.documentElement.getAttribute("busline");
	poitype = doc.documentElement.getAttribute("poitype");
	bound = doc.documentElement.selectSingleNode("bound");
	l = bound.getAttribute("l");
	r = bound.getAttribute("r");
	t = bound.getAttribute("t");
	b = bound.getAttribute("b");
	pt = doc.documentElement.selectSingleNode("point");
	x = pt.getAttribute("x");
	y = pt.getAttribute("y");
	label = pt.text;

		var seturl =g_host+"/map/mapforfree2.asp?"
		var turl =g_host+"/map/mapforfree.asp?"
		var tempurl  = "mapno="+g_mapno+"&mapid="+mapid+"&maptype="+maptype;
		tempurl += "&l="+l+"&r="+r+"&t="+t+"&b="+b;
		tempurl += "&lbl="+escape(label)+"&x="+x+"&y="+y;
		if (busline!="")
			tempurl += "&busline="+busline;
		if (poitype!="")
			tempurl += "&poitype="+poitype;
			tempurl+="&address="+addr;
			
		seturl +=tempurl;
		
		tempurl += "&xzs=" +com_logo;
		turl +=tempurl;
		//turl += "&securl='" + seturl + "'";
	//prompt('',turl);			
		location.replace(turl);
		setghost();
}

function FreeMap(name,addr,cityno)
{
	//alert(addr.indexOf("@"));
	if(addr.indexOf("@")==0)
	{
		Pa=addr.indexOf(":");
		x=addr.substring(1,Pa);
		y=addr.substring(Pa+1,addr.length);
		//prompt("",x+"!"+y);
		showmap_free5(name,name,x,y,cityno);
	}
	else
	showmap_free4(name,addr,cityno);
}

function setghost()
{
	g_host = "http://vip.chinaquest.com"; 
	g_mapno = 2; 
	g_host2 = "http://www.chinaquest.com"; 
	g_mapno2 = 3; 
}

function doBus_Free(addr1,addr2)
{
	alert("aaaa");
	//if (!VerifyAddr_Ex("doBusTransfer",addr1,addr2))
		//return;
	turl ="http://211.152.34.52/scripts/mbserver.dll?name=routing&cmd=buspath&mapfile=NewMapXml";
	turl += "&mapno="+g_mapno+"&address="+addr1+"&address2="+addr2+"&promptfile=NewMapErr&xml=1";
	prompt("",turl);
	var doc = invokeServer(turl);
	alert(doc);
	if (doc==null || doc.documentElement.getAttribute("err")=="1")
		alert("对不起，无法找到从"+addr1+"到"+addr2+"间的合适的公交换乘方案!");
	else
		showMap3(doc,addr1,2);
}