	var mapspeed	
	var mtype	
	var allpropid = new Array();
	
	var filterpropid = new Array();	
	var stime
	var waitcount
	var postingtitle = ""
	var lat_point
	var lon_point
	var myProp
	var mygeoArrayctr
	var mygeoArrayctrout
	var mygeoArray = new Array();	
	var bwritedone
	var thex
	var they
	var splt
	var spoints
	var sphoto
	var sdetaillink = '/details.aspx?propid='
	var sdetaillinkrmpm = '/propdetail.aspx?propid='
	var sdetaillinkarma ='arma_new/details.aspx?propid='
	var sdetaillinkfp ='fp_new/details.aspx?propid='
	var sclientname	
	var Fullclientname
	var selectby
	var qsParm = new Array();	
	var mapfrom = 'http://www.google.com/maps?source=uds&saddr='
	var mapto = 'http://www.google.com/maps?source=uds&daddr='
	var opacity = 1;	
	var container;	
	var loading = false;	
	var spropID
	var srent
	var sbeds
	var sbaths 
	var mytable
	var mytablei
	var mytableii
	var stype
	var stypetext	
    var sbedsAvail
	var sbathsAvail
	var szipsAvail
	var sOK
	var icount=0
	var bstatus	
	var btbl
	var touttimer
	var bto	
	var t	
	var mydates = new Array()
	var myaddress = new Array()
	
	var sinfo
	
	var sadr_all='';
	var endgps=0;
	var sid		 
	var myname='';
	var smode 
	var pinID = 1;
    var xmlHttp; 
    var requestURL = 'http://www.accountingontheweb.com/common/availprop/gmaps/querydata.aspx?'; 
    var is_ie = (navigator.userAgent.indexOf('MSIE') >= 0) ? 1 : 0; 
    var is_ie5 = (navigator.appVersion.indexOf("MSIE 5.5")!=-1) ? 1 : 0; 
    var is_opera = ((navigator.userAgent.indexOf("Opera6")!=-1)||(navigator.userAgent.indexOf("Opera/6")!=-1)) ? 1 : 0; 
    //netscape, safari, mozilla behave the same??? 
    var is_netscape = (navigator.userAgent.indexOf('Netscape') >= 0) ? 1 : 0; 
	var newwindow;
	var map = null;
    var geocoder = null;
    
    //set error handler
 	onerror=handleErr
 	
 	function writecookie(sdata){
   var addressArray = new setCookieArray('_jdrv', sdata);   
 }


function setCookieArray(name){
var expdate = new Date();
    expdate.setTime (expdate.getTime() +  (24 * 60 * 60 * 1000 * 365)); 
    this.length = setCookieArray.arguments.length - 1;
        for (var i = 0; i < this.length; i++) {
       	data = setCookieArray.arguments[i + 1]
		setCookie1 (name + i, data, expdate);
        }        
    }

function setCookie1 (name, value, expires) {
        if (!expires) expires = new Date();
document.cookie = name + "=" + escape (value) + 
"; expires=" + expires.toGMTString() +  "; path=/";
}


 	
 	
    function initialize() {
      if (GBrowserIsCompatible()) {
		clearlistboxstart()
        map = new GMap2(document.getElementById("map_canvas"));
        geocoder = new GClientGeocoder();
  		map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
      	map.enableDoubleClickZoom();
		map.enableGoogleBar();
		handleResize()
      }
    }
function geo_code_return()
		{
		if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete')
		{
			if (mygeoArrayctrout < mygeoArray.length)
			{ 
			mygeoArrayctrout=mygeoArrayctrout + 1
			splt=mygeoArray[mygeoArrayctrout]
			var url = requestURL  + 'k=' + sclientname + '&s=0' + '&a=1' + '&p=' + splt + '&t=' + getcurrenttime();
			xmlHttp = GetXmlHttpObject(geo_code_return); 
            xmlHttp_Get(xmlHttp, url);
            
            }
		}
		}
		
