// golbal variable

var MyMapType="";  //InfoMap,info categories.

var Topic="";			//the Dining topic name, defined in DiningResult.asp;the photo topic name, defined in GetPhotoTitle.asp
var isTopic=false;  //used in infomap,diningmap,touristmap,TransportMap,photomap.

var CensusField="POP";		//which field to use label/render
var CensusString="";	//used for save the old census string
var isPrint=false;
var isRoute=false;		//user click a Transport topic? defined in TransportResult.asp(GMB location)
var StopX = new Array();	//for a route_no,the mid_terminus stop X, setting in GMBInfo()-- rnear_searchresult.asp, ro_searchresult, GetTransportData.asp
var StopY = new Array();	//for a route_no,the mid_terminus stop Y, setting in GMBInfo()-- rnear_searchresult.asp, ro_searchresult, GetTransportData.asp
var StopCount =0;			//for a route_no,the mid_terminus stop count, setting in GMBInfo()-- rnear_searchresult.asp, ro_searchresult, GetTransportData.asp
var GMBType =0;				//GMB route_no type, setting in GMBInfo()-- rnear_searchresult.asp, ro_searchresult, GetTransportData.asp
var isP2P=false;
var SptX=0;
var SptY=0;
var SearchResult="<TR><TD>&nbsp;</TD><TD>&nbsp;</TD></TR><TR><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>";	//"<TR><TD>Name</TD><TD>ABCDE</TD></TR><TR><TD>Address</TD><TD>12345</TD></TR>";

//by zhonghong start;
var BufferLayerName = "";
var ActiveToLight = "";
var optype = "";
var pointX = "";
var pointY = "";
var toolModeI ="";
var InfoPath = "";
var ActiveNoLight="";
//by zhonghong end;


/*************query data  on the map**************/
function ZoomToFeature(layName,fieldName,fieldValue) {
	TDLscrollMap();

	if (WebPage == 1){
		toolModeI = toolMode;
		toolMode = 1;
		queryStartRecord = 1;
	}else{
		toolMode =8;
	}

	parent.ToolsFrame.document.GetData.radio1[1].checked = true;
    parent.ToolsFrame.document.GetData.radio1[1].checked = false;

	for (var li=0;li<layerCount;li++) {		
		
		if ( LayerName[li].toUpperCase() == layName.toUpperCase() ) {
			setActiveLayer(li);
		}								
	}

    selectMargin = 1.100;
	selectPointMargin = 0.025;

	
    selectColor="255,0,0";
	highlightColor="255,0,0";
	transparentLevel ="10.15";
   
	if (WebPage==1) {
		if (fieldName == "GEO_REFNO")
		{
			newString = fieldName + " = " + '"' + fieldValue + '"';
		}else{
			if (fieldName=="NAME_E")
			{
			fieldValue = "." + fieldValue;
			newString = fieldName + " = " + '"' + fieldValue + '"' +" and " + " TYPE " + "=" + '"'+ optype +'"';
			}else{
			newString = fieldName + " = " + fieldValue;
			}
		}
	}else{
		newString = fieldName + " = " + fieldValue;
	}
	newString = fixSingleQuotes(newString);
	newString = swapQuotes(newString);
	newString = makeXMLsafe(newString);
	setQueryString=newString;
	//alert(newString);
	showRetrieveData();
	var theString = writeQueryXML(newString);
	sendToServer(imsQueryURL,theString,8);
	
}

function TDLQueryLocation(myactivelayer,geo_refno,shape)
{	
	TDLscrollMap();
	//first: set the tools to nothing (not zoom in, identify..., because tool is Query)
	var theForm=parent.ToolsFrame.document.forms[0];
	theForm.radio1[1].checked=true;
	theForm.radio1[1].checked=false;
		
	TDLLayerVisible(myactivelayer, true);
	//alert(myactivelayer);	
	var i=0;	
	for (i=0; i<layerCount; i++)
	{	
		if (LayerName[i].toUpperCase() == myactivelayer.toUpperCase() )
		{
			setActiveLayer(i);
			ActiveLayer=myactivelayer.toUpperCase();
		}		
	}	
	//setActiveLayer(0);
	//alert(ActiveLayer);
	
	//second: Query and location
	var theString="SDE." + ActiveLayer + ".GEO_REFNO =\"" + geo_refno + "\""
	XMLMode=8;
	selectionMode=1;
	toolMode=8;
	//alert(theString);
	sendQueryString(theString);
}

/*************** zoom level ******************************/
function TDLZoomLevel(Level) {
// For info show (TextFrame) Aug 2008 start
	if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){
		var obj=parent.document.getElementById("TextFrame").contentDocument
	}else{
		var obj=top.frames("TextFrame").document
	}
	if(obj.getElementById('bufferid')){
		obj.getElementById('bufferid').style.display = (Level<5) ? 'none' : '';
	}
