//**********************************
   //var bToggle = document.frmMap.txtLegendState.value;
   var topHeight;
//   var normalSlidePos = -138;
//   var fullHiddenSlidePos = -207;

   var normalSlidePos = -110;
   var fullHiddenSlidePos = -187;
   var resultsSlidePos = 20;
   //var resultsSlidePos = -110;
   var slidePos = normalSlidePos;
   var zooming = 0;
   var zoomDraw = 0;
   var moveCount = 0;
   var other = 0;
   var lastTool = "";

   var currHelp = 0;

   var toolbarHeight = 124;
   var toolbarFullHiddenSlidePos = -83;
   var toolbarOutPos = 0;

   //var rubberbander = new RubberRectangle();
   var jgMap;
   var startX;
   var startY;
   var endX;
   var endY;

   var bToggle = -1;

   var resultsOn = false;
   var toolbarLocked = false;

   var help;
   
   function resizeMap()
   {
	 setTool("");
  	 MM_showHideLayers('Loading','','show');
     if( document.frmAdvanced.lstMapSizes.value == "" )
     {
       document.frmMap.txtMapSize.value = 1;
     }
     else
     {
       document.frmMap.txtMapSize.value = document.frmAdvanced.lstMapSizes.value;
     }
     window.resizeTo(screen.availWidth, screen.availHeight);
	 document.frmMap.submit();

   }

   function anySelected()
   {
     var i;
     for(i=0; i < document.frmLayerCtrl.elements.length; i++)
     {
       if( document.frmLayerCtrl.elements[i].checked )
       {
         return true;
       }
     }
     return false;
   }

   function updateVisibleLayers()
   {
     var i;
     var theList = "";

	 MM_showHideLayers('Layer','','hide');
  	 MM_showHideLayers('Loading','','show');

     if( anySelected() )
     {
       for(i=0; i < document.frmLayerCtrl.elements.length; i++)
       {
         if( (document.frmLayerCtrl.elements[i].checked) && (document.frmLayerCtrl.elements[i].name != "rdActive") )
         {
           theList = theList + document.frmLayerCtrl.elements[i].value + ";";
         }
       }
       document.frmMap.txtVisibleLayers.value = theList;
	   //alert("updateVisLayers");
       document.frmMap.submit();
     }
   }

   function setActiveLayer(idval)
   {
     document.frmMap.txtActiveLayer.value = idval;
   }