function showAddressfromtable(address,sadr,zipadr) 
{
		var point = new GLatLng(lat_point, lon_point);
		if (sclientname == "es")
            {
				var tinyIcon = new GIcon();tinyIcon.image = "http://www.accountingontheweb.com/Common/availprop/Gmaps/images/es.PNG";
				//tinyIcon.shadow = "http://www.accountingontheweb.com/Common/availprop/Gmaps/images/ess.PNG";
				tinyIcon.shadow = ""
				tinyIcon.iconSize=new GSize(30,34);
				tinyIcon.iconAnchor=new GPoint(15,34);
				tinyIcon.infoWindowAnchor=new GPoint(15,0);
            }
            else
            {
				var tinyIcon = new GIcon();tinyIcon.image = "http://maps.google.com/mapfiles/kml/pal3/icon56.png";
				tinyIcon.shadow = "http://maps.google.com/mapfiles/kml/pal3/icon56s.png";
				tinyIcon.iconSize=new GSize(32,32);
				tinyIcon.iconAnchor=new GPoint(16,32);
				tinyIcon.infoWindowAnchor=new GPoint(16,0);
            }
            
            //
            
            
			tinyIcon.shadowSize=new GSize(56,32);
			
			
           // tinyIcon.iconSize = new GSize(12, 20);
           // tinyIcon.shadowSize = new GSize(22, 20);tinyIcon.iconAnchor = new GPoint(6, 20);
          //  tinyIcon.infoWindowAnchor = new GPoint(5, 1);
            // Set up our GMarkerOptions object literal
            markerOptions ={ icon:tinyIcon };
          
            map.setCenter(point, 9);
            var marker = new GMarker(point,markerOptions);
            map.addOverlay(marker);
            var s1,d1
            s1=address + '@' + point
            d1=address + '@' + point
            var handler = createMarkerClickHandler(marker, address + "<br>Rent: $" + srent + " Bdrms: " + sbeds + " Baths: " + sbaths, "http://www.accountingontheweb.com/common/availprop/" + sclientname + sdetaillink + spropID,s1,d1,sphoto,postingtitle,point);

            if (sclientname == 'rmpm')
            {
				var handler = createMarkerClickHandler(marker, address + "<br>Rent: $" + srent + " Bdrms: " + sbeds + " Baths: " + sbaths, "http://www.accountingontheweb.com/common/availprop/" + sclientname + sdetaillinkrmpm + spropID,s1,d1,sphoto,postingtitle,point);
            }
			if (sclientname == 'arma')
            {
				var handler = createMarkerClickHandler(marker, address + "<br>Rent: $" + srent + " Bdrms: " + sbeds + " Baths: " + sbaths, "http://www.accountingontheweb.com/common/availprop/" +  sdetaillinkarma + spropID,s1,d1,sphoto,postingtitle,point);
            }
            //fp new detail
            if (sclientname == 'fp')
            {
				var handler = createMarkerClickHandler(marker, address + "<br>Rent: $" + srent + " Bdrms: " + sbeds + " Baths: " + sbaths, "http://www.accountingontheweb.com/common/availprop/" +  sdetaillinkfp + spropID,s1,d1,sphoto,postingtitle,point);
            }
			GEvent.addListener(marker, "click", handler);
			
			if (sclientname == 'es')
            {
			var label = new ELabel(new GLatLng(lat_point, lon_point), "<div style='width : 110px;font-size : x-small;background-color:#ccccff;border:2px solid black'>" + sadr + "<\/div>", null, new GSize(6,-30), 75,1);
			map.addOverlay(label);
			}

			var listItem = document.createElement('li');
			//stype
			if (stype == '')
			{
				stypetext="$" + srent
			}
			else
			{
				stypetext="$" + srent
			}
			if (stypetext.length  < 5)
			{
				stypetext=stypetext + "&nbsp;&nbsp;"
			}
			listItem.innerHTML = '<div style="background-color : green;" class="label">'+ stypetext +'</div><a href="' + "http://www.infoontheweb.com "  +'">' + sadr + '</a>';
			listItem.getElementsByTagName('a')[0].onclick = handler;
			document.getElementById('sidebar-list').appendChild(listItem);
            //}
}


    function showAddress(address,sadr,zipadr) {

      if (geocoder) {
        geocoder.getLatLng(
          zipadr,
          function(point) {
            if (!point) {
            				
				if (stype == '')
				{
					stypetext="$" + srent
				}
				else
				{
					stypetext="$" + srent
				}
				if (stypetext.length  < 5)
				{
					stypetext=stypetext + "&nbsp;&nbsp;"
				}
				//
				var listItem = document.createElement('li');
				listItem.innerHTML = '<div style="background-color : red;" class="label">'+ stypetext +'</div>' + '<FONT color="#445555" size="1.5px" face="Arial">' + sadr + '</FONT>';
				document.getElementById('sidebar-list').appendChild(listItem);

            } else {
            // Create our "tiny" marker icon
                  
            thex=point.lng()
            they=point.lat()
            splt= myProp + "|" + thex + "|" + they +"|" + sadr_all + "|"
            mygeoArray[mygeoArrayctr]=splt
            mygeoArrayctr=mygeoArrayctr+1
                  
           
            if (sclientname == "es")
            {
				var tinyIcon = new GIcon();tinyIcon.image = "http://www.accountingontheweb.com/Common/availprop/Gmaps/images/es.PNG";
				tinyIcon.shadow = ""
				tinyIcon.iconSize=new GSize(30,34);
				tinyIcon.iconAnchor=new GPoint(15,34);
				tinyIcon.infoWindowAnchor=new GPoint(15,0);
            }
            else
            {
				var tinyIcon = new GIcon();tinyIcon.image = "http://maps.google.com/mapfiles/kml/pal3/icon56.png";
				tinyIcon.shadow = "http://maps.google.com/mapfiles/kml/pal3/icon56s.png";
				tinyIcon.iconSize=new GSize(32,32);
				tinyIcon.iconAnchor=new GPoint(16,32);
				tinyIcon.infoWindowAnchor=new GPoint(16,0);
            }
            
                        
			tinyIcon.shadowSize=new GSize(56,32);
			markerOptions ={ icon:tinyIcon };
          
            map.setCenter(point, 9);
            var marker = new GMarker(point,markerOptions);
            map.addOverlay(marker);
            var s1,d1
            s1=address + '@' + point
            d1=address + '@' + point
            var handler = createMarkerClickHandler(marker, address + "<br>Rent: $" + srent + " Bdrms: " + sbeds + " Baths: " + sbaths, "http://www.accountingontheweb.com/common/availprop/" + sclientname + sdetaillink + spropID,s1,d1,sphoto,postingtitle,point);

            if (sclientname == 'rmpm')
            {
				var handler = createMarkerClickHandler(marker, address + "<br>Rent: $" + srent + " Bdrms: " + sbeds + " Baths: " + sbaths, "http://www.accountingontheweb.com/common/availprop/" + sclientname + sdetaillinkrmpm + spropID,s1,d1,sphoto,postingtitle,point);
            }
			if (sclientname == 'arma')
            {
				var handler = createMarkerClickHandler(marker, address + "<br>Rent: $" + srent + " Bdrms: " + sbeds + " Baths: " + sbaths, "http://www.accountingontheweb.com/common/availprop/" +  sdetaillinkarma + spropID,s1,d1,sphoto,postingtitle,point);
            }
            
            if (sclientname == 'fp')
            {
				var handler = createMarkerClickHandler(marker, address + "<br>Rent: $" + srent + " Bdrms: " + sbeds + " Baths: " + sbaths, "http://www.accountingontheweb.com/common/availprop/" +  sdetaillinkfp + spropID,s1,d1,sphoto,postingtitle,point);
            }
            
			GEvent.addListener(marker, "click", handler);
			
			
			

			var listItem = document.createElement('li');
			//stype
			if (stype == '')
			{
				stypetext="$" + srent
			}
			else
			{
				stypetext="$" + srent
			}
			if (stypetext.length  < 5)
			{
				stypetext=stypetext + "&nbsp;&nbsp;"
			}
			listItem.innerHTML = '<div style="background-color : green;" class="label">'+ stypetext +'</div><a href="' + "http://www.infoontheweb.com "  +'">' + sadr + '</a>';
			listItem.getElementsByTagName('a')[0].onclick = handler;
			document.getElementById('sidebar-list').appendChild(listItem);
            }
          }
        );
      }
    }

	  // XMLHttp send GET request 
    function xmlHttp_Get(xmlhttp, url) { 
        xmlhttp.open('GET', url, true); 
        xmlhttp.send(null); 
    } 
	
    function GetXmlHttpObject(handler) { 
        var objXmlHttp = null;    //Holds the local xmlHTTP object instance 

        //Depending on the browser, try to create the xmlHttp object 
        if (is_ie){ 
            //The object to create depends on version of IE 
            //If it isn't ie5, then default to the Msxml2.XMLHTTP object 
            var strObjName = (is_ie5) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP'; 
             
            //Attempt to create the object 
            try{ 
                objXmlHttp = new ActiveXObject(strObjName); 
                objXmlHttp.onreadystatechange = handler; 
            } 
            catch(e){ 
            //Object creation errored 
                alert('IE detected, but object could not be created. Verify that active scripting and activeX controls are enabled'); 
                return; 
            } 
        } 
        else if (is_opera){ 
            //Opera has some issues with xmlHttp object functionality 
            alert('Opera detected. The page may not behave as expected.'); 
            return; 
        } 
        else{ 
            // Mozilla | Netscape | Safari 
            objXmlHttp = new XMLHttpRequest(); 
            objXmlHttp.onload = handler; 
            objXmlHttp.onerror = handler; 
        } 
         
        //Return the instantiated object 
        return objXmlHttp; 
    } 
	
	
	function generic_return()
		{
		if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete')
		{ 
        //Gather the results from the callback 
		var sstr = xmlHttp.responseText;
		//alert(sstr)
        var newstr
        var start
        var end
        var veryend
        var speedstr
        var datearray
        var t
        var i
        var y
        var saddress
        var newend
        var tempstr
        var debugstring
        
        initialize()
        start=  sstr.search(/>/);
        start=start+1;
        veryend =sstr.length
        end =sstr.search(/end of addresses/);	
        newstr=sstr.slice(start,end-1);
        debugstring=newstr
        newstr= newstr.slice(0,end) ;
        mytable=newstr.split('~');
        var bigcounter
        var i
        mygeoArrayctr=0
        mytablei=0
        mytableii=mytable.length
        touttimer=setTimeout('ttCount()',100)
        return
        }
	}
	
	//error handler
		function handleErr(msg,url,l)
		{
		txt="There was an error on this page.\n\n"
		txt+="Error: " + msg + "\n"
		txt+="URL: " + url + "\n"
		txt+="Line: " + l + "\n\n"
		txt+="Click OK to continue.\n\n"
		alert(txt)
		return true
		}
    
    
    //this is a generic xmlhttp call to perform asp.net functions
	function initialize_Map(){
			qs();
			if (selectby == "2")
				{
					document.getElementById("Label1").innerHTML=Fullclientname + "<BR>" + " Map for:  Active = Yes, Avail =Yes";
					mtype="Active = Yes, Avail =Yes"
					if (sclientname == "willin")
			{
				document.getElementById("Label1").innerHTML=Fullclientname;
				mtype=Fullclientname;
			}
				}
			else
				{
					document.getElementById("Label1").innerHTML=Fullclientname + "<BR>" +  " Map for:  Active = Yes";
					mtype="Active = Yes"
				}
			document.getElementById("Labelct").innerHTML="Number Addresses:"
			var url = requestURL  + 'k=' + sclientname + '&s=' + selectby + '&a=2' + '&t=' + getcurrenttime();
		//	alert(url)
			xmlHttp = GetXmlHttpObject(generic_return); 
            xmlHttp_Get(xmlHttp, url); 
            indicateLoading();
		}
	
	function checkavail()
	{
	//start of check for #beds/#baths/zip
		//zip (3) beds(6) baths(7)
		//sbedsAvail
		//sbathsAvail
		//szipsAvail
		
		sOK=0;
		if (szipsAvail != '')
		{
		//zip must match
			if (szipsAvail != myaddress[3])
				{
				return;
				}
				
		}
		
		if (sbedsAvail != '')
		{
		//beds must match
			if (sbedsAvail != myaddress[6])
				{
				return;
				}
		}
		
		if (sbathsAvail != '')
		{
		//baths must match
			if (sbathsAvail != myaddress[7])
				{
				return;
				}
		}
		filterpropid[icount]=myaddress[5]
		icount=icount+1;
		sOK=1;
		return
			
	}
	
	function ttCount()
	
	{
	var stb
	var saddress
	var saddress1
		clearTimeout(touttimer)
		stbl= mytable[mytablei]
		myaddress=stbl.split('|');
		checkavail()
		
		if (sOK == 1)
		{
		
		saddress = myaddress[0] + ", " + myaddress[1] + ", " + myaddress[2] + " " + myaddress[3];
		saddress1 = saddress;
		sadr_all=myaddress[0] + ", " + myaddress[1] + ", " + myaddress[2] + " " + myaddress[3];
		spropID=myaddress[5];
		myProp=spropID
		//save the propID in array
		allpropid[mytablei]=spropID
		
		stype=myaddress[4];
		sbeds=myaddress[6];
		sbaths =myaddress[7];
		srent=myaddress[8];
		postingtitle=""	//myaddress[12];
		if (myaddress[9] == "")
		{
			sphoto="http://www.accountingontheweb.com/Common/availprop/gmaps/images/" + "nopic.jpg";
		}
		else
		{
			sphoto= myaddress[9];
		}
		lat_point=myaddress[10]
		lon_point=myaddress[11]
		//alert(sphoto)
		if (lat_point != '')
	    {
		
			if (lat_point ==0 || lon_point ==0)
			{
			notfoundbygoogle(myaddress[0])
			}
			else
			{
			showAddressfromtable(saddress,myaddress[0],saddress1);
			}
			waitcount=1
		}
		else
		{
			showAddress(saddress,myaddress[0],saddress1);
			waitcount=mapspeed	//1500
		}
		mytablei=mytablei + 1
		document.getElementById("Labelct").innerHTML="Number Addresses: " + icount	//mytablei
			
		//end of check for beds,baths,zip
		}
		else
		
		{
			mytablei=mytablei + 1
		}
		
		
		//setup for wait ms
		if (mytablei < mytableii)
		{
			touttimer=setTimeout('ttCount()',waitcount)
			return;
		}	
		else
		{
			loading = false;
			
		if (mygeoArray.length > 0)
			{
			icount=0;
			mygeoArrayctrout=0
			splt=mygeoArray[mygeoArrayctrout]
			var url = requestURL  + 'k=' + sclientname + '&s=0' + '&a=1' + '&p=' + splt + '&t=' + getcurrenttime();
			xmlHttp = GetXmlHttpObject(geo_code_return); 
            xmlHttp_Get(xmlHttp, url);
            }
			
	
		}
	}
	