// For info show (TextFrame) Aug 2008 end
	if ((isTopic) && (WebPage==2)) {
	//ActiveLayer=MyMapType;
	isTopic=false;			
    }
  
	var i=0;	
	for (i=0; i<layerCount; i++)
	{	
		if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() )
		{
			setActiveLayer(i);
		}		
	}
	NowLevel=Level;
	var looplevel;
	var myzoombutton = ""
	for ( looplevel=1; looplevel<=8; looplevel++)
	{
		myzoombutton= "btn_z"+looplevel.toString();		
		parent.ToolsFrame.document.images[myzoombutton].src= imagesUrl + ""+myzoombutton+".gif";						
	}
	myzoombutton= "btn_z"+Level.toString();
	parent.ToolsFrame.document.images[myzoombutton].src= imagesUrl + ""+myzoombutton+"_o.gif";			
	var LoopLayer;
	for (LoopLayer=0; LoopLayer<layerCount; LoopLayer++)
	{	
		TDLLayerVisible(LayerName[LoopLayer], false);		
	}
	var MapCenterX=((parseFloat(eRight)-parseFloat(eLeft))/2)+parseFloat(eLeft);
	var MapCenterY=((parseFloat(eTop)-parseFloat(eBottom))/2)+parseFloat(eBottom);
	var ZoomValue;
	
	if ( Level == 1 )
	{	
		ZoomValue = 45000/2;	//45000
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		//TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("AREA_18", true );	
		//TDLLayerVisible("DIST_NAME", true );	
		TDLLayerVisible("HWAY", true );
		TDLLayerVisible("TRAIN", true );		
	}

	else if ( Level == 2 )
	{
		ZoomValue = 15000/2;	//22000
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		//TDLLayerVisible("VEGE_10K", true );
		//TDLLayerVisible("AREA_18", true );	
		TDLLayerVisible("HWAY", true );	
		TDLLayerVisible("HWAY_NAME", true );			
		TDLLayerVisible("TRAIN", true );
		TDLLayerVisible("PLACE_10K_1", true);		
	}
	
	else if ( Level == 3 )
	{
		ZoomValue = 6000/2;		//8500
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("HWAY", true );			
		TDLLayerVisible("HWAY_NAME", true );	
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("MRJ_ROAD", true );			
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);		
		TDLLayerVisible("ROAD_10K", true);			
		if (ActiveLayer=="DINING_G_10A") {
			TDLLayerVisible(ActiveLayer, true );
		}		
	}
	else if ( Level == 4 )
	{		
		ZoomValue = 1500/2;		//1800
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);	
		TDLLayerVisible("RELIPOLY_10K", true);	
		TDLLayerVisible("RELI_10K", true);				
		TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("STREET_CLN", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );	
		TDLLayerVisible("BLDGPOLY_10K_1", true );	
		if (ActiveLayer=="DINING_G_10A") {
			TDLLayerVisible(ActiveLayer, true );
		}		
	}		
	else if ( Level == 5 )
	{
		ZoomValue = 750/2;			//1000
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("TRAIN_ACCESS", true);
		TDLLayerVisible("RAILPOLY_10K", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);	
		TDLLayerVisible("RELIPOLY_10K", true);	
		TDLLayerVisible("RELI_10K", true);				
		TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("ROADPOLY_10K", true);		
		TDLLayerVisible("STREET_CLN_1", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );		
		TDLLayerVisible("BLDGPOLY_10K", true );	
		if (WebPage==1)	//Add by hkm 2004-01-18
		{
			TDLLayerVisible("BLDGPOLY_1K_1", true );			
		} else {
			TDLLayerVisible(ActiveLayer, true );
		}
		
	}			
	else if ( Level == 6 )
	{
		ZoomValue = 380/2;		//480
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("TRAIN_ACCESS", true);
		TDLLayerVisible("RAILPOLY_10K", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);	
		TDLLayerVisible("RELIPOLY_10K", true);	
		TDLLayerVisible("RELI_10K", true);				
		//TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("ROADPOLY_10K", true);		
		TDLLayerVisible("STREET_CLN_1", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );		
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible(ActiveLayer, true );
	}	
	else if ( Level == 7 )
	{
		ZoomValue = 190/2;		//230
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("TRAIN_ACCESS", true);
		TDLLayerVisible("RAILPOLY_10K", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);	
		TDLLayerVisible("RELIPOLY_10K", true);	
		TDLLayerVisible("RELI_10K", true);				
		//TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("ROADPOLY_10K", true);		
		TDLLayerVisible("STREET_CLN_1", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );		
		TDLLayerVisible("BLDGPOLY_1K", true );		
		//TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible(ActiveLayer, true );
		
	}
	else if ( Level == 8 )
	{
		ZoomValue = 80/2;		//90
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("TRAIN_ACCESS", true);
		TDLLayerVisible("RAILPOLY_10K", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);	
		TDLLayerVisible("RELIPOLY_10K", true);	
		TDLLayerVisible("RELI_10K", true);				
		//TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("ROADPOLY_10K", true);		
		TDLLayerVisible("STREET_CLN_1", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );		
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible(ActiveLayer, true );
	}

	if (WebPage==1) {	//Add by zhonghong		
		if ((ActiveToLight == "drawPoint") && (ActiveNoLight=="NochangeCenter") || (ActiveToLight == "AreaLocate")){
			MapCenterX = parseFloat(pointX);
			MapCenterY = parseFloat(pointY);
			ActiveNoLight="";
		}
		if ((ActiveLayer == "SITEPOLY_1K") || (ActiveLayer == "BLDGPOLY_1K") || (ActiveLayer == "BLDGPOLY_1K_1")) { 
			if ( Level == 5 ) {
				ActiveLayer="BLDGPOLY_1K_1";	
			} else {
				ActiveLayer="BLDGPOLY_1K";	
			}	
			for (i=0; i<layerCount; i++) {	
				if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
					setActiveLayer(i);
				}	
			}
		} 
		if ( Level >= 5 ) {
			TDLLayerVisible(ActiveLayer, true );
		}
		
	}
		
	if((WebPage==2) && (ActiveToLight == "drawPoint") && (ActiveNoLight=="NochangeCenter")){	   
	    MapCenterX = parseFloat(pointX);
		MapCenterY = parseFloat(pointY);
		ActiveNoLight="";
	}
	if((WebPage==4) && (ActiveToLight == "AreaLocate")){	   
	    MapCenterX = parseFloat(pointX);
		MapCenterY = parseFloat(pointY);
	}
	
	if (WebPage==5){	//Add by hkm
	    //add by hkm 2004-01-12
		if ( Level >= 5 ) {	
			TDLLayerVisible("PARKING", true); 
			TDLLayerVisible("TRAM", true); 
		} else {
			TDLLayerVisible("PARKING", false); 
			TDLLayerVisible("TRAM", false); 
		}
	    //add by hkm 2004-01-12
	    
		//if ((isP2P) && (ActiveNoLight=="NochangeCenter")){
		if (isP2P) {
			if ( Level >= 5 ) {	      
				//ActiveLayer="BLDGPOLY_1K";
				ActiveLayer="BUSSTOP";	//add by hkm 2003-08-01
				TDLLayerVisible(ActiveLayer, true );	//add by hkm 2003-08-01
				var i=0;	
				for (i=0; i<layerCount; i++) {	
					if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
						setActiveLayer(i);
					}	
				}
			}
			if ( ActiveNoLight=="NochangeCenter" ) {
				ActiveNoLight="";
				MapCenterX=parseFloat(SptX);
				MapCenterY=parseFloat(SptY);
			}			
		    if ( Level <= 5 ) {
				TDLLayerVisible("BLDGPOLY_1K", false );
		    }
		    TDLLayerVisible("FERRY", false);
		    TDLLayerVisible("GMB", false );
		} else if ( Level >= 4 ) {
			ActiveLayer="GMB"
			var i=0;	
			for (i=0; i<layerCount; i++) {	
				if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
					setActiveLayer(i);
				}	
			}
		   TDLLayerVisible("FERRY", true);
		   TDLLayerVisible("GMB", true );
		   
		   //add by hkm 2003-12-05
		   if ((ActiveToLight == "drawPoint") && (ActiveNoLight=="NochangeCenter")) {
				MapCenterX = parseFloat(pointX);
				MapCenterY = parseFloat(pointY);
				ActiveNoLight="";
				ActiveNoLight=""
				//alert(MapCenterX+";"+MapCenterY)
		   }
		}		
	}
	
	if (isRoute) {	
		isRoute=false	
		if 	(StopCount>0) {
			if (StopCount>1) {
				var mid_stop=Math.round(StopCount/2);
				if (parseFloat(StopX[0])>parseFloat(StopX[mid_stop])) {
					MapCenterX=parseFloat(StopX[0])-500;	//centerX move to left
				} else {
					MapCenterX=parseFloat(StopX[0])+500;	//centerX move to right
				}
				
				if (parseFloat(StopY[0])>parseFloat(StopY[mid_stop])) {
					MapCenterY=parseFloat(StopY[0])-300;	//MapCenterY move to bottom
				} else {
					MapCenterY=parseFloat(StopY[0])+300;	//MapCenterY move to top
				}							
			} else {
				MapCenterX=parseFloat(StopX[0]);
				MapCenterY=parseFloat(StopY[0]);
			}
		}
			
		eLeft   = MapCenterX - ZoomValue;
		eRight  = MapCenterX + ZoomValue;
		eTop    = MapCenterY + ZoomValue;
		eBottom = MapCenterY - ZoomValue;		
		//eLeft   = eLeft - 125;
		//eRight  = eRight + 125;
		//eTop    = eTop + 125;
		//eBottom = eBottom - 125;
	} else {	
		eLeft   = MapCenterX - ZoomValue;
		eRight  = MapCenterX + ZoomValue;
		eTop    = MapCenterY + ZoomValue;
		eBottom = MapCenterY - ZoomValue;
	}	  
	
		//TDLZoomToolControl();	//aimsCustom.js

	if (WebPage==6){
	  TDLscrollMap();
	  var theText = TDLWriteXML();
	}else{
	  //TDLscrollMap();	
	  var theText = writeXML();
	}
	sendToServer(imsURL,theText,1);
}

/******************************************************/