//****************************************

   function setTool(index)
   {
	 moveTab("closeBoth", "now");
	 //var lbl = MM_findObj("lblCurrTool");
	 //lbl.text = index;
	 
	 document.frmMap.txtCurrTool.value = index;

	 if(lastTool != "")
	 {
	 	var toolTitle = MM_findObj(lastTool);
		toolTitle.className="toolTitle";
	 }

	 if(index != "")
	 {
		 toolTitle = MM_findObj(index + "T");
		 if(toolTitle != null){
			 lastTool = index + "T";
			 toolTitle.className="smallTipsRed";
		 }
	 }

     if(index == "fextent" )
     {
  	   //MM_showHideLayers('Loading','','show');
       document.frmMap.txtEnvelope.value = "";
	   document.frmMap.action="default.asp";
	   //alert("setTool - fullExtent");
	   //document.frmMap.submit();
     }
	 else if(index == "zoomin")
	 {
	 	zooming = 1;
		zoomDraw = 0;
		//MM_showHideLayers('mapZoom','','show');
	}
	else
	{
		zooming = 0;
		zoomDraw = 0;
	 	//MM_showHideLayers('mapZoom','','hide');
	}
   }

   function send_to_map(taxMap)
   {
		MM_showHideLayers('Loading','','show');
		document.frmMap.txtFirstLoad.value = 1
  		document.frmMap.txtFromSearch.value = document.frmMap.txtFromSearch.value + taxMap + ';';
   		document.frmMap.submit();
   }

   function sendRoad(roadID)
   {
		 MM_showHideLayers('Loading','','show');
 	 	 document.frmMap.txtFirstLoad.value = 1
   		 document.frmMap.txtRoadID.value = roadID;
		 document.frmMap.submit();
   }

   function sendAddress(xc, yc)
   {
		MM_showHideLayers('Loading','','show');
		document.frmMap.txtFirstLoad.value = 1
   		document.frmMap.txtAddrPoint.value = xc + "/" + yc;
		document.frmMap.submit();
   }

   function toggleLegendVisibility()
   {
//     if( bToggle == -1 )
//     {
//       if( document.frmMap.txtLegendState.value == "" )
//       {
//         document.frmMap.txtLegendState.value = 0;
//         bToggle = 0;
//       }
//       else
//       {
//         bToggle = document.frmMap.txtLegendState.value;
//       }
//     }

     if( document.frmMap.txtLegendState.value == 1 )
     {
	  MM_showHideLayers('divLegend','','hide');
      //document.frmMap.btnToggleLegend.value = "Show Legend";
      document.frmMap.txtLegendState.value = 0;
     }
     else
     {
 	   MM_showHideLayers('divLegend','','show');
       //document.frmMap.btnToggleLegend.value = "Hide Legend";
       document.frmMap.txtLegendState.value = 1;
     }
   }

   function doToolbarLocking()
   {
   	 toolbarLocked = !toolbarLocked;
	 var tack = MM_findObj('unLock');
	 if(toolbarLocked)
	 {
		 //MM_swapImage('unLock','','icons/tackLock.gif',1)
		 tack.src = "icons/tackLock.gif";
		 document.frmMap.txtToolbarLocked.value = 1;
	 }
	 else
	 {
		 //MM_swapImage('unLock','','icons/tackUnLock.gif',1)
		 tack.src = "icons/tackUnLock.gif";
		 document.frmMap.txtToolbarLocked.value = 0;
	 }

   }
   function doPrint()
   {
     var layerStr; //list of active layers
     var envStr; //semicolon delimited list of envelope parameters
     var targetStr;

     layerStr = document.frmMap.txtVisibleLayers.value;
     envStr = document.frmMap.txtEnvelope.value;

     targetStr = "print_map.asp?layers=" + layerStr + "&envelope=" + envStr;

     window.open(targetStr, "PrintWindow", "menubar=1,scrollbars=1,width=900,height=600");

   }

   function setTableRow()
   {
     document.getElementById("divSearch").style.visibility = "hidden";
   }

   function clearSelectedFeatures()
   {
     document.frmMap.txtSelectedFeature.value = "";
     frmMap.submit();
   }


function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function P7AniMagic(el, x, y, a, b, c, s) { //v2.5 PVII
 var g,elo=el,f="",m=false,d="";x=parseInt(x);y=parseInt(y);
 var t = 'g.p7Magic = setTimeout("P7AniMagic(\''+elo+'\',';
 if ((g=MM_findObj(el))!=null) {d=(document.layers)?g:g.style;}else{return;}
 if (parseInt(s)>0) {eval(t+x+','+y+','+a+','+b+','+c+',0)",' + s+')');return;}
 var xx=(parseInt(d.left))?parseInt(d.left):0;
 var yy=(parseInt(d.top))?parseInt(d.top):0;
 if(parseInt(c)==1) {x+=xx;y+=yy;m=true;c=0;}
 else if (c==2) {m=false;clearTimeout(g.p7Magic);}
 else {var i=parseInt(a);
  if (eval(g.moved)){clearTimeout(g.p7Magic);}
  if (xx<x){xx+=i;m=true;if(xx>x){xx=x;}}
  if (xx>x){xx-=i;m=true;if(xx<x){xx=x;}}
  if (yy<y){yy+=i;m=true;if(yy>y){yy=y;}}
  if (yy>y){yy-=i;m=true;if(yy<y){yy=y;}}}
 if (m) {if((navigator.appName=="Netscape") && parseInt(navigator.appVersion)>4){
    xx+="px";yy+="px";}
  d.left=xx;d.top=yy;g.moved=true;eval(t+x+','+y+','+a+','+b+','+c+',0)",'+b+')');
  }else {g.moved=false;}
}