function notfoundbygoogle(sadr)
{
	if (stype == '')
		{
			stypetext="$" + srent
		}
	else
		{
			stypetext="$" + srent
		}
	if (stypetext.length  < 5)
		{
			stypetext=stypetext + "&nbsp;&nbsp;"
		}
				//
		var listItem = document.createElement('li');
		listItem.innerHTML = '<div style="background-color : red;" class="label">'+ stypetext +'</div>' + '<FONT color="#445555" size="1.5px" face="Arial">' + sadr + '</FONT>';
		document.getElementById('sidebar-list').appendChild(listItem);
}
	
		

  // Standard browsers (Mozilla, Safari, etc.)
 function windowHeight() {
  if (self.innerHeight) {
    return self.innerHeight;
  }
  // IE 6
  if (document.documentElement && document.documentElement.clientHeight) {
   return document.documentElement.clientHeight;
  }
  // IE 5
  if (document.body) {
    return document.body.clientHeight;
  }
  // Just in case. 
  return 0;
}

function handleResize() {
  var height = windowHeight() - document.getElementById('toolbar').offsetHeight - 90;
  //document.getElementById('map_canvas').style.height = height + 'px';
  //document.getElementById('sidebar').style.height = height + 'px';
}

function createMarkerClickHandler(marker, text, link,s1,d1,s2,pt,points) {
  return function() {
    marker.openInfoWindowHtml(
    '<FONT face="Arial" color="black" size="2">' +
    '<CENTER><div  id="t1" style="background color : lightgreen;" class="label">'+ text + '<br>|' + points + '</div></CENTER>' +
    '<p align="left"><IMG src="' + s2 + '" width="120" height="120" border="1" align="left"><a href="' + link +  '"' +  'target="_blank"' + '>Click For Property Details</a></p>' +
    '<p align="left">Directions: &nbsp;&nbsp;<a href="' + mapfrom + s1 + '"' +  'target="_blank"' + '>From</a>&nbsp;&nbsp;&nbsp;&nbsp; ' +
    '<a href="' + mapto + d1 + '"' +  'target="_blank"' + '>To</a></p>' +
    '<INPUT  type="button" name="Addbtn" value="ADD TO DIRECTIONS" onclick="addtolistbox(t1.innerText)"></font>'
     
    );
    return false;
  };
}