function TDLToolsZoomLevel(){
	if ((isTopic) && (WebPage==2)) {//?
		ActiveLayer=MyMapType;
		isTopic=false;			
	}
	var i=0;	
	for (i=0; i<layerCount; i++)
	{	
		if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() )
		{
			setActiveLayer(i);
		}		
	}	
	
	var ZoomValue=Math.abs(eRight-eLeft);
	var looplevel;
	var myzoombutton = ""
	for ( looplevel=1; looplevel<=8; looplevel++)
	{
		myzoombutton= "btn_z"+looplevel.toString();	
		parent.ToolsFrame.document.images[myzoombutton].src=imagesUrl + ""+myzoombutton+".gif";						
	}	
    var LoopLayer;
	for (LoopLayer=0; LoopLayer<layerCount; LoopLayer++)
	{	
		TDLLayerVisible(LayerName[LoopLayer], false);		
	}

	if ( ZoomValue>=45000 )	//level 1
	{	
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		//TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("AREA_18", true );	
		//TDLLayerVisible("DIST_NAME", true );	
		TDLLayerVisible("HWAY", true );
		TDLLayerVisible("TRAIN", true );	
		parent.ToolsFrame.document.images["btn_z1"].src=imagesUrl + "btn_z1_o.gif";	
		NowLevel=1;
	}

	else if ( ZoomValue>=15000 )	//level 2
	{
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		//TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("PARK_10K", true );
		//TDLLayerVisible("AREA_18", true );	
		TDLLayerVisible("HWAY", true );	
		TDLLayerVisible("HWAY_NAME", true );			
		TDLLayerVisible("TRAIN", true );
		TDLLayerVisible("PLACE_10K_1", true);			
		parent.ToolsFrame.document.images["btn_z2"].src=imagesUrl + "btn_z2_o.gif";	
		NowLevel=2;
	}
	
	else if ( ZoomValue>=6000 )	//level 3
	{
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("HWAY", true );			
		TDLLayerVisible("HWAY_NAME", true );	
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("MRJ_ROAD", true );			
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);			
		TDLLayerVisible("ROAD_10K", true);		
		if (ActiveLayer=="DINING_G_10A") {
			TDLLayerVisible(ActiveLayer, true );
		}
		parent.ToolsFrame.document.images["btn_z3"].src=imagesUrl + "btn_z3_o.gif";	
		NowLevel=3;	
	}
	else if ( ZoomValue>=1500 )	//level 4
	{		
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);
		TDLLayerVisible("RELIPOLY_10K", true);	
		TDLLayerVisible("RELI_10K", true);				
		TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("STREET_CLN", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );		
		TDLLayerVisible("BLDGPOLY_10K_1", true );		
		if (ActiveLayer=="DINING_G_10A") {
			TDLLayerVisible(ActiveLayer, true );
		}
		parent.ToolsFrame.document.images["btn_z4"].src=imagesUrl + "btn_z4_o.gif";
		NowLevel=4;
	}		
	else if ( ZoomValue>=750 )	//level 5	480
	{
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("TRAIN_ACCESS", true);
		TDLLayerVisible("RAILPOLY_10K", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);
		TDLLayerVisible("RELIPOLY_10K", true);
		TDLLayerVisible("RELI_10K", true);					
		TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("ROADPOLY_10K", true);		
		TDLLayerVisible("STREET_CLN_1", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );		
		TDLLayerVisible("BLDGPOLY_10K", true );		
		if (WebPage==1)	//Add by hkm 2004-01-18
		{
			TDLLayerVisible("BLDGPOLY_1K_1", true );			
		} else {
			TDLLayerVisible(ActiveLayer, true );
		}
		parent.ToolsFrame.document.images["btn_z5"].src=imagesUrl + "btn_z5_o.gif";
		NowLevel=5;
	}			
	else if ( ZoomValue>=380 )	//level 6	230
	{
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("TRAIN_ACCESS", true);
		TDLLayerVisible("RAILPOLY_10K", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);	
		TDLLayerVisible("RELIPOLY_10K", true);
		TDLLayerVisible("RELI_10K", true);				
		//TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("ROADPOLY_10K", true);		
		TDLLayerVisible("STREET_CLN_1", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );		
		TDLLayerVisible("BLDGPOLY_1K", true );
	    TDLLayerVisible(ActiveLayer, true );
		parent.ToolsFrame.document.images["btn_z6"].src=imagesUrl + "btn_z6_o.gif";
		NowLevel=6;
	}	
	else if ( ZoomValue>=190 )	//level 7	90
	{
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("TRAIN_ACCESS", true);
		TDLLayerVisible("RAILPOLY_10K", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);	
		TDLLayerVisible("RELIPOLY_10K", true);	
		TDLLayerVisible("RELI_10K", true);			
		//TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("ROADPOLY_10K", true);		
		TDLLayerVisible("STREET_CLN_1", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );		
		TDLLayerVisible("BLDGPOLY_1K", true );		
		//TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible(ActiveLayer, true );
		parent.ToolsFrame.document.images["btn_z7"].src=imagesUrl + "btn_z7_o.gif";
		NowLevel=7;
	}
	else	//if ( ZoomValue>=80 )	//level 8	45
	{
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("VEGE_10K", true );
		TDLLayerVisible("PARK_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("TRAIN_ACCESS", true);
		TDLLayerVisible("RAILPOLY_10K", true);
		TDLLayerVisible("PLACE_10K", true);			
		TDLLayerVisible("HYDRPOLY_10K", true);		
		TDLLayerVisible("HYDR_10K", true);	
		TDLLayerVisible("RELIPOLY_10K", true);	
		TDLLayerVisible("RELI_10K", true);				
		//TDLLayerVisible("ROAD_10K", true);			
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("ROADPOLY_10K", true);		
		TDLLayerVisible("STREET_CLN_1", true );		
		TDLLayerVisible("SITEPOLY_1K", true );	
		TDLLayerVisible("FACIPOLY_10K", true );		
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible(ActiveLayer, true );
		parent.ToolsFrame.document.images["btn_z8"].src=imagesUrl + "btn_z8_o.gif";
		NowLevel=8;
	}		
	
	if (WebPage==1) {	//Add by zhonghong			
		if ((ActiveLayer == "SITEPOLY_1K") || (ActiveLayer == "BLDGPOLY_1K") || (ActiveLayer == "BLDGPOLY_1K_1")) { 
			if ( NowLevel == 5 ) {
				ActiveLayer="BLDGPOLY_1K_1";	
			} else {
				ActiveLayer="BLDGPOLY_1K";	
			}	
			for (i=0; i<layerCount; i++) {	
				if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
					setActiveLayer(i);
				}	
			}
		} 
		if ( NowLevel >= 5 ) {
			TDLLayerVisible(ActiveLayer, true );
		}
		
	}
	
	if (WebPage==5){	//Add by hkm
	    //add by hkm 2004-01-12
		if ( NowLevel >= 5 ) {	
			TDLLayerVisible("PARKING", true); 
			TDLLayerVisible("TRAM", true); 
		} else {
			TDLLayerVisible("PARKING", false); 
			TDLLayerVisible("TRAM", false); 
		}
	    //add by hkm 2004-01-12
		if(isP2P){	
			if ( NowLevel >= 5 ) {      
				//ActiveLayer="BLDGPOLY_1K";
				ActiveLayer="BUSSTOP";	//add by hkm 2003-08-01
				TDLLayerVisible(ActiveLayer, true );	//add by hkm 2003-08-01
				var i=0;	
				for (i=0; i<layerCount; i++) {	
					if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
						setActiveLayer(i);
					}	
				}
			}
			if ( NowLevel <= 5 ) {
				TDLLayerVisible("BLDGPOLY_1K", false );
			}
			TDLLayerVisible("FERRY", false);
			TDLLayerVisible("GMB", false );
		} else if ( NowLevel >= 4 ) {
			ActiveLayer="GMB"
			var i=0;	
			for (i=0; i<layerCount; i++) {	
				if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
					setActiveLayer(i);
				}	
			}
		   TDLLayerVisible("FERRY", true);
		   TDLLayerVisible("GMB", true );
		}		
	}
// For info show (TextFrame) Aug 2008 start
	if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){
		var obj=parent.document.getElementById("TextFrame").contentDocument
	}else{
		var obj=top.frames("TextFrame").document
	}
	if(obj.getElementById('bufferid')){
		obj.getElementById('bufferid').style.display = (NowLevel<5) ? 'none' : '';
	}
// For For info show (TextFrame)  Aug 2008 end
	//TDLZoomToolControl();	//aimsCustom.js
}



/**************set layer visible ****************************/
function TDLLayerVisible(VisibleName, Flag)
{	
	var i=0;	
	for (i=0; i<layerCount; i++)
	{	
		if (LayerName[i].toUpperCase() == VisibleName.toUpperCase() )
		{
			if (Flag == true)
				LayerVisible[i] = 1;
			else
				LayerVisible[i] = 0;
		}
		
	}
}


//called by aimsXML.ProcessXML()--identify(XMLMode=7)
function TDLTransportparseFields(theReply)
{
	//alert(theReply);
	var fList="";
	var i=0;
	var pos = theReply.indexOf("<FEATURECOUNT");
	var startpos = pos + 21;
	var endpos = theReply.indexOf(dQuote,startpos);
	var tempString = theReply.substring(startpos,endpos);
	var featureCount = parseInt(tempString);
    //alert(featureCount);

    if (featureCount>0)
    {            
      endpos = 1;
      for (i=0;i<featureCount;i++)
      {
		startpos = theReply.indexOf("<FIELDS ",endpos);
		startpos = startpos + 8;
		endpos =theReply.indexOf(" />",startpos);
		tempString = theReply.substring(startpos,endpos);
		if (featureCount>1) tempString = "|" + tempString;
		fList = fList + tempString;
      }
      //alert(fList);	// + '1'+ ActiveLayer);
     }
     
     var QueryStr="(";		//use GMB.GEO_REFNO as Query Where string
     if (featureCount>0)
     {	
		startpos=1;
		for (i=0;i<featureCount;i++)
		{
			pos = fList.indexOf("SHAPE.fid=",startpos);
			startpos = pos + 11;	//length of "SHAPE.fid="+1
			endpos = fList.indexOf(dQuote,startpos);
			if (QueryStr=="(")
				{ QueryStr = QueryStr + "'" + fList.substring(startpos,endpos) + "'"; }
			else
				{ QueryStr = QueryStr + "," + "'" + fList.substring(startpos,endpos) + "'"; }
			startpos=endpos;
		}
		QueryStr=QueryStr + ")"
		//alert(QueryStr);
		var TableName="GMB";
		var FieldName="SHAPE";
		var FieldValue=QueryStr;
		
		TDLGetInfoData(TableName,FieldName,FieldValue);
		hideRetrieveData();		
	}    
    
    if (featureCount==0)
    {
		hideRetrieveData();
		alert("沒有地圖資料!");
    }
    
    //alert(QueryStr);
}