function moveTab(how, when)
{
	if(document.frmMap.txtMapSize.value < 1) //small map lock the toolbars out
	{
		P7AniMagic('left',0,toolbarHeight,10000,0,0,0);
		if(how == "topOut")
		{
			if(resultsOn)
				slidePos = resultsSlidePos;
			else
				slidePos = normalSlidePos;

			if(when == "now")
				P7AniMagic('top',108,slidePos,10000,0,0,0);
			else if(when == "slide")
				P7AniMagic('top',108,slidePos,6,30,0,0);
		}
		else if(how == "topClose" || how == "closeBoth")
		{
			slidePos = normalSlidePos;
			if(when == "now")
				P7AniMagic('top',108,slidePos,10000,0,0,0);
			else
				P7AniMagic('top',108,slidePos,6,30,0,0);
		}
		else
			P7AniMagic('top',108,slidePos,10000,0,0,0);
		return;
	}

	if(how == "onLoad")
	{
		if(document.frmMap.txtFirstLoad.value != "1")
		{
			moveTab("leftOut", "slide");
			moveTab("topOut", "slide");
		}
		else if(toolbarLocked)
			moveTab("leftOut", "now");
	}
	else if(how == "topOut")
	{
		if(resultsOn)
			slidePos = resultsSlidePos;
		else
			slidePos = normalSlidePos;

		if(when == "now")
			P7AniMagic('top',108,slidePos,10000,0,0,0);
		else if(when == "slide")
			P7AniMagic('top',108,slidePos,6,30,0,0);
	}
	else if(how == "topClose")
	{
		if(when == "now")
			P7AniMagic('top',108,fullHiddenSlidePos,10000,0,0,0);
		else
			P7AniMagic('top',108,fullHiddenSlidePos,6,30,0,0);
	}
	else if(how == "leftOut")
	{
		if(when == "now")
			P7AniMagic('left',toolbarOutPos,toolbarHeight,10000,0,0,0);
		else if(when == "slide")
			P7AniMagic('left',toolbarOutPos,toolbarHeight,7,30,0,0);
	}
	else if(how == "leftClose")
	{
		if(toolbarLocked)
			return;

		if(when == "now")
			P7AniMagic('left',toolbarFullHiddenSlidePos,toolbarHeight,10000,0,0,0);
		else
			P7AniMagic('left',toolbarFullHiddenSlidePos,toolbarHeight,7,30,0,500);
	}
	else if(how == "closeBoth")
	{
		moveTab("topClose", when);
		moveTab("leftClose", when);
	}
}

function setHiddenVars(type, text, text2)
{
	var field = MM_findObj(text);
	text = field.value;

	if(text2 != null)
	{
		field = MM_findObj(text2)
		text2 = field.value;
	}

	document.frmTabsCtrl.txtSearchType.value = type;
	document.frmTabsCtrl.txtSearchText.value = text;
	document.frmTabsCtrl.txtSearchText2.value = text2;
}

function getSearchURL()
{
	return document.frmTabsCtrl.txtSearchBaseURL.value +
							    "?text=" + document.frmTabsCtrl.txtSearchText.value +
								"&text2=" + document.frmTabsCtrl.txtSearchText2.value +
							    "&type=" + document.frmTabsCtrl.txtSearchType.value;
}

function copySearchURL()
{
	if(document.frmTabsCtrl.txtSearchText.value != "" ||
	   document.frmTabsCtrl.txtSearchType.value != "")
			document.frmMap.txtFrmMapSearchFullURL.value = getSearchURL();
}