function indicateLoading() {
	loading = true;
	displayLoadingMsg();
}

function displayLoadingMsg() {
	    document.all.pleasewaitScreen.style.filter="alpha(opacity=70)";
		document.all.pleasewaitScreen.style.pixelTop = (document.body.scrollTop + 250);
		document.all.pleasewaitScreen.style.visibility="visible";
	if (loading){
		var to = window.setTimeout('displayLoadingMsg()',100);
	}
	else {

		document.all.pleasewaitScreen.style.visibility="hidden";
		
	}
}

function getCookie(cookieName) {
	if (document.cookie.length > 0) {
		var cIndex = document.cookie.indexOf(cookieName+"=");
		if (cIndex != -1) {
			cIndex += cookieName.length + 1;
			var cLength = document.cookie.indexOf(";", cIndex);
			if (cLength == -1) {
				cLength = document.cookie.length;
			}
			return unescape(document.cookie.substring(cIndex, cLength)); 
		}
	}
	return null;
}

function setCookie(cookieName, value, expiredays) {
	var exp = "";
	if (expiredays) {
		var ExpireDate = new Date ();
		ExpireDate.setTime(ExpireDate.getTime() + (expiredays * 24 * 3600 * 1000));
		exp = ExpireDate.toGMTString();
	}
	document.cookie = cookieName + "=" + escape(value) + "; expires=" + exp + "; path=/";
}