function TDLInfoparseFields(theReply)
{
	//alert(theReply);
	var fList="";
	var i=0;
	var pos = theReply.indexOf("<FEATURECOUNT");
	var startpos = pos + 21;
	var endpos = theReply.indexOf(dQuote,startpos);
	var tempString = theReply.substring(startpos,endpos);
	var featureCount = parseInt(tempString);
	if ((WebPage==2) || (WebPage==3) ||(WebPage==4)||(WebPage==5)||(WebPage==7)) {
	   var parseLayer=ActiveLayer.toUpperCase();
	}
	
    if (featureCount>0)
    {            
      endpos = 1;
      for (i=0;i<featureCount;i++)
      {
		startpos = theReply.indexOf("<FIELDS ",endpos);
		startpos = startpos + 8;
		endpos =theReply.indexOf(" />",startpos);
		tempString = theReply.substring(startpos,endpos);
		if (featureCount>1) tempString = "|" + tempString;
		fList = fList + tempString;
      }
      //alert(fList);	// + '1'+ ActiveLayer);
     }
     
     var QueryStr="(";		
     if (featureCount>0)
     {	
		if (ActiveLayer=="DINING_G"){ //for update DINING_G 2003/06/03
			startpos=1;
			for (i=0;i<featureCount;i++)
			{
				pos = fList.indexOf(parseLayer+".BRANCH_ID=",startpos);
				startpos = pos + parseLayer.length + 12;	
				endpos = fList.indexOf(dQuote,startpos);
				if (QueryStr=="(")
					{ QueryStr = QueryStr + "'" + fList.substring(startpos,endpos) + "'"; }
				else
					{ QueryStr = QueryStr + "," + "'" + fList.substring(startpos,endpos) + "'"; }
				startpos=endpos;
			}
			QueryStr=QueryStr + ")"
		
			//alert(QueryStr);
			var TableName=parseLayer;
			var FieldName="BRANCH_ID";
			var FieldValue=QueryStr;
		}else{
			startpos=1;
			for (i=0;i<featureCount;i++)
			{
				pos = fList.indexOf(parseLayer+".GEO_REFNO=",startpos);
				startpos = pos + parseLayer.length + 12;	
				endpos = fList.indexOf(dQuote,startpos);
				if (QueryStr=="(")
					{ QueryStr = QueryStr + "'" + fList.substring(startpos,endpos) + "'"; }
				else
					{ QueryStr = QueryStr + "," + "'" + fList.substring(startpos,endpos) + "'"; }
				startpos=endpos;
			}
			QueryStr=QueryStr + ")"
		
			//alert(QueryStr);
			var TableName=parseLayer;
			var FieldName="GEO_REFNO";
			var FieldValue=QueryStr;
		}
		
		TDLGetInfoData(TableName,FieldName,FieldValue);
		hideRetrieveData();		
	}    
    
    if (featureCount==0)
    {
		hideRetrieveData();
		alert("沒有地圖資料!");
    }
    
    //alert(QueryStr);
}


//open a new window for show census data--- without any toolbar...
function TDLGetInfoData(TableName,FieldName,FieldValue)
{
	var href=document.location.href;
	var href1 = href.toUpperCase();	
	var pos = href1.indexOf("MAPFRAME.HTM",0);
	var url=href.substring(0,pos) + ""+ InfoPath +"/GetInfoData.asp?TableName=" +TableName + "&FieldName=" + FieldName + "&FieldValue=" + FieldValue;
	//alert(url);
	var newwin=window.open(url,"Data",'width=320,height=380,status=no,directories=no,scrollbars=yes,resizable=no,location=no,menubar=no,toolbar=no,alwaysLowered=yes');
	//newwin.focus();
}

// add GMB Mid terminus stop to map, called by writeXML() in aimsXML.js
function TDLaddStopToMap(){
	var theString = "";
	if ((StopCount>0) && (NowLevel>3)) {
		theString += '<LAYER type="ACETATE" name="theStop">\n';
		for (var i=0;i<StopCount;i++) {	
			theString += '<OBJECT units="DATABASE">\n';
			theString += '<POINT coords="' + StopX[i] +' ' + StopY[i] + '">\n';					
			if ( i==0 )
				theString += '<RASTERMARKERSYMBOL image="'+sharePath+'logo\\gmbstart.gif" overlap="false"/>\n';
			else if ( i==StopCount-1 && GMBType != 0 )
				theString += '<RASTERMARKERSYMBOL image="'+sharePath+'logo\\gmbend.gif" overlap="false"/>\n';
			else
				theString += '<RASTERMARKERSYMBOL image="'+sharePath+'logo\\gmbstop.gif" overlap="false"/>\n';
			theString += '</POINT>';
			theString += '</OBJECT>\n';
		}
		theString += '\n</LAYER>\n';
		//alert(theString);
	}
  
	return theString;
}

//for Mutil-Transportion Route Search
function TDLP2P(){
     isP2P=true;
     TDLscrollMap();
     TDLZoomLevel(6);
}

//for Mutil-Transportion Route Search
function TDLAddPointToMap(){
  var theString = "";
  if(NowLevel>3){
	 theString +=  '<LAYER type="ACETATE" name="thePoint">\n';
	 theString +=  '<OBJECT units="DATABASE">\n';
	 theString +=  '<POINT coords="' + SptX +' ' + SptY + '">\n';
	 theString +=  '<SIMPLEMARKERSYMBOL color="255,0,0" type ="circle" width="13"></SIMPLEMARKERSYMBOL >\n';
	 theString += '</POINT>';
	 theString += '</OBJECT>\n';
	 theString += '\n</LAYER>\n';
	// alert(theString);
   
  }
  return theString;
}


//*************************Start by zhonghong**********************
function LocateFieldData(theReply) {
	var mapIDField = "GEO_REFNO";
	var dbIDField = "GEO_REFNO";
	var dbFieldList = "*";
	dbTableList = ActiveLayer;

	if (dbTableList == "STREET_CLN_1"){ dbTableList = "STREET_CLN";}
	if (dbTableList == "TRAIN_NAME_1"){ dbTableList = "TRAIN_NAME";}
	if(dbTableList == "MEDTCAL_1"){ dbTableList = "MEDTCAL";}
	if(dbTableList == "PUB_SER_1"){ dbTableList = "PUB_SER";}
	if(dbTableList == "RECREATION_1"){ dbTableList = "RECREATION";}
	if(dbTableList == "EDUCATION_1"){ dbTableList = "EDUCATION";}		
	
	var fList="";
	var iList="";
	var fieldPair = "";
	var fieldString = mapIDField + "=";
	var qpos = 0;
	var pos = theReply.indexOf("<FEATURECOUNT count=");
	var startpos = pos + 21;
	var endpos = theReply.indexOf(dQuote,startpos);
	var tempString = theReply.substring(startpos,endpos);
	var featureCount = parseInt(tempString);

	if (featureCount > 0) {
		endpos = 1;
		for (var i=0;i<featureCount;i++) {
			var startpos2 = theReply.indexOf("<FIELDS ",endpos);
			pos = startpos2 + 8;
			qpos = fieldString.length + 1;
			startpos =theReply.indexOf(fieldString,pos);
			startpos = startpos + qpos
			endpos = theReply.indexOf(dQuote,startpos);
			tempString = theReply.substring(startpos,endpos);

			if (i>0) tempString = "-,-" + tempString;
			fList = fList + tempString;
		}
		//alert(fList);
		var featureString = "select " + dbFieldList + " from " + dbTableList + " where " + dbIDField + " IN (" + fList + ") order by " + dbIDField;	
		writeDBResponsePage(featureString);
		hideRetrieveData();
	} 
	
	if (featureCount==0)
    {
		hideRetrieveData();
		alert("沒有地圖資料!");
    } 
	
}
function writeDBResponsePage(featureString) {
	var startpos = featureString.indexOf("IN (");
	startpos += 4;
	var endpos = featureString.indexOf(")",startpos);
	if (endpos==-1) endpos = featureString.length;
	var flist = featureString.substring(startpos, endpos);
	//alert("Where Clause: " + flist);
	
	var href=document.location.href;
	var href1 = href.toUpperCase();
	var pos = href1.indexOf("MAPFRAME.HTM",0);
	var url=href.substring(0,pos) + "LocationMap/locatInfo.asp?FieldValue=" + flist + "&tablename=" + dbTableList + "";
	//var url=httpurl + "LocationMap_c/DBForm.asp?FieldValue=" + flist + "&tablename=" + dbTableList + "&mapServer=" + mapService + "";
	var newwin=window.open(url,"Data",'width=320,height=380,status=no,directories=no,scrollbars=yes,resizable=no,location=no,menubar=no,toolbar=no,alwaysLowered=yes');
	newwin.focus();

	featureString=null;
}