function refreshSearch(isOnLoad)
{
	resultsDiv = MM_findObj("Results");
	resultsDiv.innerHTML = "<br><br><br><FONT color='#ff0000' face='MS Sans Serif' size='5'><center><strong>Please perform a search.</strong></center></FONT>"
	if(!isOnLoad)
		copySearchURL();
	if(document.frmMap.txtFrmMapSearchFullURL.value.length > 5)
		parent.resultsFrame.location = document.frmMap.txtFrmMapSearchFullURL.value;


	//var searchTextDiv = top.resultsFrame.getElementById('searchBody');
	//searchText = searchTextDiv.innerHTML;
	//searchText = searchTextDiv.innerHTML;
	//opera.postError("searchText is " + searchText);
	//resultsDiv.innerHTML = searchText;

	if(!isOnLoad)
	{
		MM_swapImage('TopTabs','','icons/resultsS.gif',1);
		resultsDiv.innerHTML = "<br><br><br><FONT color='#ff0000' face='MS Sans Serif' size='5'><center><strong>Loading Results...</strong></center></FONT>"
		MM_showHideLayers('OwnerSearch','','hide','AddressSearch','','hide','TaxMapSearch','','hide','SubdivisionSearch','','hide','Results','','show');
		//MM_showHideLayers('Results','','show');
		resultsOn = true;
		currHelp = 4;
		moveTab('topOut', 'slide');
	}
}

function doOnLoad()
{
	toolbarLocked = (document.frmMap.txtToolbarLocked.value == 0)?true:false ;  //Yes... this is the WRONG value
	//if we store TRUE from the last page we want the value of toolbarLocked to be FALSE so that
	//when doToolbarLocking is called it SWITCHES the value BACK to TRUE
	doToolbarLocking();

	moveTab("onLoad");

	//MM_preloadImages('icons/zoomInA.gif','icons/zoomIn.gif','icons/zoomOutA.gif','icons/zoomOut.gif','icons/panA.gif','icons/pan.gif','icons/identifyA.gif','icons/identify.gif','icons/layerA.gif','icons/layer.gif','icons/fextentA.gif','icons/fextent.gif','icons/ownerS.gif','icons/addressS.gif','icons/taxMapS.gif','icons/subdivisionS.gif','icons/resultsS.gif','layerBack.png','icons/loading.gif','icons/tackLock.gif');

	if(document.frmMap.txtFrmMapSearchFullURL.value == "")
	{
		MM_swapImage('TopTabs','','icons/ownerS.gif',1);
		MM_showHideLayers('OwnerSearch','','show');
	}
	else
	{
		MM_swapImage('TopTabs','','icons/resultsS.gif',1);
		MM_showHideLayers('Results','','show');
		resultsOn = false;
		currHelp = 4;
	}
	refreshSearch(true);
	document.frmAdvanced.lstMapSizes.value = document.frmMap.txtMapSize.value;

	var mapLayer = MM_findObj("mapImage");
	mapLayer.onmousedown = Map_onMouseDown;
	mapLayer.onmousemove = Map_onMouseMove;
	mapLayer.onmouseup = Map_onMouseUp;
	if((navigator.appName=="Netscape")&&(parseInt(navigator.appVersion)==4))
		document.layer["mapImage"].captureEvents(Event.MOUSEDOWN | Event.MOUSEUP | Event.MOUSEMOVE);

	jgMap = new jsGraphics("mapImage");
	jgMap.setColor("#ff0000");
	jgMap.setStroke(2);
	//jgMapZoom.drawRect(300,300,300,300);
	//jgMapZoom.paint();

	//if(document.frmMap.txtCurrTool.value == "zoomin")
	//	zooming = 1;
	if(document.frmMap.txtFirstLoad.value == "1" && document.frmMap.txtCurrTool.value != "fextent")
		setTool(document.frmMap.txtCurrTool.value);
	
	initToolTips();
}