function delCookie (cookieName) {
	if (getCookie(cookieName)) {
		document.cookie = cookieName + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT";
	}
}


function qs() {
	var query = window.location.search.substring(1);
	var parms = query.split('&');
	sclientname='';
	sbedsAvail='';
	sbathsAvail='';
	szipsAvail='';
	for (var i=0; i<parms.length; i++) {
	var pos = parms[i].indexOf('=');
	if (pos > 0) {
		var key = parms[i].substring(0,pos);
		var val = parms[i].substring(pos+1);
		qsParm[key] = val;
		if (i == 0)
		{
		sclientname=val
		}
		if (i == 1)
		{
		Fullclientname=val.replace(/%20/gi, " ");
			if (sclientname == "es")
			{
				Fullclientname="Echo Summit Property Management"
			}
		if (sclientname == "willin")
			{
				Fullclientname="Willin Property Management"
			}
		}
		//
		if (i == 2)
		{
		selectby=val;
		}
		//beds,bat,zip-3,4,5
		if (i == 3)
		{
		sbedsAvail=val;
		}
		if (i == 4)
		{
		sbathsAvail=val;
		}
		if (i == 5)
		{
		szipsAvail=val;
		}		
		//use to time finding maps
		if (i == 6)
		{
		mapspeed=val;
		}
		else
		{
		mapspeed=1500
			
		
		}
	}
		
}
}