function addSelectToMap1(){
	var selString = "";
	selString +='<LAYER type="ACETATE" name="pubfaci">\n';
	selString += '<OBJECT units="database">\n<POINT coords="' + pointX +' ' + pointY + '">\n'; //<POINT coords="60 80">\n';
	selString +='<SIMPLEMARKERSYMBOL type="circle" color="255,0,0" width="10">\n';
	selString +='</SIMPLEMARKERSYMBOL>\n';
	selString +='</POINT>\n</OBJECT>\n';
	selString +='</LAYER>\n';

	return selString;
}
function addSelectToMap2(){
	var selString = "";
	var sFactor = (eRight-eLeft) / iWidth
	
	if (((sFactor>=LayerMinScale[ActiveLayerIndex]) && (sFactor<=LayerMaxScale[ActiveLayerIndex]) && (LayerVisible[ActiveLayerIndex]==1)) || (canSelectInvisible)) {
		if ((selectCount>0) && (showSelectedFeatures)) {
			selString +='<LAYER type="featureclass" name="Selected Features" visible="true">\n';

			if (ActiveToLight == "pointFalse" || ActiveToLight == "") {
				selString +='<DATASET fromlayer="BLDGPOLY_1K" />\n';
			} else {
				selString +='<DATASET fromlayer="' + ActiveToLight + '" />\n'; 
			}
			//selString +='<DATASET fromlayer="' + LayerID[ActiveLayerIndex] + '" />\n';
			selString +='<SPATIALQUERY  where="' + setQueryString + '"/>\n';
			selString +='<SIMPLERENDERER>\n';

			if (selectType=="point") {
				selString +='<SIMPLEMARKERSYMBOL color="' + selectColor + '" type="Circle" width="5" />\n';
			} else if (selectType=="line") {
				selString +='<SIMPLELINESYMBOL type="SOLID" color="' + selectColor + '" width="3" />\n';
			} else {
				selString +='<SIMPLEPOLYGONSYMBOL fillcolor="' + selectColor + '" filltype="solid" filltransparency ="0" boundarywidth ="3" boundarycolor="255,0,0" />\n';
			}
			selString +='</SIMPLERENDERER>\n';
			selString +='</LAYER>\n';
			//alert(selString);
		}		
	}
	return selString;
}

function TDLIdentify() {
	BufferLayerName = BufferLayerName.toUpperCase();

	if 	(BufferLayerName!=''){
		for (var li=0;li<layerCount;li++) {		
			if ( LayerName[li] == BufferLayerName ) {
				ActiveLayer=LayerID[li];
				ActiveLayerIndex=li;
			}
		}
	}

	TDLLayerVisible(ActiveLayer,true );
	BufferLayerName = "";	
	sendMapXML();
}

function TDLWebPage() {
	theString = '<ARCXML version="1.1">\n<REQUEST>\n<GET_SERVICE_INFO  renderer="false" extensions="true" />\n';
	theString += '</REQUEST>\n</ARCXML>';

	if (WebPage==1)	{
		InfoPath = "LocationMap";
	}else if (WebPage==2)	{
		InfoPath = "InfoMap_c";
	}else if (WebPage==3) {
		InfoPath = "DiningMap";
	}else if (WebPage==4) {
		InfoPath = "TouristMap";
	}else if (WebPage==5) {
		InfoPath = "TransportMap";
	}else if (WebPage==6) {
		InfoPath = "CensusMap";
	}else if (WebPage==7) {
		InfoPath = "PhotoMap";
	} else if (WebPage==8) {
		InfoPath = "SARSMap";
	}
	
	isP2P = false;
	MyMapType="";
	if (imsURL!="") {
		imsQueryURL= imsURL + "&CustomService=Query";
		imsGeocodeURL = imsURL + "&CustomService=Geocode";
	}
	sendToServer(imsURL,theString,18);
}

///
//add by ljh 2002.4.17
function TDLzoomToPoint()
{
	var i=0;	
	for (i=0; i<layerCount; i++) {	
		if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
			setActiveLayer(i);
		}	
	}

	if (WebPage==5)	{	//add by hkm  2003-12-05
	  if(NowLevel>4){
	    TDLZoomLevel(NowLevel);
	  }else {
	    TDLZoomLevel(6);
	  }
	} else {
	  if(NowLevel>6){
	    TDLZoomLevel(NowLevel);
	  }else {
	    TDLZoomLevel(6);
	  }
	}
	 TDLscrollMap();
}
//end by ljh

function TDLzoomAreaLocate()
{
 var i=0;	
 for (i=0; i<layerCount; i++) {	
 	if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
 		setActiveLayer(i);
 	}	
 }
    TDLZoomLevel(NowLevel);
    TDLscrollMap();
}

function TDLscrollMap() {
	lsx =30;
	lsy =60;
	lswidth = screen.Width;	
	//alert(lswidth);
	if(lswidth < 1050){lsx = 50;lsy = 80;};
	if(lswidth < 1000){lsx = 160;lsy = 160;};
	if(lswidth < 680){lsx = 250;lsy = 220;};
	var version = parseInt(navigator.appVersion.substring(0,1));
	if(navigator.appName == "Netscape" && navigator.appVersion.indexOf("Gold") > -1 ){top.MapFrame.scroll(lsx,lsy);}
	else if(version>3){top.MapFrame.scrollTo(lsx,lsy);}
}



































//-------------------------- Next JavaScript for SARS only -----------------------------------

var SARSVisibleLayer = "SARS_LIST";
var SARSVisibleLayer_lsb = "";
var isLSB=false;
var isLSB1=false;