function Map_onMouseDown()
{
	startX = ((navigator.appName=="Netscape")&&(parseInt(navigator.appVersion)==4))?parseInt(event.layerX):parseInt(window.event.offsetX)+parseInt(document.body.scrollLeft);
	startY = ((navigator.appName=="Netscape")&&(parseInt(navigator.appVersion)==4))?parseInt(event.layerY):parseInt(window.event.offsetY)+parseInt(document.body.scrollTop);

	document.frmMap.txtCoordinates.value = startX + ";" + startY;
	document.frmMap.txtFirstLoad.value = 1
	if(zooming)
    {
		zoomDraw = 1;
	}
	else if(document.frmMap.txtCurrTool.value == "showLayers")
	{
		MM_showHideLayers('Loading','','show');
		MM_showHideLayers('Layer','','hide');
		updateVisibleLayers();
	}
	else
	{
		MM_showHideLayers('Loading','','show');
		//alert("mapOnMouseDown");
	 	document.frmMap.submit();
	}
}


function Map_onMouseMove()
{   
	x = ((navigator.appName=="Netscape")&&(parseInt(navigator.appVersion)==4))?parseInt(event.layerX):parseInt(window.event.offsetX)+parseInt(document.body.scrollLeft);
	y = ((navigator.appName=="Netscape")&&(parseInt(navigator.appVersion)==4))?parseInt(event.layerY):parseInt(window.event.offsetY)+parseInt(document.body.scrollTop);
   
   	if(zooming && zoomDraw && (++moveCount % 2) == 1 && x > 5 && y > 5)
	{
		jgMap.clear();
		
		x1 = startX;
		y1 = startY;
		
		if(x >= x1)
			x2 = x;
		else 
		{
			x2 = x1;
			x1 = x;
		}
		
		if(y >= y1)
			y2 = y;
		else
		{
			y2 = y1;
			y1 = y;
		}
		
		document.frmMap.txtCoordinates.value = x1 + ";" + y1 + ";" + x2 + ";" + y2
	   	jgMap.drawRect(x1, y1, Math.abs(x1 - x2), Math.abs(y1 - y2));
	   	jgMap.paint();
	}
}

function Map_onMouseUp()
{
	if(zooming && zoomDraw)
	{
		moveCount = 0;
		MM_showHideLayers('Loading','','show');
		if(endX-startX > 20 && endY-startY > 20)
			document.frmMap.txtCoordinates.value = startX + ";" + startY + ";" + endX + ";" + endY
		jgMap.clear();
		zoomDraw = 0;
		//alert("mapOnMouseUp");
		document.frmMap.submit();
	}
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  if(navigator.appName=="Netscape")
  	return;
  var i,x,a=document.MM_sr;
  for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)
  	if(x.name != 'TopTabs')
		x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
  	var i,j=0,x,a=MM_swapImage.arguments;
	document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
	if ((x=MM_findObj(a[i]))!=null)
		{document.MM_sr[j++]=x;
	if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_setTextOfLayer(objName,x,newText) { //v4.01
  if ((obj=MM_findObj(objName))!=null) with (obj)
    if (document.layers) {document.write(unescape(newText)); document.close();}
    else innerHTML = unescape(newText);
}

function doClick(button)
{
	var b = MM_findObj(button);
	b.click();
}

function checkEnter(e)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
else return false;
if (keycode == 13)
	return true;
else
	return false;
}

function clearPoints()
{
 MM_showHideLayers('Loading','','show');
 document.frmMap.txtMeasurePoints.value = "";
 document.frmMap.txtCoordinates.value = "";
 document.frmMap.submit();
}

function setCSS(object, cssClass)
{
	var obj = MM_findObj(object);
	if(obj)
		obj.className = cssClass;
}

function toggleResults(val)
{
	if(val != null)
		resultsOn = !val;
	resultsOn = !resultsOn;
	MM_swapImage('TopTabs','','icons/resultsS.gif',1);
	MM_showHideLayers('OwnerSearch','','hide','AddressSearch','','hide','TaxMapSearch','','hide','SubdivisionSearch','','hide','Results','',(resultsOn)?'show':'hide','closeTop','','hide');
	if(resultsOn)
		moveTab('topOut', 'slide');
	else
		moveTab('topClose', 'now');
}