function getcurrenttime()
 	{
 	//this time is used to fix the ajax refresh problem
 	var d = new Date();
	var curr_hour = d.getHours();
	var curr_min = d.getMinutes();
	var curr_mill = d.getMilliseconds();
	var full_time =curr_hour+curr_min+curr_mill;
	return (full_time);
 	}
 	
function GoToDirMap()
 	{
 	var url
	var liststring
 	var sctr =0;
 	var r=confirm("Show Multiple Directions Map?");
	if (r==true)
	{
		liststring=""
		//filterpropid
		
 		for (var i=0; i<filterpropid.length; i++) 
 		{
 			liststring=liststring + filterpropid[i] + "|"
 		}
 		if (sclientname=="arbourpm")
 		{
 		
 		 url = "http://www.accountingontheweb.com/Common/availprop/Gmaps/MMap.aspx?mtype=" + mtype + "&sclient=" + sclientname + "&name=" + Fullclientname + "&geo=" + liststring + "&ret=" + selectby + "&backto=1"

 		}
 		else
 		{
 		
  		url = "http://www.accountingontheweb.com/Common/availprop/Gmaps/MMap.aspx?mtype=" + mtype + "&sclient=" + sclientname + "&name=" + Fullclientname + "&geo=" + liststring + "&ret=" + selectby
  		}
			//window.open(url)
 			window.location.href=url

 		}
	}
	
