﻿// 地图网
// Ditu.net
// 调用灵图地图服务的JavaScript
// JavaScript that interacts with LingTu's 51Ditu map service
// 作者: 严勇敏
// Author: Yongmin Yan, Ph.D.
// 日期: 2006年9月27日
// Date: Sept. 27, 2006
// 一些代码参考了51Ditu技术手册及实例
// some code are adapted or derived from 51Ditu technical documentation and/or samples
// 版权声明:作者拥有此程序代码的版权,作者授权任何个人可以自由复制或修改此程序,但是使用者必须完全保留以上注释内容以尊重作者的版权
// This is copyrighted material. Modification or Redistribution of the code is permitted provided the above disclaimer is included without any modification
// 如果本程序对您有帮助,欢迎给原作者发邮件告知,地址: gistoday at gmail dot com。也希望您建立至地图网(ditu.net)的友情链接以示感谢
// If this script is helpful to you, the author would appreciate your notification by email, please contact gistoday at gmail dot com. A link back to ditu.net is also encouraged.
 
   //<![CDATA[

	var LT_maps = null;
	var LT_search = null;
	var GMapWin = null;
	var htmlInfo = new Array(20);

	function LT_load(lat,long){
		if(typeof(LTMaps)=="undefined"){document.getElementById("Welcome").innerHTML="<font color=#FF0000>网页下载不完整,请重新<a href='javascript:document.location.reload(true);'>刷新页面</a></font>";}
		else{ 
			LT_maps = new LTMaps( "LT_maps" );
			if (LT_maps == null){document.getElementById("Welcome").innerHTML="<font color=#FF0000>网页下载不完整,请重新<a href='javascript:document.location.reload(true);'>刷新页面</a></font>";}
			else{
				var c = new LTStandMapControl();
				LT_maps.addControl(c);
				//c = new LTZoomInControl();
				//LT_maps.addControl(c);
				//c = new LTPolyLineControl();
				//LT_maps.addControl(c);
				//c = new LTPolygonControl();
				//LT_maps.addControl(c);
				//c = new LTMarkControl();
				//LT_maps.addControl(c);
				//function getPOI(){
					//var POI = c.getMarkControlPoint();
					//alert("经度:" + POI.getLatitude() + " 纬度:" + POI.getLongitude());
					//LT_maps.moveToCenter(POI);
				//}
				//LTEvent.addListener(c,"mouseup",getPOI);

				if (arguments.length<2){lat=3990312;long=11639786;}
				var point = new LTPoint(long, lat);
				LT_maps.centerAndZoom(point, 0);
				LTEvent.addListener(LT_maps,"zoom",LT_ZoomEnd);
				LTEvent.addListener(LT_maps,"move",LT_MoveEnd);
				LT_MoveEnd();
				document.getElementById("Welcome").innerHTML="地图网，让您看世界!";
			}
		}
		if(typeof(LTLocalSearch)=="undefined"){document.getElementById("Welcome").innerHTML="<font color=#FF0000>地理搜索暂时中止</font>";} 
		else{
			LT_search=new LTLocalSearch(LT_ShowResult);
			if (LT_search == null){document.getElementById("Welcome").innerHTML="<font color=#FF0000>地理搜索暂时中止</font>";}
		}
		GMapWin=top.GoogleMaps;
		if (GMapWin==null){
			if (document.getElementById("G_map")!=null){GMapWin=window;}	
		}
		if (GMapWin == null) {
			//alert('建议您打开首页网址http://www.ditu.net同时显示电子地图和卫星影像');
			document.getElementById("Welcome").innerHTML="<font color=#FF0000>此电子地图网页应与卫星影像网页同时显示以达到最佳效果,点击正确的网站入口<a href=http://www.ditu.net>www.ditu.net</a>。</font>";
		}
		
	}

	function LT_GotoCity(city){
		LT_maps.cityNameAndZoom(city,5);
	}

	function LT_GotoProv(prov){
		LT_maps.cityNameAndZoom(prov,11);
	}