function TDLZoomLevel_1(Level) {
	var SARSVisibleLayer1="";	
	SARSVisibleLayer1=SARSVisibleLayer+"1";
	var SARSVisibleLayer_lsb1="";
	SARSVisibleLayer_lsb1=SARSVisibleLayer_lsb+"1"
	
	if (Level>=5) {
		isLSB=false;
	} else if (isLSB1) {
		isLSB=true;
	}
	
	TDLscrollMap();

	if ((isTopic) && (WebPage==2)) {
	//ActiveLayer=MyMapType;
	isTopic=false;			
    }
  
 // alert(ActiveLayer);
	var i=0;
	
	if (Level>=5) {
		if ((ActiveLayer=="HOSPITAL") || (ActiveLayer=="DOCTORLIST") || (ActiveLayer=="DISTRICT_COUNCIL")) {
			//ActiveLayer=ActiveLayer;
		} else {
			ActiveLayer="BLDGPOLY_1K";
		}	
	} else {
		ActiveLayer="SARS_AREA";
	}
		
	for (i=0; i<layerCount; i++)
	{	
		if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() )
		{
			setActiveLayer(i);
		}		
	}
	NowLevel=Level;
	var looplevel;
	var myzoombutton = ""
	
	if (WebPage == 81){
		parent.ToolsFrame.document.images["btn_z1"].src= imagesUrl + "btn_z1.gif";
		parent.ToolsFrame.document.images["btn_z6"].src= imagesUrl + "btn_z6.gif";
		parent.ToolsFrame.document.images["btn_z8"].src= imagesUrl + "btn_z8.gif";
	}
	
	NowLevel=Level;
	var looplevel;
	var myzoombutton = ""
	for ( looplevel=1; looplevel<=8; looplevel++)
	{
		myzoombutton= "btn_z"+looplevel.toString();		
		parent.ToolsFrame.document.images[myzoombutton].src= imagesUrl + ""+myzoombutton+".gif";						
	}
	myzoombutton= "btn_z"+Level.toString();
	parent.ToolsFrame.document.images[myzoombutton].src= imagesUrl + ""+myzoombutton+"_o.gif";	
			
	var LoopLayer;
	for (LoopLayer=0; LoopLayer<layerCount; LoopLayer++)
	{	
		TDLLayerVisible(LayerName[LoopLayer], false);		
	}
	
	if (NowLevel==1) {
		eLeft=801022.188;
		eRight=863709.063;
		eTop=847700.00;
		eBottom=801185.438;
	}
	
	var MapCenterX=((parseFloat(eRight)-parseFloat(eLeft))/2)+parseFloat(eLeft);
	var MapCenterY=((parseFloat(eTop)-parseFloat(eBottom))/2)+parseFloat(eBottom);
	var ZoomValue;
	
	if ( Level == 1 )
	{
		ZoomValue = 45000/2;
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", false );
		TDLLayerVisible("DIST_NAME", false );
		TDLLayerVisible("HWAY", false );
		TDLLayerVisible("TRAIN", false );		
		TDLLayerVisible("AREA_18", false );
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer, true );
		TDLLayerVisible(SARSVisibleLayer_lsb, true );
	}

	else if ( Level == 2 )
	{
		ZoomValue = 22000/2;
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", false );
		TDLLayerVisible("AREA_18", false );	
		TDLLayerVisible("HWAY", false );			
		TDLLayerVisible("TRAIN", false );
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		////TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer, true );
		TDLLayerVisible(SARSVisibleLayer_lsb, true );
	}
	
	else if ( Level == 3 )
	{
		ZoomValue = 8500/2;
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", false );
		//TDLLayerVisible("PLACE_NAME", true );
		TDLLayerVisible("HWAY", true );			
		TDLLayerVisible("HWAY_NAME", true );	
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		////TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer, true );
		TDLLayerVisible(SARSVisibleLayer_lsb, true );
	}
	else if ( Level == 4 )
	{		
		ZoomValue = 1800/2;	
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", false );
		//TDLLayerVisible("PLACE_NAME", true );
		TDLLayerVisible("HWAY_NAME", true );
		TDLLayerVisible("MRJ_ROAD", true );
		TDLLayerVisible("BLDGPOLY_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb, true );
		
	}		
	else if ( Level == 5 )
	{
		ZoomValue = 1000/2;			
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", true );
		//TDLLayerVisible("PLACE_NAME", true );
		TDLLayerVisible("BLDGPOLY_10K", true );
		TDLLayerVisible("STREET_CLN", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible(ActiveLayer, true );
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb1, true );
		
	}			
	else if ( Level == 6 )
	{
		ZoomValue = 480/2;		
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		//TDLLayerVisible("SARS_AREA", false );
		TDLLayerVisible("SITEPOLY_1K", true );
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("STREET_CLN_1", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		//TDLLayerVisible("MTRE1K", true);
		TDLLayerVisible(ActiveLayer, true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb1, true );
		
	}	
	else if ( Level == 7 )
	{
		ZoomValue = 230/2;		
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("AREA_18", true );
		TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("STREET_CLN_1", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		//TDLLayerVisible("MTRE1K", true);
		TDLLayerVisible(ActiveLayer, true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb1, true );
		
	}
	else if ( Level == 8 )
	{
		ZoomValue = 90/2;		
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("STREET_CLN_1", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		//TDLLayerVisible("MTRE1K", true);
		TDLLayerVisible(ActiveLayer, true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb1, true );
		
	}

	if ((WebPage==1) || (WebPage==8)) {	//Add by zhonghong
		if ((ActiveToLight == "drawPoint") && (ActiveNoLight=="NochangeCenter")){
			MapCenterX = parseFloat(pointX);
			MapCenterY = parseFloat(pointY);
			ActiveNoLight="";
		}
		if (ActiveLayer == "SITEPOLY_1K") { 
			ActiveLayer="BLDGPOLY_1K";		
			ActiveLayerIndex=56;
		}
	}
	if((WebPage==2) && (ActiveToLight == "drawPoint") && (ActiveNoLight=="NochangeCenter")){	   
	    MapCenterX = parseFloat(pointX);
		MapCenterY = parseFloat(pointY);
		ActiveNoLight="";
	}
	if((WebPage==4) && (ActiveToLight == "AreaLocate")){	   
	    MapCenterX = parseFloat(pointX);
		MapCenterY = parseFloat(pointY);
	}
	
	if (WebPage==5){	//Add by hkm
		if((isP2P) && (ActiveNoLight=="NochangeCenter")){
		    ActiveNoLight="";	      
	        //ActiveLayer="BLDGPOLY_1K";
	        ActiveLayer="BUSSTOP";	//add by hkm 2003-08-01
	        TDLLayerVisible(ActiveLayer, true );	//add by hkm 2003-08-01
			var i=0;	
			for (i=0; i<layerCount; i++) {	
				if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
					setActiveLayer(i);
				}	
			}
		    MapCenterX=parseFloat(SptX);
		    MapCenterY=parseFloat(SptY);
		    TDLLayerVisible("FERRY", false);
		    TDLLayerVisible("GMB", false );
		    if ( Level <= 5 ) {
				TDLLayerVisible("BLDGPOLY_1K", false );
		    }
		} else if ( Level >= 4 ) {
			ActiveLayer="GMB"
			var i=0;	
			for (i=0; i<layerCount; i++) {	
				if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
					setActiveLayer(i);
				}	
			}
		   TDLLayerVisible("FERRY", true);
		   TDLLayerVisible("GMB", true );
		}		
	}
	
	if (isRoute) {	
		isRoute=false	
		if 	(StopCount>0) {
			if (StopCount>1) {
				var mid_stop=Math.round(StopCount/2);
				if (parseFloat(StopX[0])>parseFloat(StopX[mid_stop])) {
					MapCenterX=parseFloat(StopX[0])-500;	//centerX move to left
				} else {
					MapCenterX=parseFloat(StopX[0])+500;	//centerX move to right
				}
				
				if (parseFloat(StopY[0])>parseFloat(StopY[mid_stop])) {
					MapCenterY=parseFloat(StopY[0])-300;	//MapCenterY move to bottom
				} else {
					MapCenterY=parseFloat(StopY[0])+300;	//MapCenterY move to top
				}							
			} else {
				MapCenterX=parseFloat(StopX[0]);
				MapCenterY=parseFloat(StopY[0]);
			}
		}
			
		eLeft   = MapCenterX - ZoomValue;
		eRight  = MapCenterX + ZoomValue;
		eTop    = MapCenterY + ZoomValue;
		eBottom = MapCenterY - ZoomValue;		
		//eLeft   = eLeft - 125;
		//eRight  = eRight + 125;
		//eTop    = eTop + 125;
		//eBottom = eBottom - 125;
	} else {	
		eLeft   = MapCenterX - ZoomValue;
		eRight  = MapCenterX + ZoomValue;
		eTop    = MapCenterY + ZoomValue;
		eBottom = MapCenterY - ZoomValue;
	}	  
	
		//TDLZoomToolControl();	//aimsCustom.js

	if (WebPage==6){
	  TDLscrollMap();
	  var theText = TDLWriteXML();
	}else{
	  var theText = writeXML();
	}
	sendToServer(imsURL,theText,1);
}

/******************************************************/

function TDLToolsZoomLevel_1() {
	var SARSVisibleLayer1="";	
	SARSVisibleLayer1=SARSVisibleLayer+"1";
	var SARSVisibleLayer_lsb1="";
	SARSVisibleLayer_lsb1=SARSVisibleLayer_lsb+"1"
		
	if ((isTopic) && (WebPage==2)) {//?
		ActiveLayer=MyMapType;
		isTopic=false;			
	}
	
	//alert(NowLevel);
	//alert(ActiveLayer);
	var i=0;
	
	if (NowLevel>=5) {
		if ((ActiveLayer=="HOSPITAL") || (ActiveLayer=="DOCTORLIST")  || (ActiveLayer=="DISTRICT_COUNCIL")) {
			//ActiveLayer=ActiveLayer;
		} else {
			ActiveLayer="BLDGPOLY_1K";
		}	
	} else {
		ActiveLayer="SARS_AREA";
	}
			
	for (i=0; i<layerCount; i++)
	{	
		if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() )
		{
			setActiveLayer(i);
		}		
	}	
	
	var ZoomValue=Math.abs(eRight-eLeft);
	var looplevel;
	var myzoombutton = ""
	if (WebPage == 81){
		parent.ToolsFrame.document.images["btn_z1"].src= imagesUrl + "btn_z1.gif";
		parent.ToolsFrame.document.images["btn_z6"].src= imagesUrl + "btn_z6.gif";
		parent.ToolsFrame.document.images["btn_z8"].src= imagesUrl + "btn_z8.gif";
	}
	
	for ( looplevel=1; looplevel<=8; looplevel++)
	{
		myzoombutton= "btn_z"+looplevel.toString();	
		parent.ToolsFrame.document.images[myzoombutton].src=imagesUrl + ""+myzoombutton+".gif";						
	}	
		
    var LoopLayer;
	for (LoopLayer=0; LoopLayer<layerCount; LoopLayer++)
	{	
		TDLLayerVisible(LayerName[LoopLayer], false);		
	}

	if ( ZoomValue>=45000 )	//level 1
	{
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", false );
		TDLLayerVisible("DIST_NAME", false );
		TDLLayerVisible("HWAY", false );			
		TDLLayerVisible("TRAIN", false );
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer, true );
		TDLLayerVisible(SARSVisibleLayer_lsb, true );
		
		parent.ToolsFrame.document.images["btn_z1"].src=imagesUrl + "btn_z1_o.gif";	
		NowLevel=1;
	}

	else if ( ZoomValue>=22000 )	//level 2
	{
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", false );
		TDLLayerVisible("AREA_18", false );
		TDLLayerVisible("HWAY", false );			
		TDLLayerVisible("TRAIN", false );	
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		////TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer, true );
		TDLLayerVisible(SARSVisibleLayer_lsb, true );
		
		parent.ToolsFrame.document.images["btn_z2"].src=imagesUrl + "btn_z2_o.gif";	
		NowLevel=2;
	}
	
	else if ( ZoomValue>=8500 )	//level 3
	{
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", false );
		TDLLayerVisible("PLACE_NAME", false );
		TDLLayerVisible("HWAY", true );			
		TDLLayerVisible("HWAY_NAME", true );	
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		////TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer, true );
		TDLLayerVisible(SARSVisibleLayer_lsb, true );
		
		parent.ToolsFrame.document.images["btn_z3"].src=imagesUrl + "btn_z3_o.gif";	
		NowLevel=3;	
	}
	else if ( ZoomValue>=1800 )	//level 4
	{		
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", false );
		//TDLLayerVisible("PLACE_NAME", true );
		TDLLayerVisible("HWAY_NAME", true );
		TDLLayerVisible("MRJ_ROAD", true );
		TDLLayerVisible("BLDGPOLY_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb, true );
				
		parent.ToolsFrame.document.images["btn_z4"].src=imagesUrl + "btn_z4_o.gif";
		NowLevel=4;
	}		
	else if ( ZoomValue>=1000 )	//level 5	480
	{
		TDLLayerVisible("COASTLINE", false );
		TDLLayerVisible("ALL_PARK", true );
		//TDLLayerVisible("PLACE_NAME", true );
		TDLLayerVisible("BLDGPOLY_10K", true );
		TDLLayerVisible("STREET_CLN", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible(ActiveLayer, true );
		TDLLayerVisible("SARS_AREA", true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb1, true );
				
		parent.ToolsFrame.document.images["btn_z5"].src=imagesUrl + "btn_z5_o.gif";
		NowLevel=5;
	}			
	else if ( ZoomValue>=480 )	//level 6	230
	{
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("SARS_AREA", false );
		TDLLayerVisible("SITEPOLY_1K", true );
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("STREET_CLN_1", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		//TDLLayerVisible("MTRE1K", true);
	    TDLLayerVisible(ActiveLayer, true );
	    //TDLLayerVisible("SARS_LIST", true );
	    //TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb1, true );
				
		parent.ToolsFrame.document.images["btn_z6"].src=imagesUrl + "btn_z6_o.gif";
		NowLevel=6;
	}	
	else if ( ZoomValue>=230 )	//level 7	90
	{
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("AREA_18", true );
		TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("STREET_CLN_1", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		//TDLLayerVisible("MTRE1K", true);
		TDLLayerVisible(ActiveLayer, true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb1, true );
				
		parent.ToolsFrame.document.images["btn_z7"].src=imagesUrl + "btn_z7_o.gif";
		NowLevel=7;
	}
	else	//if ( ZoomValue>=90 )	//level 8	45
	{
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("STREET_CLN_1", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		//TDLLayerVisible("MTRE1K", true);
		TDLLayerVisible(ActiveLayer, true );
		//TDLLayerVisible("SARS_LIST", true );
		//TDLLayerVisible("SARS_LIST1", true );
		//TDLLayerVisible("SARS_LIST_NEW", true );
		//TDLLayerVisible("SARS_LIST_DISCHARGE", true );
		
		TDLLayerVisible(SARSVisibleLayer1, true );
		TDLLayerVisible(SARSVisibleLayer_lsb1, true );
				
		parent.ToolsFrame.document.images["btn_z8"].src=imagesUrl + "btn_z8_o.gif";
		NowLevel=8;
	}		
	
	if (NowLevel>=5) {
		isLSB=false;
	} else if (isLSB1) {
		isLSB=true;
	}
		
	if (NowLevel>=5) {
		if ((ActiveLayer=="HOSPITAL") || (ActiveLayer=="DOCTORLIST") || (ActiveLayer=="DISTRICT_COUNCIL")) {
			//ActiveLayer=ActiveLayer;
		} else {
			ActiveLayer="BLDGPOLY_1K";
		}	
	} else {
		ActiveLayer="SARS_AREA";
	}
	
	for (i=0; i<layerCount; i++)
	{	
		if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() )
		{
			setActiveLayer(i);
		}		
	}
	TDLLayerVisible(ActiveLayer, true );
	
		if (WebPage==5){	//Add by hkm
		if(isP2P){	      
	        //ActiveLayer="BLDGPOLY_1K";
	        ActiveLayer="BUSSTOP";	//add by hkm 2003-08-01
	        TDLLayerVisible(ActiveLayer, true );	//add by hkm 2003-08-01
			var i=0;	
			for (i=0; i<layerCount; i++) {	
				if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
					setActiveLayer(i);
				}	
			}
			TDLLayerVisible("FERRY", false);
		    TDLLayerVisible("GMB", false );
		    if ( NowLevel <= 5 ) {
				TDLLayerVisible("BLDGPOLY_1K", false );
		    }
		} else if ( NowLevel >= 4 ) {
			ActiveLayer="GMB"
			var i=0;	
			for (i=0; i<layerCount; i++) {	
				if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
					setActiveLayer(i);
				}	
			}
		   TDLLayerVisible("FERRY", true);
		   TDLLayerVisible("GMB", true );
		}		
	}
	
	//TDLZoomToolControl();	//aimsCustom.js
}

function TDLSARSparseFields(theReply)
{
	//alert(theReply);
	var fList="";
	var i=0;
	var pos = theReply.indexOf("<FEATURECOUNT");
	var startpos = pos + 21;
	var endpos = theReply.indexOf(dQuote,startpos);
	var tempString = theReply.substring(startpos,endpos);
	var featureCount = parseInt(tempString);
	var parseLayer=ActiveLayer.toUpperCase();
    if (featureCount>0)
    {            
      endpos = 1;
      for (i=0;i<featureCount;i++)
      {
		startpos = theReply.indexOf("<FIELDS ",endpos);
		startpos = startpos + 8;
		endpos =theReply.indexOf(" />",startpos);
		tempString = theReply.substring(startpos,endpos);
		if (featureCount>1) tempString = "|" + tempString;
		fList = fList + tempString;
      }
      //alert(fList);	// + '1'+ ActiveLayer);
     }
     
     var QueryStr="";		
     if (featureCount>0)
     {	
		startpos=1;
		for (i=0;i<featureCount;i++)
		{
			pos = fList.indexOf(parseLayer+".ENAME=",startpos);
			startpos = pos + parseLayer.length + 8;
			endpos = fList.indexOf(dQuote,startpos);
			if (QueryStr=="(")
				{ QueryStr = QueryStr + "'" + fList.substring(startpos,endpos) + "'"; }
			else
				//{ QueryStr = QueryStr + "," + "'" + fList.substring(startpos,endpos) + "'"; }
				{ QueryStr = fList.substring(startpos,endpos) ; }
			startpos=endpos;
		}
		QueryStr=QueryStr
		
		//alert(QueryStr);
		var TableName=parseLayer;
		var FieldName="ENAME";
		var FieldValue=QueryStr;
				
		TDLSARSData(TableName,FieldName,FieldValue);
		hideRetrieveData();		
	}    
    
    if (featureCount==0)
    {
		hideRetrieveData();
		alert("沒有地圖資料!");
    }
    
    //alert(QueryStr);
}

function TDLSARSData(TableName,FieldName,FieldValue)
{
	var SARSTable="SARS_BUILDING";
	if (SARSVisibleLayer=="SARS_LIST_NEW") {
		 SARSTable="SARS_BUILDING_NEW";
	}
	if (SARSVisibleLayer=="SARS_LIST_DISCHARGE") {
		 SARSTable="SARS_BUILDING_DISCHARGE";
	}
	if (SARSVisibleLayer=="SARS_LIST_SUSPECT") {
		 SARSTable="SARS_BUILDING_SUSPECT";
	}
	
	var href=document.location.href;
	var href1 = href.toUpperCase();	
	var pos = href1.indexOf("MAPFRAME.HTM",0);
	parent.TextFrame.document.location.href=href.substring(0,pos) +""+ InfoPath +"/SARSInfo.asp?SARSTable="+ SARSTable +"&TableName=" +TableName + "&FieldName=" + FieldName + "&FieldValue=" + FieldValue + "";
}

function ZoomToFeature_1(layName,fieldName,fieldValue) {
  
	//newString = fieldName + " IN " + "('";
	//newString = newString + fieldValue.replace(/,/g, "','");
	//newString = newString + "')";

	TDLscrollMap();

	if (WebPage == 1){
		toolModeI = toolMode;
		toolMode = 1;
		queryStartRecord = 1;
	}else{
		toolMode =8;
	}

	for (var li=0;li<layerCount;li++) {		
		
		if ( LayerName[li].toUpperCase() == layName.toUpperCase() ) {
			setActiveLayer(li);
		}								
	}

    selectMargin = 1.100;
	selectPointMargin = 0.025;	
    selectColor="255,0,0";
	highlightColor="255,0,0";
	transparentLevel ="10.15";
   
	if ((WebPage==1) || (WebPage==8)) {
		if (fieldName == "GEO_REFNO")
		{
			//newString = fieldName + " = " + '"' + fieldValue + '"';
				newString = fieldName + " IN " + "('";
				newString = newString + fieldValue.replace(/,/g, "','");
				newString = newString + "')";
				//alert(newString);
		}else{
			if (fieldName=="NAME_E")
			{
			fieldValue = "." + fieldValue;
			newString = fieldName + " = " + '"' + fieldValue + '"' +" and " + " TYPE " + "=" + '"'+ optype +'"';
			}else{
			newString = fieldName + " = " + fieldValue;
			}
		}
	}else{
		newString = fieldName + " = " + fieldValue;
	}
	//newString = fixSingleQuotes(newString);
	//newString = swapQuotes(newString);
	newString = makeXMLsafe(newString);
	setQueryString=newString;
	
	showRetrieveData();
	var theString = writeQueryXML(newString);
	//alert(theString);
	sendToServer(imsQueryURL,theString,8);
	
}


function TDLzoomToPoint_1()
{
 var i=0;	
 for (i=0; i<layerCount; i++) {	
 	if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() ){
 		setActiveLayer(i);
 	}	
 }
  if(NowLevel>6){
    TDLZoomLevel_1(NowLevel);
  }else {
    TDLZoomLevel_1(6);
  }

}