function getdirections()
 	{
 		if (objSourceElement.options.length <= 1 )
 		{
 			alert("Please select at least 2 address first!");
 			return;
 		}
 	
 	var r=confirm("Show Detail Driving Directions?");
	if (r==true){
	
	//goto driving directions
	var sgeocoding = ""
	var sclear
	var url
	var i
	var x
	var liststring=""
	var liststringadr=""
		//{  
		var list = document.getElementById('objSourceElement');
		for(var i = 0; i < list.options.length; ++i)
		{
			sclear=list.options[i].value
			sclear=sclear.substr(1)
			x=sclear.length
			x=x-1
			sclear=sclear.substr(0,x)
			liststring = liststring + sclear + "|"
			//add to list for each adr
			liststringadr = liststringadr + list.options[i].text + "|"
					
		}
		//get geo for the start adr
		var txtAddress = document.getElementById("startadr");
        var address = txtAddress.value;
        document.getElementById("startadr").value='';
        if (address > '')
        {
        
			showStartingAddress(address,liststring,liststringadr);
			}
        else
        {
        	writecookie(liststringadr);
			url = "http://www.accountingontheweb.com/Common/availprop/Gmaps/directions.aspx?mtype=" + mtype + "&sclient=" + sclientname + "&geo=" + liststring
			//window.open(url)
			window.location.href=url
        }
		
	}
 	}
 	
 	 function showStartingAddress(address,liststring,liststringadr) {
                       
            geocoder.getLatLng(
                address,
                function (point) {
                    if (!point) {
                        alert(address + " not found on Google Maps");
                    }
                    else {
                        liststring =point + "|" + liststring;
                        liststringadr = address + "|" + liststringadr;
                        writecookie(liststringadr);
						url = "http://www.accountingontheweb.com/Common/availprop/Gmaps/directions.aspx?mtype=" + mtype + "&sclient=" + sclientname + "&geo=" + liststring
						//window.open(url) 
						window.location.href=url                  
                    }
                }
            );
        }

	function clearlistbox(){
 	
 	var r=confirm("Clear the listbox?");
	if (r==true){
	document.getElementById("startadr").value='';
	for (var i=objSourceElement.options.length-1; i>=0; i--){
    objSourceElement.options[i] = null;
	}
	objSourceElement.selectedIndex = -1;
	}
 	}
 	
 	function clearlistboxstart(){
	for (var i=objSourceElement.options.length-1; i>=0; i--){
    objSourceElement.options[i] = null;
	}
	objSourceElement.selectedIndex = -1;
	}
 	
 	function addtolistbox(srcitem)
 	{
 		var splitoption
 		var list = document.getElementById('objSourceElement');
 			{
 			if (list.options.length == 25 )
 				{
 				alert("You have exceeded the 25 maximum addresses to map!")
						return;
 				}
 			}
 		splitoption=srcitem.split("|")
 		
 		var o = document.createElement("option");
		o.text = splitoption[0]
		o.value = splitoption[1]
		{
			for(var i = 0; i < list.options.length; ++i)
				if (list.options[i].value == o.value)
				{
					alert("This address already exist in address box!")
					return;
				}
		}
		
		
		document.getElementById("objSourceElement").add(o);
 	}
 	
function removeOptions()
{
	if (objSourceElement.options.length == 0)
	{
		return;
	}
	var r=confirm("Delete Selection Item(s)?");
	if (r==true)
	{
	var i;
	for(i=objSourceElement.options.length-1;i>=0;i--)
	{
	if(objSourceElement.options[i].selected)
	objSourceElement.remove(i);
	}
	}


}	
	
	
window.onresize = handleResize;	