function LT_GotoPlace(cityString,defaultScale,defaultLatDiff,defaultLngDiff,defaultScaleDiff){

	if (arguments.length<2){defaultScale=6;}
	if (arguments.length<3){defaultLatDiff=-0.00267;}
	if (arguments.length<4){defaultLngDiff=0.00850;}
	if (arguments.length<5){defaultScaleDiff=0;}

	var city=cityString.split("|");
	var cityname=city[0];
	var scale;
	if (city.length>1){
		scale=city[1];
	} 
	else{
		scale=defaultScale;
	}

	if (GMapWin != null) {
		var latdiff;
		var lngdiff;
		if (city.length>2) {
			var coordDiff=city[2].split(",");
			latdiff=coordDiff[0];
			lngdiff=coordDiff[1];
		}
		else{
			latdiff=defaultLatDiff;
			lngdiff=defaultLngDiff;
		}
	
		var scalediff;
		if (city.length>3){
			scalediff=city[3];	
		}
		else{
			scalediff=defaultScaleDiff;
		}
		GMapWin.setLatLngDiff(latdiff,lngdiff,scalediff);
	}
	if (cityname.substring(0,1)=="@"){
		var xy = cityname.substring(1,cityname.length).split(",");
		LT_Recenter(xy[1],xy[0],scale);
	}
	else {LT_maps.cityNameAndZoom(cityname,scale);}
}


	function LT_Recenter(lat,long,scale){
		if (typeof(LTMaps)=="undefined"){
			GMapWin=top.GoogleMaps;
			if (GMapWin==null){
				if (document.getElementById("G_map")!=null){GMapWin=window;}	
			}
			if (GMapWin != null) {
				GMapWin.G_Moveto(lat/100000.0,long/100000.0);
			}
		}
		else{
			LT_maps.centerAndZoom(new LTPoint(long, lat), scale);
		}
	}
	
	function LT_MoveEnd(){
		var center = LT_maps.getCenterPoint();
		var lng=document.getElementById("Lng");
		lng.value=center.getLongitude();
		var lat=document.getElementById("Lat");
		lat.value=center.getLatitude();
		var bounds=document.getElementById("Bounds");
//		var boundslatlng=LT_maps.getBoundsLatLng();
//		var xmin = parseFloat(boundslatlng.getXmin()/100000.0);
//		var ymin = parseFloat(boundslatlng.getYmin()/100000.0);
//		var xmax = parseFloat(boundslatlng.getXmax()/100000.0);
//		var ymax = parseFloat(boundslatlng.getYmax()/100000.0);
//		bounds.value="((" + ymin + ", " + xmin + "), (" + ymax + ", " + xmax + "))";
		bounds.value=LT_getBounds();
		var scale=document.getElementById("Scale");
		scale.value=LT_maps.getCurrentZoom().toString();
		if (GMapWin != null) {
//		top.GoogleMaps.G_RecenterBounds(parseFloat(lat.value)/100000.0,parseFloat(lng.value)/100000.0,ymin,xmin,ymax,xmax);
//		top.GoogleMaps.G_Recenter(parseFloat(lat.value)/100000.0,parseFloat(lng.value)/100000.0,17-parseInt(scale.value));
		GMapWin.G_Moveto(parseFloat(lat.value)/100000.0,parseFloat(lng.value)/100000.0);
		}
	}


	function LT_ZoomEnd(oldZoom,newZoom){
		var center = LT_maps.getCenterPoint();
		var lng=document.getElementById("Lng");
		lng.value=center.getLongitude();
		var lat=document.getElementById("Lat");
		lat.value=center.getLatitude();
		var bounds=document.getElementById("Bounds");
//		var boundslatlng=LT_maps.getBoundsLatLng();
//		var xmin = parseFloat(boundslatlng.getXmin()/100000.0);
//		var ymin = parseFloat(boundslatlng.getYmin()/100000.0);
//		var xmax = parseFloat(boundslatlng.getXmax()/100000.0);
//		var ymax = parseFloat(boundslatlng.getYmax()/100000.0);
//		bounds.value="((" + ymin + ", " + xmin + "), (" + ymax + ", " + xmax + "))";
		bounds.value=LT_getBounds();
		var scale=document.getElementById("Scale");
		scale.value=LT_maps.getCurrentZoom().toString();
		if (GMapWin != null) {
//		top.GoogleMaps.G_RecenterBounds(parseFloat(lat.value)/100000.0,parseFloat(lng.value)/100000.0,ymin,xmin,ymax,xmax);
//		top.GoogleMaps.G_Recenter(parseFloat(lat.value)/100000.0,parseFloat(lng.value)/100000.0,16-parseInt(scale.value));
//		alert(newZoom);
		GMapWin.G_Recenter(parseFloat(lat.value)/100000.0,parseFloat(lng.value)/100000.0,17-parseInt(newZoom));
		}
	}

	function LT_getBounds(){
		var boundslatlng=LT_maps.getBoundsLatLng();
		var bounds= "((" + boundslatlng.getYmin() + ", " + boundslatlng.getXmin() + "), (" + boundslatlng.getYmax() + ", " + boundslatlng.getXmax() + "))";
		return bounds;
	}

	function LT_getCenterLng(){
		var lng=document.getElementById("Lng");
		return lng.value;		
	}

	function LT_getCenterLat(){
		var lat=document.getElementById("Lat");
			return lat.value;		
	}

	function LT_getScale(){
		var scale=document.getElementById("Scale");
		return scale.value;		
	}

	function LT_ZoomIn(){
		if (typeof(LTMaps)=="undefined"){
			GMapWin=top.GoogleMaps;
			if (GMapWin==null){
				if (document.getElementById("G_map")!=null){GMapWin=window;}	
			}
			if (GMapWin != null) {
				GMapWin.G_ZoomIn();
			}
		}
		else{
			LT_maps.zoomIn();
		}
	}

	function LT_ZoomOut(){
		if (typeof(LTMaps)=="undefined"){
			GMapWin=top.GoogleMaps;
			if (GMapWin==null){
				if (document.getElementById("G_map")!=null){GMapWin=window;}	
			}
			if (GMapWin != null) {
				GMapWin.G_ZoomOut();
			}
		}
		else{
			LT_maps.zoomOut();
		}
	}

	function LT_ZoomTo(zoomLevel){
		if (typeof(LTMaps)=="undefined"){
			GMapWin=top.GoogleMaps;
			if (GMapWin==null){
				if (document.getElementById("G_map")!=null){GMapWin=window;}	
			}
			if (GMapWin != null) {
				GMapWin.G_ZoomTo(17-zoomLevel);
			}
		}
		else{
			LT_maps.zoomTo(zoomLevel);
		}
	}

	function LT_Move(position){
		LT_maps.move(position);
	}

	function LT_MarkerClick(marker,url) 
	{ 
	        return function(){marker.openInfoWinUrl(url);};
	} 

	function LT_ShowResult(searchResult)
	{
		document.getElementById("Message").innerHTML='';

		if(searchResult.count>0)//如果存在搜索结果
		{
			var searchresultcontainer = document.getElementById("SearchResultContainer").value;
			var searchresults;
			var resultcount = searchResult.count>20?20:searchResult.count; 
			if (searchresultcontainer =="SearchResult"){
				LT_maps.clearOverLays();
				//if (GMapWin != null) {GMapWin.G_ClearOverlays();}
				searchresults = "<strong>查询结果</strong>(点击结果显示其地理位置): ";
				var curLat;
				var curLng;
				for (var i=0;i<resultcount;i++){
					var poi=searchResult.searchPoints[i];
					var point=new LTPoint(poi.point[0],poi.point[1]);//得到该点的坐标的LTPoint
					LT_AddPoint(point,poi.name,poi.url,i);
					searchresults=searchresults + "<a href='javascript:LT_SetStartPoint(" + poi.point[1] + "," + poi.point[0] + ");LT_Recenter(" + poi.point[1] + "," + poi.point[0] + ",0);'>" + (i+1) + ".&nbsp;" + poi.name + "</a>&nbsp;";
					if (i==0) {
						LT_maps.centerAndZoom(point,0);
						curLat=point.getLatitude();
						curLng=point.getLongitude();
					}
				}
				var cPage = searchResult.getPageIndex();
				var ttPages = LT_search.getTotalPage();
				if (ttPages > 1){
					searchresults=searchresults + " (第"
					for (var i=1;i<=ttPages;i++){
						if (cPage==i){
							searchresults=searchresults + "&nbsp;" + i; 
						}
						else{
							searchresults=searchresults + "&nbsp;" + "<a href='javascript:LT_SearchByPage(" + i + ");'>" + i + "</a>";
						}
					}
					searchresults=searchresults + " 页)";
				}
				searchresults=searchresults + "(位置存在误差,谨供参考)<input type=hidden name='StartLat' id='StartLat' value='" + curLat + "'><input type=hidden name='StartLng' id='StartLng' value='" + curLng + "'>";
				//if (top.Info!=null){
				searchresults=searchresults+"<br /><strong>我要去那儿!</strong>我从这儿走:";
				var fromCity=document.getElementById("City");
				if (fromCity!=null && fromCity.options!=null){
					searchresults=searchresults+"<select name='MyCity' id='MyCity'>";
					for (var i=0; i<fromCity.options.length; i++) {
						var o = fromCity.options[i];
						if (o.selected){
							searchresults=searchresults+"<option value='" + o.value + "' selected>" + o.text + "</option>";
						}
						else{
							searchresults=searchresults+"<option value='" + o.value + "'>" + o.text + "</option>";
						}
					}
					searchresults=searchresults+"</select>";
				}
				searchresults=searchresults+"地点:<input type='text' name='MyLocation' id='MyLocation' size='12' onKeyUp='Javascript:if (event.which==13||event.keyCode==13){LT_GetMyLocation();}' /><input type='button' onclick='javascript:LT_GetMyLocation();' value='核实地址' /><span name='MyLocationResult' id='MyLocationResult'></span>&nbsp;<br />";
				//}
			}
			else if (searchresultcontainer=="MyLocationResult"){
				searchresults="<select name='MyLocationCandidates' id='MyLocationCandidates' onChange='Javascript:LT_ChangeMyLocation();'>";
				var curLat;
				var curLng;
				for (var i=0;i<resultcount;i++){
					var poi=searchResult.searchPoints[i];
					var point=new LTPoint(poi.point[0],poi.point[1]);
					searchresults=searchresults + "<option value='" + poi.point[0] + "," + poi.point[1] + "'>" + poi.name + "</option>";
					if (i==0){
						curLat=poi.point[1];
						curLng=poi.point[0];	
					}
				}
				searchresults=searchresults + "</select>(请确认)";
				searchresults=searchresults + "<input type='hidden' name='EndLat' id='EndLat' value='" + curLat + "' /><input type='hidden' name='EndLng' id='EndLng' value='" + curLng + "' /><p>";
				searchresults=searchresults + "<input type='button' name='SearchMyLocation' id='SearchMyLocation' onclick='javascript:LT_Routing();' value='告诉我行车线路' />&nbsp;<input type='button' name='ComeBack' id='ComeBack' onclick='javascript:LT_BackRouting();' value='告诉我返程线路' />&nbsp;<input type='button' name='Drive' id='Drive' onclick='javascript:LT_Drive();' value='模拟驾驶' />&nbsp;<input type='button' name='ClearOverLays' id='ClearOverLays' onclick='javascript:LT_ClearOverLays();' value='清除标注' /></p>";
			}
			document.getElementById(searchresultcontainer).innerHTML=searchresults;
		}

	else

		{
			if (document.getElementById("SearchResultContainer").value =="SearchResult"){
				document.getElementById("SearchResult").innerHTML="未查询到记录。请确认城市索引选择框的选项是否正确,若显示的不是您要搜索的城市,请切换城市(重选城市）。如果城市无误，请输入其他关键词再试一下。如果查询不到而您知道其位置,请试着在卫星影像地图上提交兴趣点(添加记录)。请注意部分中小城市尚未开通地理搜索服务。";
			}
			else{
				alert('未查询到记录，请输入其他关键词。');
			}
		}
	}
	
	function LT_LocalSearch()
	{
		if (LT_search==null){
			document.getElementById("SearchResult").innerHTML="搜索服务暂时中止。";
		}
		else{
		var city=document.getElementById("City");
		var keywords=document.getElementById("SearchKeywords").value;
		var ch = /\s*((\S+\s*)*)/;
		keywords=keywords.replace(ch, "$1");
		ch = /((\s*\S+)*)\s*/;
		keywords=keywords.replace(ch, "$1");
		if (city.value != "" && city.value != "all"){
			if (keywords == ""){
				//document.getElementById("SearchResult").innerHTML="请输入查询关键词（如地名）";
				alert('请输入查询关键词（如地名）');
			}
			else
			{
				document.getElementById("SearchResultContainer").value="SearchResult";
				//document.getElementById("SearchResult").innerHTML="系统查询中,请稍候...";
				var cityname=city.options[city.selectedIndex].text;
				ch = /=*([^=]*)/;
				cityname=cityname.replace(ch, "$1");
				ch = /([^=]*)=*/;
				cityname=cityname.replace(ch, "$1");
				ch = /[^\(\)]*\((.*)\)[^\(\)]*/;
				cityname=cityname.replace(ch, "$1");
				document.getElementById("SearchResult").innerHTML="系统正在查询<strong>" + cityname + "</strong>的<strong>" + keywords + "</strong>,请稍候...";
				//alert(cityname + keywords);
				LT_search.setCity(cityname);
				LT_search.pagecap=20;
				LT_search.search(keywords);
			}
		}
		else
		{
			//document.getElementById("SearchResult").innerHTML="请从城市索引(列表)中选择城市以锁定查询范围";
			alert('请从城市索引(列表)中选择城市以锁定查询范围'); 
		}
		}
	}

	function LT_SearchByPage(pageIndex)
	{
		LT_search.searchPage(pageIndex);
	}

	function LT_ShowQuickSearch()
	{
		document.getElementById("QuickSearch").style.display = "";
	}

	function LT_QuickSearch(keywords)
	{
		document.getElementById("SearchKeywords").value=keywords;
		document.getElementById("QuickSearch").style.display = "none";
		LT_LocalSearch();
	}

	function LT_ChangeMyLocation()
	{
		document.getElementById("Message").innerHTML='';
		var dest=document.getElementById("MyLocationCandidates").value;
		if (dest==null||dest==""){alert("请选择你的位置");}
		else{
			dest=dest.split(",");
			document.getElementById("EndLat").value=dest[1];
			document.getElementById("EndLng").value=dest[0];
		}
	}

	function LT_GetMyLocation()
	{
		var city=document.getElementById("MyCity");
		if (city==null){city=document.getElementById("City");}
		var mylocation=document.getElementById("MyLocation").value;
		var ch = /\s*((\S+\s*)*)/;
		mylocation=mylocation.replace(ch, "$1");
		ch = /((\s*\S+)*)\s*/;
		mylocation=mylocation.replace(ch, "$1");
		if (city.value != "" && city.value != "all"){
			if (mylocation == ""){
				alert('请输入您的位置（如地名）');
			}
			else
			{
				document.getElementById("SearchResultContainer").value="MyLocationResult";
				var cityname=city.options[city.selectedIndex].text;
				LT_search.setCity(cityname);
				LT_search.pagecap=20;
				LT_search.search(mylocation);
				//alert(cityname + mylocation);
			}
		}
		else
		{
			alert('请从城市索引(列表)中选择城市以锁定查询范围'); 
		}
	}

	function LT_SetStartPoint(lat,lng){
		document.getElementById("StartLat").value=lat;document.getElementById("StartLng").value=lng;
		document.getElementById("Message").innerHTML='';
	}

	function LT_SetEndPoint(lat,lng){
		document.getElementById("EndLat").value=lat;document.getElementById("EndLng").value=lng;
		document.getElementById("Message").innerHTML='';
	}

	function LT_RoutingResult(result){
		var ch = /\s*((\S+\s*)*)/;
		result=result.replace(ch, "$1");
		//alert(result);
		document.getElementById("Message").innerHTML="";
		document.getElementById("Data").innerHTML="";
		if (result.substring(0,2)=="OK"){
			result=result.split("|");
			if (result.length >= 10){
				var nav="";
				nav=result[5]+ ' ' + result[7] + '<br />';
				var data="";
				var rds = result[1].split(";");
				for (var i=0;i<rds.length;i++){
					var rd = rds[i].split(",");
					nav = nav + "<a href=\"javascript:LT_maps.moveToCenter(new LTPoint(" + rd[0] + "," + rd[1] + "))\"" + ">" + rd[2]+ "</a>" + "<br />";
				} 
				var rds = result[3].split(";");
				for (var i=0;i<rds.length;i++){
					var rd = rds[i].split(",");
					data = data + rd[1] + "," + rd[0];
					if (i<(rds.length-1)){data=data+",";}
				} 
				document.getElementById("Message").innerHTML=nav;
				document.getElementById("Data").innerHTML=data;
				LT_DrawNavigation();
			}
		}
		else{
			document.getElementById("Message").innerHTML="导航功能出错或者暂时中断服务";	
		}
	}

	function LT_Routing(){
//		if (top.Info!=null){
		//top.Info.document.location.url = "/51ditu/navigate.asp";
		var StartLng=document.getElementById("StartLng").value;
		var StartLat = document.getElementById("StartLat").value;
		//var dest=document.getElementById("MyLocationCandidates").value;
		var EndLng=document.getElementById("EndLng").value;
		var EndLat = document.getElementById("EndLat").value;
//		if (dest==null||dest==""){alert("请选择你的位置");}
//		else{
//			dest=dest.split(",");
			url="navigate.asp?" + "p1=" + EndLng + "," + EndLat + "&p2=" + StartLng + "," + StartLat;
			document.getElementById("Message").innerHTML="正在处理,请稍候";
			//if (top.Info!=null){
			//	top.Info.navigate(url);
			//}
			//else{
				LT_AJAXCall("/51ditu/navigate_pass.asp?url=" + url.replace("&",";"),LT_RoutingResult);
			//}
//		}
//		}
//		else{
//			alert('由于您所在的网页非地图网主页,行车线路搜索功能不被支持。请从www.ditu.net进入本网站。');
//		}
	}

	function LT_BackRouting(){
//		if (top.Info!=null){
		//top.Info.document.location.url = "/51ditu/navigate.asp";
		var StartLng=document.getElementById("StartLng").value;
		var StartLat = document.getElementById("StartLat").value;
//		var dest=document.getElementById("MyLocationCandidates").value;
		var EndLng=document.getElementById("EndLng").value;
		var EndLat = document.getElementById("EndLat").value;
//		if (dest==null||dest==""){alert("请选择你的位置");}
//		else{
//			dest=dest.split(",");
			url="navigate.asp?" + "p1=" + StartLng + "," + StartLat + "&p2=" + EndLng + "," + EndLat;
			document.getElementById("Message").innerHTML="正在处理,请稍候";
			//if (top.Info!=null){
			//	top.Info.navigate(url);
			//}
			//else{
				LT_AJAXCall("/51ditu/navigate_pass.asp?url=" + url.replace("&",";"),LT_RoutingResult);
			//}
//		}
//		}
//		else{
//			alert('由于您所在的网页非地图网主页,行车线路搜索功能不被支持。请从www.ditu.net进入本网站。');
//		}
	}

	function LT_DrawNavigation(){
		var data = document.getElementById("Data").innerHTML;
		var pts= data.split(',');
		var ptsarray = new Array(0);
		for (var i=0;i<pts.length;i=i+2){
			var pt = new LTPoint(parseInt(pts[i+1]),parseInt(pts[i]));
			if (!(!(pt))) {
				ptsarray.push(pt);
				}
		}
		LT_AddLine(ptsarray);
		LT_maps.getBestMap(ptsarray);
		document.getElementById("Message").innerHTML=document.getElementById("Message").innerHTML + "<p>行驶距离和时间只是估计,您应根据实际路况和车辆时速核实。地图标注的行驶线路作了简化处理，只是示意，出行请核对地图。</p>";
	}

	function LT_Drive(){
		var data = document.getElementById("Data").innerHTML;
		if (data==""){alert("请先计算行车线路或返程线路");}
		else{
		var pts= data.split(',');
		for (var i=0;i<pts.length;i=i+2){
			var pt = new LTPoint(parseInt(pts[i+1]),parseInt(pts[i]));
			if (!(!(pt))) {
				if (i==0){LT_maps.setCenterAtLatLng(pt);LT_maps.zoomTo(0);}
				else{
					var interval = 1500;
					if (((Math.abs(parseInt(pts[i+1])-parseInt(pts[i-1])) > 10000) || (Math.abs(parseInt(pts[i])-parseInt(pts[i-2])) > 10000))) {setTimeout("if (LT_maps.getCurrentZoom() < 4) {LT_maps.zoomTo(4);}",interval*2*(i)+interval);} 
					else if (((Math.abs(parseInt(pts[i+1])-parseInt(pts[i-1])) < 10000) && (Math.abs(parseInt(pts[i])-parseInt(pts[i-2])) < 10000))) {setTimeout("if (LT_maps.getCurrentZoom() >= 4) {LT_maps.zoomTo(0);}",interval*2*(i)+interval);}
					setTimeout("LT_maps.moveToCenter(new LTPoint(parseInt(" + pts[i+1] + "),parseInt(" + pts[i] + ")))",interval*2*(i+1));
				}
				}
		}
		}

	}

	function LT_AddOverLay(ol){
		if (!(!(ol))) {LT_maps.addOverLay(ol);}
	}

	function LT_AddLine(pts){
		if (!(!(pts))){
		var l = new LTPolyLine(pts);
		l.setLineColor("red");
		l.setLineStroke(4);
		l.setLineArrow("Oval","Classic");
		if (!(!(l))) {LT_AddOverLay(l);}
		}
	}

	function LT_ClearOverLays(){
		LT_maps.clearOverLays();
	}

	function LT_AddPoint(point,text,url,sid){
					var icon = new LTIcon("http://www.ditu.net/images/pin_icon.gif",[16,16],[8,16]);
					//var icon = new LTIcon();
					//icon.setImageUrl("http://www.ditu.net/images/pin_icon.gif");
					//icon.setWidth(16);
					//icon.setHeight(16);
					var marker=new LTMarker(point,icon);
					LT_maps.addOverLay(marker);
					htmlInfo[sid]='<strong>' + text + '</strong>';
					LTEvent.addListener(marker,"click",LT_DisplayInfo(marker,sid));
					var mapText=new LTMapText(marker);
					mapText.setLabel(text);
					mapText.setBorderLine(0);
                			mapText.setBackgroundColor("");
					LT_maps.addOverLay(mapText);
					LT_AJAXCall("/51ditu/GetReview.asp?lat=" + point.getLatitude() + "&lng=" + point.getLongitude() + "&name=" + escape(text) + "&url=" + escape(url) + "&city=" + escape(document.getElementById("City").options[document.getElementById("City").selectedIndex].text) + "&searchkeywords=" + escape(document.getElementById("SearchKeywords").value) + "&SID=" + sid, LT_GetReview);
					//if (GMapWin != null) {
					//	GMapWin.G_AddLTPOI(parseFloat(point.getLatitude())/100000,parseFloat(point.getLongitude())/100000,text,'此位置存在误差,仅供参考');
					//}

	}

	function LT_GetReview(review){
		try{
			var xmlDoc;
			if (document.implementation && document.implementation.createDocument) { 
		    		var parser = new DOMParser(); 
				xmlDoc = parser.parseFromString(review,"text/xml");
				var sid = parseInt(xmlDoc.getElementsByTagName("SID")[0].childNodes[0].nodeValue);
				var status = xmlDoc.getElementsByTagName("Status")[0].childNodes[0].nodeValue;
				if (status == 'OK'){
					var comm = xmlDoc.getElementsByTagName("Comment")[0].childNodes[0].nodeValue;
					htmlInfo[sid] = htmlInfo[sid] + '<br />' + comm;		
				}
	  		}
			else{
				xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.async="false";
				xmlDoc.loadXML(review);
				var sid = parseInt(xmlDoc.getElementsByTagName("SID").item(0).text);
				var status = xmlDoc.getElementsByTagName("Status").item(0).text;
				if (status == 'OK'){
					var comm = xmlDoc.getElementsByTagName("Comment").item(0).text;
					htmlInfo[sid] = htmlInfo[sid] + '<br />' + comm;		
				}
			}
		}
			catch(e) {}
	}

	function LT_DisplayInfo(marker,sid){
		return function(){
			marker.openInfoWinHtml(htmlInfo[sid]);
		}	
	}

	function LT_AJAXCall(url, callbackFunction) {
    		var httpObj = false;
    		if (typeof XMLHttpRequest != 'undefined') {
        		httpObj = new XMLHttpRequest();
    		} 
		else if (window.ActiveXObject) {
        		try{
            			httpObj = new ActiveXObject('Msxml2.XMLHTTP');
        		} 
			catch(e) {
            			try{
                			httpObj = new ActiveXObject('Microsoft.XMLHTTP');
            			} 
				catch(e) {}
        		}
    		}
    		if (!httpObj) {
			alert("浏览器不支持AJAX");
			return;
		}

    		httpObj.onreadystatechange = function() {
        		if (httpObj.readyState == 4) {
            			if (typeof (callbackFunction) == "function"){callbackFunction(httpObj.responseText);}
				httpObj = undefined;
        		}
    		};
    		httpObj.open('GET', url, true);
    		httpObj.send(null);
	}


    //]]>