function refreshActiveLayer(myactivelayer) {
	var i=0;	
	for (i=0; i<layerCount; i++)
	{	
		if (LayerName[i].toUpperCase() == myactivelayer.toUpperCase() )
		{
			setActiveLayer(i);			
			//ActiveLayer=myactivelayer.toUpperCase();
		}		
	}	
	TDLLayerVisible(ActiveLayer, true );
	
	
	var theText = writeXML();
	//alert(theText);
	sendToServer(imsURL,theText,1);
}
	
function reCenterXYandZoomLevel(MapCenterX,MapCenterY,Level) {
	var i=0;	
	for (i=0; i<layerCount; i++)
	{	
		if (LayerName[i].toUpperCase() == ActiveLayer.toUpperCase() )
		{
			setActiveLayer(i);
		}		
	}
	NowLevel=Level;
	var looplevel;
	var myzoombutton = ""
	for ( looplevel=1; looplevel<=8; looplevel++)
	{
		myzoombutton= "btn_z"+looplevel.toString();		
		parent.ToolsFrame.document.images[myzoombutton].src= imagesUrl + ""+myzoombutton+".gif";						
	}
	myzoombutton= "btn_z"+Level.toString();
	parent.ToolsFrame.document.images[myzoombutton].src= imagesUrl + ""+myzoombutton+"_o.gif";			
	var LoopLayer;
	for (LoopLayer=0; LoopLayer<layerCount; LoopLayer++)
	{	
		TDLLayerVisible(LayerName[LoopLayer], false);		
	}
	var ZoomValue;
	
	if ( Level == 1 )
	{	
		ZoomValue = 45000/2;
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("DIST_NAME", true );
		TDLLayerVisible("HWAY", true );
		TDLLayerVisible("TRAIN", true );
	}

	else if ( Level == 2 )
	{
		ZoomValue = 22000/2;
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("AREA_18", true );	
		TDLLayerVisible("HWAY", true );			
		TDLLayerVisible("TRAIN", true );	
	}
	
	else if ( Level == 3 )
	{
		ZoomValue = 8500/2;
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		//TDLLayerVisible("PLACE_NAME", true );
		TDLLayerVisible("HWAY", true );			
		TDLLayerVisible("HWAY_NAME", true );	
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);	
		if (ActiveLayer=="DINING_G_10A") {
			TDLLayerVisible(ActiveLayer, true );
		}	
	}
	else if ( Level == 4 )
	{		
		ZoomValue = 1800/2;	
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		//TDLLayerVisible("PLACE_NAME", true );
		TDLLayerVisible("HWAY_NAME", true );
		TDLLayerVisible("MRJ_ROAD", true );
		TDLLayerVisible("BLDGPOLY_10K", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		if (ActiveLayer=="DINING_G_10A") {
			TDLLayerVisible(ActiveLayer, true );
		}
	}		
	else if ( Level == 5 )
	{
		ZoomValue = 1000/2;			
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		//TDLLayerVisible("PLACE_NAME", true );
		TDLLayerVisible("BLDGPOLY_10K", true );
		TDLLayerVisible("STREET_CLN", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		TDLLayerVisible(ActiveLayer, true );
	}			
	else if ( Level == 6 )
	{
		ZoomValue = 480/2;		
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("SITEPOLY_1K", true );
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("STREET_CLN_1", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		//TDLLayerVisible("MTRE1K", true);
		TDLLayerVisible(ActiveLayer, true );
	}	
	else if ( Level == 7 )
	{
		ZoomValue = 230/2;		
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("AREA_18", true );
		TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("STREET_CLN_1", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		//TDLLayerVisible("MTRE1K", true);
		TDLLayerVisible(ActiveLayer, true );
	}
	else if ( Level == 8 )
	{
		ZoomValue = 90/2;		
		TDLLayerVisible("COASTLINE", true );
		TDLLayerVisible("ALL_PARK", true );
		TDLLayerVisible("BDYFEAT_1K", true );
		TDLLayerVisible("BLDGPOLY_1K", true );
		TDLLayerVisible("BLDG_NUM", true );
		TDLLayerVisible("ROAD", true );
		TDLLayerVisible("STREET_CLN_1", true );
		TDLLayerVisible("TRAIN", true );			
		TDLLayerVisible("TRAIN_NAME", true);
		//TDLLayerVisible("MTRE1K", true);
		TDLLayerVisible(ActiveLayer, true );
	}

	eLeft   = parseFloat(MapCenterX) - ZoomValue;
	eRight  = parseFloat(MapCenterX) + ZoomValue;
	eTop    = parseFloat(MapCenterY) + ZoomValue;
	eBottom = parseFloat(MapCenterY) - ZoomValue;		
	
	TDLscrollMap();
	var theText = writeXML();
	//alert(theText);
	sendToServer(imsURL,theText,1);

}



function TDLaddDining10AToMap(){
	var theString = "";
		theString += '<LAYER type="ACETATE" name="theStop">\n';
			theString += '<OBJECT units="DATABASE">\n';
			theString += '<POINT coords="' + selectLeft[0]  +' ' +selectTop[0] + '">\n';					
				theString += '<RASTERMARKERSYMBOL image="'+sharePath+'logo\\icon_dining_10commit.gif" overlap="false"/>\n';
			theString += '</POINT>';
			theString += '</OBJECT>\n';
		theString += '\n</LAYER>\n';
		//alert(theString);
  
	return theString;
}