﻿// Mapping System for Homes.org
// Michael Lenhardt
// 12.05.2006
    
    var mycounter;
    var str;
    var xmlHttp; 
    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; 
    var is_netscape = (navigator.userAgent.indexOf('Netscape') >= 0) ? 1 : 0; 
    var is_firefox = (navigator.userAgent.indexOf('Firefox') >= 0) ? 1 : 0; 
    var map ;
    var gmap = null;
    var gmapStart = null;
    var gmapEnd = null;
    var StartLat = null;
    var StartLong = null;
    var EndLat = null;
    var EndLong = null;
    
  
    function getHomesInfo() {
        window.location.href = "HomesInfo.aspx?v=2&zip=" + document.getElementById("txtZipCode").value ;
    }
    
    function getDrivingDefault()
    {
       var map = new VEMap('myMapDriving');
       
      try
          {
          map.LoadMap();  
          
          }
          catch(e)
          {}
       map.HideDashboard();
    
    
    }
    
    function getDrivingDirections()
      {
       var map = new VEMap('myMapDriving');
       
      try
          {
          map.LoadMap();  
          }
          catch(e)
          {}
       map.HideDashboard();
       
       try
       
       {
       map.GetRoute(document.getElementById('ctl00_Main_txtFromAddressDriving').value + ' ' + document.getElementById('ctl00_Main_txtFromZipCode').value , document.getElementById('ctl00_Main_txtToAddressDriving').value + ' ' +  document.getElementById('ctl00_Main_txtToZipCode').value  ,null,null,onGotRoute);
       }
       catch(e)
       {}
       
      }
    

    function DoPixelToLL(x,y) {
        var ll = map.PixelToLatLong(x,y).toString()
        alert("The latitude,longitude of the pixel at ("+x+","+y+") is: "+ll)
    }
    
    
    function DoLLToPixel() {
        var center = map.LatLongToPixel(map.GetCenter());
        alert("The center of the map is at pixel: x="+center.x+", y="+center.y)
    }
    
       
    function getRoute()
      {
       
       var map = new VEMap('startmap');
       
       
        try
          {
          map.LoadMap();  
          }
          catch(e)
          {}
       map.GetRoute("3049 NW 28th Terrace, Boca Raton, FL 33434","3303 W Commercial Blvd, Ft Lauderdale, FL",null,null,onGotRoute);
       //map.HideDashboard();
       setTimeout("getZoom()",2000);
       gmapStart = map.GUID;
       
       var map2 = new VEMap('endmap');
       map2.LoadMap();
       map2.GetRoute("3049 NW 28th Terrace, Boca Raton, FL 33434","3303 W Commercial Blvd, Ft Lauderdale, FL",null,null,null);
       map2.HideDashboard();
       gmapEnd = map2.GUID;
       
       var map3 = new VEMap('myMapDriving');
       map3.LoadMap();
       map3.GetRoute("3049 NW 28th Terrace, Boca Raton, FL 33434","3303 W Commercial Blvd, Ft Lauderdale, FL",null,null,null);
              
      }
      
      function getZoom() {
      
        var xLat = new VELatLong(StartLat,StartLong);
        var eLat = new VELatLong(EndLat,EndLong);
        
        try
        {
         VEMap._GetMapFromGUID(gmapStart).SetCenterAndZoom(xLat,16);
         VEMap._GetMapFromGUID(gmapStart).Pan(0,30); 
         VEMap._GetMapFromGUID(gmapEnd).SetCenterAndZoom(eLat,16); 
         VEMap._GetMapFromGUID(gmapEnd).Pan(0,30); 
        } catch(e) { }
      
      };
      
      function onGotRoute(route)         
        {
        var routeinfo="Route info:<br /><br />";            
        routeinfo+="Driving Time: ";
        routeinfo+=   route.Itinerary.Time+"<br />";
        routeinfo+="Total distance: ";           
        routeinfo+=   route.Itinerary.Distance+" ";            
        routeinfo+=   route.Itinerary.DistanceUnit+"<br />";                        
        var steps="";            
        var len = route.Itinerary.Segments.length;               
        for(var i = 0; i < len ;i++)              
         { 
        steps+=  i+1 + '. ' + route.Itinerary.Segments[i].Instruction+" -- (";                  
        steps+=route.Itinerary.Segments[i].Distance+") ";                  
        steps+=route.Itinerary.DistanceUnit+"<br />";               
        }            
        routeinfo+="Waypoints:<br />"+steps;
        document.getElementById("myDirections").innerHTML = routeinfo;
        StartLat = route.StartLocation.LatLong.Latitude;
        StartLong = route.StartLocation.LatLong.Longitude;
        EndLat = route.EndLocation.LatLong.Latitude;
        EndLong = route.EndLocation.LatLong.Longitude;
       
        }      
         

        function GetHomesMap(xLat, xLong, xDiv, xZoom, xType)
          {
           var map = new VEMap(xDiv);
           
          try
          {
          map.LoadMap(new VELatLong(xLat, xLong),  xZoom ,'h' , false);
          }
          catch(e)
          {}
          
           //map.HideDashboard();
           
          }   
            
      function GetDefaultMap()
      {
         var map = new VEMap('DefaultMap');
         //map.LoadMap(new VELatLong(47.22, -122.44), 12, 'r', false, VEMapMode.Mode3D, true);
         try
          {
         map.LoadMap(new VELatLong(26.383152008, -80.174560547), 10 ,'h' , false);
          }
          catch(e)
          {}
         
         map.HideDashboard();
         //map.SetMapStyle(VEMapStyle.Road);  'Aerial  Hybrid Birdseye    r a h o
         //map.LoadMap();
         //SetAutoLocateViewport(26.3583, -80.0834, 10, false, "%1 has determined your location by using your computer's IP address.");
         
      }   
      
      function GetDefaultMap2()
      {
      // all the try/catch is to trap Firefox errors
       try
          {
                var map = new VEMap('DefaultMap');
          }
          catch(e)
          {}
       
       
       if (document.getElementById('ctl00_Main_jLat') == null) { var xLat = '26.383152008';} else {var xLat = document.getElementById('ctl00_Main_jLat').value;};
       if (document.getElementById('ctl00_Main_jLong') == null) {var xLong = '-80.174560547';} else {var xLong = document.getElementById('ctl00_Main_jLong').value;};
       
        try
          {
         
         map.LoadMap(new VELatLong(xLat, xLong),  11 ,'h' , false);
        
          }
          catch(e)
          {}
       
        try
          {
         
         map.HideDashboard();
        
          }
          catch(e)
          {}
        
       
      }   


         
      function GetMap()
      {
         var footer=null;
         var map = new VEMap("myMap");
         //map.LoadMap(new VELatLong(47.22, -122.44), 12, 'r', false, VEMapMode.Mode3D, true);
         map.LoadMap(new VELatLong(26.383152008, -80.174560547), 10 ,'h' , false);
         map.Resize(150,150);
         //map.HideDashboard();
         //map.SetMapStyle(VEMapStyle.Road);  'Aerial  Hybrid Birdseye    r a h o
         //map.LoadMap();
         //SetAutoLocateViewport(26.3583, -80.0834, 10, false, "%1 has determined your location by using your computer's IP address.");
        
      }   
     
      function GetEGMap()
      {
      
       try
          {
                var map = new VEMap('myMap');
          }
          catch(e)
          {}
       
       
       if (document.getElementById('ctl00_Main_jLat') == null) { var xLat = '26.383152008';} else {var xLat = document.getElementById('ctl00_Main_jLat').value;};
       if (document.getElementById('ctl00_Main_jLong') == null) {var xLong = '-80.174560547';} else {var xLong = document.getElementById('ctl00_Main_jLong').value;};
       
        try
          {
         
         map.LoadMap(new VELatLong(xLat, xLong),  11 ,'h' , false);
        
          }
          catch(e)
          {}
       
        try
          {
         //map.HideDashboard();
        
          }
          catch(e)
          {}
        
       
      }   

    function getVEResearchHomeSales(szZip, szAddress) {
  
         try {
           
           var szradio = "1";
           var url = 'VEMap.asmx/VEMap?szZip=' + szZip + '&szAddress=' + szAddress + '&szPropertyType=1'  ;   
           
            if (window.ActiveXObject) {
            xmlHttp = GetXmlHttpObject(stateResearchHandler); 
            } else {
            xmlHttp = GetXmlHttpObject(stateResearchHandlerFirefox); 
            };
                      
           xmlHttp_Get(xmlHttp, url); 
                      
           } catch(e) 
           
           {}
    }
    
     function stateResearchHandler() 
     { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){ 
            
             
            //str =  xmlHttp.responseXml.text; 
            str = xmlHttp.responseXml.documentElement;
            response = str.text;
            
            if (window.ActiveXObject)
                  {
                  var doc=new ActiveXObject("Microsoft.XMLDOM");
                  doc.async="false";
                  doc.loadXML(response);
                  }
                // code for Mozilla, Firefox, Opera, etc.
                else
                  {
                  var parser=new DOMParser();
                  var doc=parser.parseFromString(response,"text/xml");
                  doc.loadXML(response);
                  }

            var nv = doc.documentElement;
            var nb = doc.xml;
            var sp = doc.getElementsByTagName('XHSD:SUBJECT_PROPERTY');
                       
            var nl = doc.getElementsByTagName('XHSD:PROPERTY');
            
            if (nl.length ==0){
            alert("Home sale values were not found for the address and zip code you entered.  Please try again with a different zip code.");
            document.getElementById('ctl00_Main_txtAddressWorth').value = "";
            document.getElementById('ctl00_Main_txtZipCodeWorth').value = "";
            document.getElementById('ctl00_Main_txtZipCodeWorth').focus();
            return false;
            }
            
             var xLat = doc.getElementsByTagName('XHSD:LATITUDE');
            var xLong = doc.getElementsByTagName('XHSD:LONGITUDE');
            //var map = null;
           
           if (xLat.length == 0) {
           getVEResearchHomeSales(document.getElementById('ctl00_Main_txtZipCodeWorth').value, '');
           return false;
           }
           
           var output = "<table id='mytable1' class='worthgrid-container' cellspacing='0' cellpadding='2'><tbody><tr class='worthgrid-row1'>";
            output += "<th align='center'><font color=white>House #</font></th><th><font color=white>Street&nbsp;Address</font></th><th align='center'><font color=white>Distance</font></th><th align='center'><font color=white>Sale&nbsp;Price</font></th><th align='center'><font color=white>Close&nbsp;Date</font></th><th align='center'><font color=white>Bed</font></th><th align='center'><font color=white>Bath</font></th><th align='center'><font color=white>Sq.&nbsp;Ft.</font></th><th align='center'><font color=white>Year&nbsp;Built</font></font></th>"
            
             for (var i=0; i < nl.length ;i++)
              {
                //output += "<tr><td>" + nl(i).childNodes(1).childNodes(6).baseName + "</td><td>" + nl(i).childNodes(1).childNodes(6).text +  "</td><td>" + nl(i).childNodes(1).childNodes(7).baseName + "</td><td>" + nl(i).childNodes(1).childNodes(7).text + "</td></tr>";
                //START
                output += "<tr><td align='center'>" + (i + 1) + "</td>";
                //address
                output += "<td nowrap>" +  nl(i).childNodes(0).childNodes(0).text + ' ' + nl(i).childNodes(0).childNodes(1).text + ' ' + nl(i).childNodes(0).childNodes(2).text + ' ' + nl(i).childNodes(0).childNodes(3).text + ' ' +  nl(i).childNodes(0).childNodes(4).text + ' ' + nl(i).childNodes(0).childNodes(5).text + "</td>" ;
                //distance
                output += "<td align='center'>" + FormatNumber(nl(i).childNodes(0).childNodes(14).text,2,false,false) + "</td>";
                //Sale Price
                output += "<td align='center'>$" + CommaFormatted(nl(i).childNodes(1).childNodes(6).text) + "</td>";
                //Close Date
                output += "<td align='center'>" + nl(i).childNodes(1).childNodes(7).text + "</td>";
                //Bedrooms
                output += "<td align='center'>" + nl(i).childNodes(1).childNodes(3).text + "</td>";
                //Bath
                output += "<td align='center'>" + nl(i).childNodes(1).childNodes(4).text + "</td>";
                //Sqare Feet
                output += "<td align='center'>" + CommaFormatted(nl(i).childNodes(1).childNodes(5).text,0,false,false) + "</td>";
                //Year Built
                output += "<td align='center'>" + nl(i).childNodes(1).childNodes(8).text + "</td>";
                
                //END
                output += "</tr>";
              }
           
           output += "</tr></tbody></table>";
           document.getElementById("dataresults").innerHTML = output;
           
       if (xLat(0) != null) {
        var map = new VEMap('myMapHome');
        var x = xLat(0).childNodes(0).text;
        var y = xLong(0).childNodes(0).text;
        
        
        
        
         try
          {
            map.LoadMap(new VELatLong(x,y), 15 ,'h' , false);
          }
          catch(e)
          {}
         
        
        //map.HideDashboard();
        gmap = map.GUID;
            
            }
            var pinID = 1;
          for (var i=0; i < nl.length ;i++)
              {
                var pin = new VEPushpin(
                
                pinID, 
                new VELatLong(nl(i).childNodes(0).childNodes(11).text, nl(i).childNodes(0).childNodes(12).text), 
                "images/pins/" + pinID + ".gif",  
                '<b>' + (i+1) + '.</b> $' + nl(i).childNodes(1).childNodes(6).text + "<br />" + nl(i).childNodes(0).childNodes(0).text + ' ' + nl(i).childNodes(0).childNodes(1).text + ' ' + nl(i).childNodes(0).childNodes(2).text + ' ' + nl(i).childNodes(0).childNodes(3).text + ' ' +  nl(i).childNodes(0).childNodes(4).text + ' ' + nl(i).childNodes(0).childNodes(5).text  , 
                nl(i).childNodes(0).childNodes(6).text + ', ' + nl(i).childNodes(0).childNodes(7).text + '  ' + nl(i).childNodes(0).childNodes(8).text + "<br />" +  'Closing Date: ' + nl(i).childNodes(1).childNodes(7).text,
                'iconStyle',
                'titleSytle',
                'detailsStyle'
                );
                map.AddPushpin(pin);
                pinID++;
            }
            
             //Add Main Location PIN
             if (sp.length > 0) {
             var pin = new VEPushpin(
                    pinID, 
                    new VELatLong(sp(0).childNodes(4).text, sp(0).childNodes(5).text), 
                    'images/yellowstaricon.gif', 
                    sp(0).childNodes(0).text , 
                    sp(0).childNodes(1).text + ', ' + sp(0).childNodes(2).text,
                    'iconStyle',
                    'titleSytle',
                    'detailsStyle'
                    );
                    map.AddPushpin(pin);
                    pinID++;
                    }
                
        }    
     }
            
            
    
    function getVEMaster()
    { 
           
           //Main Function
            try {
           
           var szradio;
           if (document.forms[0].hometype[0].checked) { szradio = "1"; } else { szradio = "2"; };
                      
           var url;
           if (document.getElementById("ctl00_Main_txtAddress").value == null) {
           var url = 'VEMap.asmx/VEMap?szZip=' + document.getElementById("ctl00_Main_txtZipCode").value + '&szAddress=&szPropertyType=' + szradio ;   
           }
           else 
           {
           var url = 'VEMap.asmx/VEMap?szZip=' + document.getElementById("ctl00_Main_txtZipCode").value + '&szAddress=' + document.getElementById("ctl00_Main_txtAddress").value + '&szPropertyType=' + szradio ;   
           }
           
           xmlHttp = GetXmlHttpObject(stateChangeHandler); 
           xmlHttp_Get(xmlHttp, url); 
                      
           } catch(e) {}
    } 
    function getVEMap()
    { 
           var url = 'VEMap.asmx/VEMap?szZip=' + document.getElementById("txtZipCode").value + '&szAddress=';   
           xmlHttp = GetXmlHttpObject(stateChangeHandler); 
           xmlHttp_Get(xmlHttp, url); 
           
           
    } 
    
    function stateChangeHandler() 
    { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){ 
            
            //str =  xmlHttp.responseXml.text; 
            str = xmlHttp.responseXml.documentElement;
            response = str.text;
            
            if (window.ActiveXObject)
                  {
                  var doc=new ActiveXObject("Microsoft.XMLDOM");
                  doc.async="false";
                  doc.loadXML(response);
                  }
                // code for Mozilla, Firefox, Opera, etc.
                else
                  {
                  var parser=new DOMParser();
                  var doc=parser.parseFromString(response,"text/xml");
                  doc.loadXML(response);
                  }
            
            var nv = doc.documentElement;
            var nb = doc.xml;
            var sp = doc.getElementsByTagName('XHSD:SUBJECT_PROPERTY');
            var nl = doc.getElementsByTagName('XHSD:PROPERTY');
            var output = "<table id='mytable1' class='mapdetail' ><tbody id='myTbody'>";
            output += "<th align='center'>Map#</th><th align='center'>Street&nbsp;Address</th><th align='center'>Distance</th><th align='center'>Sale&nbsp;Price</th><th align='center'>Close&nbsp;Date</th><th align='center'>Bed</th><th align='center'>Bath</th><th align='center'>Sq.&nbsp;Ft.</th><th align='center'>Year&nbsp;Built</th>"
            
             for (var i=0; i < nl.length ;i++)
              {
                //output += "<tr><td>" + nl(i).childNodes(1).childNodes(6).baseName + "</td><td>" + nl(i).childNodes(1).childNodes(6).text +  "</td><td>" + nl(i).childNodes(1).childNodes(7).baseName + "</td><td>" + nl(i).childNodes(1).childNodes(7).text + "</td></tr>";
                //START
                output += "<tr><td align='center'>" + (i + 1) + "</td>";
                //address
                output += "<td nowrap>" +  nl(i).childNodes(0).childNodes(0).text + ' ' + nl(i).childNodes(0).childNodes(1).text + ' ' + nl(i).childNodes(0).childNodes(2).text + ' ' + nl(i).childNodes(0).childNodes(3).text + ' ' +  nl(i).childNodes(0).childNodes(4).text + ' ' + nl(i).childNodes(0).childNodes(5).text + "</td>" ;
                //distance
                output += "<td align='right'>" + nl(i).childNodes(0).childNodes(14).text + "</td>";
                //Sale Price
                output += "<td align='right'>" + nl(i).childNodes(1).childNodes(6).text + "</td>";
                //Close Date
                output += "<td align='center'>" + nl(i).childNodes(1).childNodes(7).text + "</td>";
                //Bedrooms
                output += "<td align='center'>" + nl(i).childNodes(1).childNodes(3).text + "</td>";
                //Bath
                output += "<td align='center'>" + nl(i).childNodes(1).childNodes(4).text + "</td>";
                //Sqare Feet
                output += "<td align='center'>" + nl(i).childNodes(1).childNodes(5).text + "</td>";
                //Year Built
                output += "<td align='center'>" + nl(i).childNodes(1).childNodes(8).text + "</td>";
                
                //END
                output += "</tr>";
              }
           
           output += "</tbody></table>";
           document.getElementById("dataresults").innerHTML = output;
            
            var xLat = doc.getElementsByTagName('XHSD:LATITUDE');
            var xLong = doc.getElementsByTagName('XHSD:LONGITUDE');
            //var map = null;
           
       
       if (xLat(0) != null) {
        var map = new VEMap('myMap');
        var x = xLat(0).childNodes(0).text;
        var y = xLong(0).childNodes(0).text;
        document.getElementById('ctl00_Main_jLat').value = x;
        document.getElementById('ctl00_Main_jLong').value = y;
        
       }
       else
       {
       alert('Invalid Zip Code');
       document.getElementById("ctl00_Main_txtZipCode").value = '';
       document.getElementById("ctl00_Main_txtZipCode").focus();
       return false;
       };
       
       
       
       try
          {
            map.LoadMap(new VELatLong(x,y), 15 ,'h' , false);
          }
          catch(e)
          {}
         
       
       map.AttachEvent('onclick', getLLMaster);
       gmap = map.GUID;
       
       //map.HideDashboard();
        
         var pinID = 1;
          for (var i=0; i < nl.length ;i++)
              {
                var pin = new VEPushpin(
                pinID, 
                new VELatLong(nl(i).childNodes(0).childNodes(11).text, nl(i).childNodes(0).childNodes(12).text), 
                null, 
                '<b>' + (i+1) + '.</b> $' + nl(i).childNodes(1).childNodes(6).text + "<br />" + nl(i).childNodes(0).childNodes(0).text + ' ' + nl(i).childNodes(0).childNodes(1).text + ' ' + nl(i).childNodes(0).childNodes(2).text + ' ' + nl(i).childNodes(0).childNodes(3).text + ' ' +  nl(i).childNodes(0).childNodes(4).text + ' ' + nl(i).childNodes(0).childNodes(5).text  , 
                nl(i).childNodes(0).childNodes(6).text + ', ' + nl(i).childNodes(0).childNodes(7).text + '  ' + nl(i).childNodes(0).childNodes(8).text + "<br />" +  'Closing Date: ' + nl(i).childNodes(1).childNodes(7).text,
                'iconStyle',
                'titleSytle',
                'detailsStyle'
                );
                map.AddPushpin(pin);
                pinID++;
            }
            
             //Add Main Location PIN
             var pin = new VEPushpin(
                    pinID, 
                    new VELatLong(sp(0).childNodes(4).text, sp(0).childNodes(5).text), 
                    'images/yellowstaricon.gif', 
                    sp(0).childNodes(0).text , 
                    sp(0).childNodes(1).text + ', ' + sp(0).childNodes(2).text,
                    'iconStyle',
                    'titleSytle',
                    'detailsStyle'
                    );
                    map.AddPushpin(pin);
                    pinID++;
                    
                    //getAmenities();
            
         } 
    } 

    // 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 if (is_firefox){ 
            //Opera has some issues with xmlHttp object functionality 
            //alert('Firefox detected. The page may not behave as expected.'); 
            objXmlHttp = new XMLHttpRequest(); 
            objXmlHttp.onload = handler; 
            objXmlHttp.onerror = handler;      
        } 
        
        else{ 
            // Mozilla | Netscape | Safari 
            objXmlHttp = new XMLHttpRequest(); 
            objXmlHttp.onload = handler; 
            objXmlHttp.onerror = handler; 
        } 
         
        //Return the instantiated object 
        return objXmlHttp; 
    } 

function processReqChange() 
{
    // only if req shows "complete"
    if (req.readyState == 4) {
        // only if "OK"
        if (req.status == 200) {
            // ...processing statements go here...
            alert('test');
        } else {
            alert('There was a problem retrieving the XML data:\n' + req.statusText);
        }
    }
}

function TogglePanel()
{
var panel=document.getElementById("mypanel");
mypanel.style.display=(mypanel.style.display=="block" ? "none" : "block");
}

function getOBSchools()
    { 
           var url;
           var url = 'VEMap.asmx/getOBSchools?szLat=' + document.getElementById('ctl00_Main_jLat').value + '&szLong=' + document.getElementById('ctl00_Main_jLong').value + '&szZipCode=' + document.getElementById('ctl00_Main_txtZipCode').value;   
           xmlHttp = GetXmlHttpObject(HandlerOBSchools); 
           xmlHttp_Get(xmlHttp, url); 
    } 
    
    function HandlerOBSchools() 
    { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){ 
            
            //str =  xmlHttp.responseXml.text; 
            
            if (xmlHttp.responseXml.documentElement == null) { return null };
            str = xmlHttp.responseXml.documentElement;
            
            var response = str.text;
            
            if (window.ActiveXObject)
                  {
                  var doc=new ActiveXObject("Microsoft.XMLDOM");
                  doc.async="false";
                  doc.loadXML(response);
                  }
                // code for Mozilla, Firefox, Opera, etc.
                else
                  {
                  var parser=new DOMParser();
                  var doc=parser.parseFromString(response,"text/xml");
                  doc.loadXML(response);
                  }

                    
         var nl = doc.getElementsByTagName('table');
         var pinID = 1;
         
          var map = new VEMap('myMap');
          
          
           try
          {
          map.LoadMap(null,null,'r');
          }
          catch(e)
          {}
          
          
          map.AttachEvent('onclick', getLLSchools); //change to your event
          document.getElementById('dataresults').innerHTML = '';
          
          var output = "<table id='tblSchool' ><tbody id='myTbody'>";
          output += "<th align='center'>Map#</th><th align='center'>Name and Location</th><th>Distance</th>"
          
          for (var i=0; i < nl.length ;i++)
          
              {
                 try
                    {
                    var xLat = nl(i).getElementsByTagName("GEOCODING_LATITUDE")
                    var xLong = nl(i).getElementsByTagName("GEOCODING_LONGITUDE") 
                    var xWebSite = nl(i).getElementsByTagName("WEBSITE_URL")
                    var xInstitutionName = nl(i).getElementsByTagName("INSTITUTION_NAME")
                    var xLocationAddress = nl(i).getElementsByTagName("LOCATION_ADDRESS")
                    var xLocationCity = nl(i).getElementsByTagName("LOCATION_CITY")
                    var xStateAbbrev = nl(i).getElementsByTagName("STATE_ABBREV")
                    var xZip5_4 = nl(i).getElementsByTagName("ZIP5_4")
                    var xTelephoneNumber = nl(i).getElementsByTagName("TELEPHONE_NUMBER")
                    var xStudentsNumberOf = nl(i).getElementsByTagName("STUDENTS_NUMBER_OF")
                                        
                    var sFirstName;
                    var xFirstName = nl(i).getElementsByTagName("FIRST_NAME");
                    if (xFirstName.length > 0) {sFirstName = xFirstName(0).text;}
                    
                    var sLastName;
                    var xLastName = nl(i).getElementsByTagName("LAST_NAME");
                    if (xLastName.length > 0) {sLastName = xLastName(0).text;}
                    
                    var sTitle;
                    var xTitle = nl(i).getElementsByTagName("ENGLISH_TITLE");
                    if (xTitle.length > 0) {sTitle = xTitle(0).text;}                    
                    
                    var pin = new VEPushpin(
                            pinID, 
                            new VELatLong(xLat(0).text, xLong(0).text), 
                            "images/coolred.gif", 
                            "<b>" + (i+1) + '.</b>  ' + xInstitutionName(0).text + "<br />" + xLocationAddress(0).text +  "<br />" + xLocationCity(0).text + ', ' + xStateAbbrev(0).text + '  ' + xZip5_4(0).text , 
                            sTitle + ': ' + sFirstName + ' ' + sLastName ,
                            'iconStyle',
                            'titleSytle',
                            'detailsStyle'
                            );
                    
                            //MAP Number
                            output += "<tr><td align='center'>" + (i + 1) + "</td>";
                            //address
                            output += "<td nowrap>" +  xInstitutionName(0).text +  "<br />" + xLocationAddress(0).text + ' - ' + xLocationCity(0).text + ', ' + xStateAbbrev(0).text + '  ' + xZip5_4(0).text + "</td>" ;
                            
                            //DISTANCE
                            output += "<td align='center'>" + distance(xLat(0).text,xLong(0).text,document.getElementById('ctl00_Main_jLat').value, document.getElementById('ctl00_Main_jLong').value, 'M') + "</td>" ;

                            
                             //END
                            output += "</tr>";       
                    
                    } 
                    catch(e) { }
                
                    map.AddPushpin(pin);
                    pinID++;
                
                
            }
             
             if (nl.length > 0) {
             var xLoc = new VELatLong(xLat(0).text,xLong(0).text);
             map.SetCenterAndZoom(xLoc,14);
             
             output += "</tbody></table>";
             document.getElementById('dataresults').innerHTML = output;
             
             }
         } 
      } 
    
function getLLSchools(e) {
    document.getElementById('ctl00_Main_jLat').value = e.view.latlong.latitude;
    document.getElementById('ctl00_Main_jLong').value = e.view.latlong.longitude;
   //getOBSchools();
    }
    
    function getLLMaster(e) {
    document.getElementById('ctl00_Main_jLat').value = e.view.latlong.latitude;
    document.getElementById('ctl00_Main_jLong').value = e.view.latlong.longitude;
   //getOBSchools();
    }
        

var pi = 3.14159265358979323846;

function distance( lat1, lon1,  lat2,  lon2, unit) {
  var theta;
  var dist;
  theta = lon1 - lon2;
  dist = Math.sin(deg2rad(lat1)) * Math.sin(deg2rad(lat2)) + Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) * Math.cos(deg2rad(theta));
  dist = Math.acos(dist);
  dist = rad2deg(dist);
  dist = dist * 60 * 1.1515;
  switch(unit) {
    case 'M':
      break;
    case 'K':
      dist = dist * 1.609344;
      break;
    case 'N':
      dist = dist * 0.8684;
      break;
  }
  return (dist);
}


function deg2rad(deg) {
  return (deg * pi / 180);
}

function rad2deg(rad) {
  return (rad * 180 / pi);
}
//var xtemp = distance(26.11234,-80.156756,26.166666,-80.16777,'M');
//alert(xtemp);


function getAmenities() {

   var url;
   var url = 'VEMap.asmx/getOBAmenities?szLat=' + document.getElementById('ctl00_Main_jLat').value + '&szLong=' + document.getElementById('ctl00_Main_jLong').value + '&szZipCode=' + document.getElementById('ctl00_Main_txtZipCode').value;   
   xmlHttp = GetXmlHttpObject(HandlerOBAmenities); 
   xmlHttp_Get(xmlHttp, url); 
  
}

function HandlerOBAmenities() 
    { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete') { 
            
            if (xmlHttp.responseXml.documentElement == null) { return null };
            str = xmlHttp.responseXml.text;
            document.getElementById("sidebarAmenities").innerHTML = str;
                        
         } 
    } 

function getAmenitiesMaster(szCategory, szLineOfBus, szPageIndex) {
 
    var url = "VEMap.asmx/getOBAmenitiesData?szZipCode=" + document.getElementById('ctl00_Main_txtZipCode').value + "&szCategory=" + szCategory + "&szLineOfBus=" + szLineOfBus + "&szPageIndex=" + szPageIndex ; 
    
    if (window.ActiveXObject) {
    xmlHttp = GetXmlHttpObject(HandlerOBAmenitiesData); 
    } else {
    xmlHttp = GetXmlHttpObject(HandlerOBAmenitiesDataFirefox); 
    };
    xmlHttp_Get(xmlHttp, url); 
   
}

function getAmenitiesSearch(szLat, szLong, szRadius, szBusName,szLOB) {
 
    var url = "VEMap.asmx/getOBAmenitiesSearch?szLat=" + szLat + "&szLong="  + szLong + "&szBusName=" + szBusName + "&szRadius=" + szRadius + "&szLOB=" + szLOB; 
    
    if (window.ActiveXObject) {
    xmlHttp = GetXmlHttpObject(HandlerOBAmenitiesData); 
    } else {
    xmlHttp = GetXmlHttpObject(HandlerOBAmenitiesDataFirefox); 
    };
    xmlHttp_Get(xmlHttp, url); 
}   
function getamenitiesData2(szCategory, szLineOfBus, szPageIndex) {
 
    var url = "VEMap.asmx/getOBAmenitiesData?szZipCode=" + document.getElementById('txtZipCode').value + "&szCategory=" + szCategory + "&szLineOfBus=" + szLineOfBus + "&szPageIndex=" + szPageIndex ; 
    xmlHttp = GetXmlHttpObject(HandlerOBAmenitiesData); 
    xmlHttp_Get(xmlHttp, url); 
   
}

function HandlerOBAmenitiesData() 
    { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete') { 
            
            if (xmlHttp.responseXml.documentElement == null) { return null };
            str = xmlHttp.responseXml.text;
             if (window.ActiveXObject)
                  {
                  var doc=new ActiveXObject("Microsoft.XMLDOM");
                  doc.async="false";
                  doc.loadXML(str);
                  }
                // code for Mozilla, Firefox, Opera, etc.
                else
                  {
                  var parser=new DOMParser();
                  var doc=parser.parseFromString(response,"text/xml");
                  doc.loadXML(str);
                  }
            
          var nl = doc.getElementsByTagName('OBAmenities');
          var pinID = 1;
         
          var map = new VEMap('myMap');
          if ( nl.length == 0 ) {return null;}
          var xLatI = nl(i).getElementsByTagName("Longitude")
          var xLongI = nl(i).getElementsByTagName("Latitude")
          
          
          try
          {
          map.LoadMap(new VELatLong(xLatI(0).text,xLongI(0).text),2,'r',false);
          }
          catch(e)
          {}
          
          
          //map.LoadMap();
          //map.HideDashboard();
          document.getElementById('dataresults').innerHTML = '';
          
          var output = "<table id='tblSchool' ><tbody id='myTbody'>";
          output += "<th align='center'>Pin#</th><th align='center'>Name and Location</th><th>Distance</th>"
          
          for (var i=0; i < nl.length ;i++)
          
              {
                 try
                    {
                    var xPin = nl(i).getElementsByTagName("PinID")
                    var xBusName = nl(i).getElementsByTagName("Business_x0020_Name")
                    var xStreet = nl(i).getElementsByTagName("Street")
                    var xCity = nl(i).getElementsByTagName("City")
                    //var xStateName = nl(i).getElementsByTagName("StateName")
                    //var xZip = nl(i).getElementsByTagName("Zip")
                    //var xCountyName = nl(i).getElementsByTagName("CountyName")
                    var xPhone = nl(i).getElementsByTagName("Phone")
                    //var xState = nl(i).getElementsByTagName("State")
                    //var xCounty = nl(i).getElementsByTagName("County")
                    var xLat = nl(i).getElementsByTagName("Latitude")
                    var xLong = nl(i).getElementsByTagName("Longitude")
                    //var xLineOfBus = nl(i).getElementsByTagName("LineOfBus")
                    //var xIndustry = nl(i).getElementsByTagName("Industry")
                    //var xFranchise = nl(i).getElementsByTagName("Franchise")
                    //var xCategory = nl(i).getElementsByTagName("Category")
                                       
                    
                      var pin = new VEPushpin(
                            parseFloat(xPin(0).text), 
                            new VELatLong(xLat(0).text, xLong(0).text), 
                            "imagegen.aspx?id=" + xPin(0).text, 
                            "<div style='text-align: left; font-size:small;'><b>" + xPin(0).text + '.</b>  ' + xBusName(0).text + "<br />" + xStreet(0).text +  "<br />" + xCity(0).text + "<br />" + xPhone(0).text + "</div>",
                            null,
                            'iconStyle',
                            'titleSytle',
                            'detailsStyle'
                            );
                            
                            map.AddPushpin(pin);
                            pinID++;
                    
                    } 
                    catch(e) { }
                
            }
           
           //zoom 11 is five miles  10 is 10 miles 9  13 is one mile
           
           var szRadius = 13;
           
           
           if (document.getElementById("ctl00_Main_ddRadius").value == '.07') {szRadius=11};
           if (document.getElementById("ctl00_Main_ddRadius").value == '.15') {szRadius=10};
           if (document.getElementById("ctl00_Main_ddRadius").value == '.25') {szRadius=9};
                    
               if (nl.length > 0) {
                var xLoc = new VELatLong(xLat(0).text,xLong(0).text);
                map.SetCenterAndZoom(xLoc,szRadius);
             
                output += "</tbody></table>";
                
                //map.ShowFindControl();
                        
         } 
    } 

 }

function getTestXXX()
      {
       map = new VEMap('mapTest');
       map.LoadMap();
       map.GetRoute("3049 NW 28th Avenue, 33434","3309 W. Commercial Blvd 33309");
      }
      
      
function FormatNumber(num, decimalNum, bolLeadingZero, bolParens)
   /* IN - num:            the number to be formatted
           decimalNum:     the number of decimals after the digit
           bolLeadingZero: true / false to use leading zero
           bolParens:      true / false to use parenthesis for - num

      RETVAL - formatted number
   */
   {
       var tmpNum = num;

       // Return the right number of decimal places
       tmpNum *= Math.pow(10,decimalNum);
       tmpNum = Math.floor(tmpNum);
       tmpNum /= Math.pow(10,decimalNum);

       var tmpStr = new String(tmpNum);

       // See if we need to hack off a leading zero or not
       if (!bolLeadingZero && num < 1 && num > -1 && num !=0)
           if (num > 0)
               tmpStr = tmpStr.substring(1,tmpStr.length);
           else
               // Take out the minus sign out (start at 2)
               tmpStr = "-" + tmpStr.substring(2,tmpStr.length);                        


       // See if we need to put parenthesis around the number
       if (bolParens && num < 0)
           tmpStr = "(" + tmpStr.substring(1,tmpStr.length) + ")";


       return tmpStr;
   }
   
function CurrencyFormatted(amount)
{
	var i = parseFloat(amount);
	if(isNaN(i)) { i = 0.00; }
	var minus = '';
	if(i < 0) { minus = '-'; }
	i = Math.abs(i);
	i = parseInt((i + .005) * 100);
	i = i / 100;
	s = new String(i);
	if(s.indexOf('.') < 0) { s += '.00'; }
	if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
	s = minus + s;
	return s;
}

function CommaFormatted(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}


function HandlerOBAmenitiesDataFirefox() 
    { 
        //if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete') { 
        if (xmlHttp.readyState == 4) { 
            
          if (xmlHttp.responseXML.documentElement == null) { return null };
            
          var myxml = xmlHttp.responseText;
         
          myxml = myxml.replace(/&lt;/g,"<")
          myxml = myxml.replace(/&gt;/g,">")
         
          var parser = new DOMParser();
          var doc = parser.parseFromString(myxml,"text/xml");
          var root = doc.getElementsByTagName('NewDataSet')[0];
          var nl = root.getElementsByTagName("OBAmenities");
          
          var pinID = 1;
         
          if ( nl.length == 0 ) {return null;}
          
                    
          var xLatI = nl[0].getElementsByTagName("Latitude")[0].firstChild.nodeValue;
          var xLongI = nl[0].getElementsByTagName("Longitude")[0].firstChild.nodeValue;
          var map = new VEMap('myMap');
          
          try
          {
          map.LoadMap(new VELatLong(xLatI,xLongI),13,'r',false);  
          }
          catch(e)
          {}
          
                    
          //map.HideDashboard();
          document.getElementById('dataresults').innerHTML = '';
          
          for (var i=0; i < nl.length ;i++)
          
              {
                 try
                    {
                    var xPin        = nl[i].getElementsByTagName("PinID")[0].firstChild.nodeValue;
                    var xBusName    = nl[i].getElementsByTagName("Business_x0020_Name")[0].firstChild.nodeValue;
                    var xStreet     = nl[i].getElementsByTagName("Street")[0].firstChild.nodeValue;
                    var xCity       = nl[i].getElementsByTagName("City")[0].firstChild.nodeValue;
                    var xPhone      = nl[i].getElementsByTagName("Phone")[0].firstChild.nodeValue;
                    var xLat        = nl[i].getElementsByTagName("Latitude")[0].firstChild.nodeValue;
                    var xLong       = nl[i].getElementsByTagName("Longitude")[0].firstChild.nodeValue;
                                                         
                    
                      var pin = new VEPushpin(
                            parseFloat(xPin), 
                            new VELatLong(xLat, xLong), 
                             "images/pins/" + xPin + ".gif", 
                            "<b>" + xPin + '.</b>  ' + xBusName + "<br />" + xStreet +  "<br />" + xCity ,
                            null ,
                            'iconStyle',
                            'titleSytle',
                            'detailsStyle'
                            );
                            
                            map.AddPushpin(pin);
                            pinID++;
                    
                    } 
                    catch(e) { }
                
            }
           
        
                
               
    } 

 }
 
 
 function stateResearchHandlerFirefox() 
     { 
        if (xmlHttp.readyState == 4) { 
           
            if (xmlHttp.responseXML.documentElement == null) { return null };           
            
            var myxml = xmlHttp.responseText;
         
            myxml = myxml.replace(/&lt;/g,"<");
            myxml = myxml.replace(/&gt;/g,">"); 
            myxml = myxml.substring(114);            
            myxml = myxml.substring(0,myxml.length - 9);
            
            var parser = new DOMParser();
            var doc = parser.parseFromString(myxml,"text/xml");
            
            var root = doc.documentElement;
            var nl = doc.getElementsByTagName("PROPERTY");
            var sp = doc.getElementsByTagName("SUBJECT_PROPERTY");
            var xLat = root.childNodes[1].childNodes[4].innerText;
            var xLong = root.childNodes[1].childNodes[5].innerText;
          
       if (xLat != null) {
        var map = new VEMap('myMapHome');
        var x = xLat;
        var y = xLong;
        
         try
          {
            map.LoadMap(new VELatLong(x,y), 15 ,'h' , false);
          }
          catch(e)
          {}
        
        //map.HideDashboard();
        gmap = map.GUID;
        
        
          var output = "<table id='mytable1' class='worthgrid-container' cellspacing='0' cellpadding='2'><tbody><tr class='worthgrid-row1'>";
            output += "<th align='center'><font color=white>House #</font></th><th><font color=white>Street&nbsp;Address</font></th><th align='center'><font color=white>Distance</font></th><th align='center'><font color=white>Sale&nbsp;Price</font></th><th align='center'><font color=white>Close&nbsp;Date</font></th><th align='center'><font color=white>Bed</font></th><th align='center'><font color=white>Bath</font></th><th align='center'><font color=white>Sq.&nbsp;Ft.</font></th><th align='center'><font color=white>Year&nbsp;Built</font></font></th>"
            
             for (var i=0; i < nl.length ;i++)
              {
                //START
                output += "<tr><td align='center'>" + (i + 1) + "</td>";
                //address
                output += "<td nowrap>" +  nl[i].childNodes[0].childNodes[0].text + ' ' + nl[i].childNodes[0].childNodes[1].text + ' ' + nl[i].childNodes[0].childNodes[2].text + ' ' + nl[i].childNodes[0].childNodes[3].text + ' ' +  nl[i].childNodes[0].childNodes[4].text + ' ' + nl[i].childNodes[0].childNodes[5].text + "</td>" ;
                //distance
                output += "<td align='center'>" + FormatNumber(nl[i].childNodes[0].childNodes[14].text,2,false,false) + "</td>";
                //Sale Price
                output += "<td align='right'>$" + CommaFormatted(nl[i].childNodes[1].childNodes[6].text) + "</td>";
                //Close Date
                output += "<td align='center'>" + nl[i].childNodes[1].childNodes[7].text + "</td>";
                //Bedrooms
                output += "<td align='center'>" + nl[i].childNodes[1].childNodes[3].text + "</td>";
                //Bath
                output += "<td align='center'>" + nl[i].childNodes[1].childNodes[4].text + "</td>";
                //Sqare Feet
                output += "<td align='right'>" + CommaFormatted(nl[i].childNodes[1].childNodes[5].text,0,false,false) + "</td>";
                //Year Built
                output += "<td align='center'>" + nl[i].childNodes[1].childNodes[8].text + "</td>";
                
                //END
                output += "</tr>";
              }
           
           output += "</tr></tbody></table>";
           document.getElementById("dataresults").innerHTML = output;
           
        
                     
          //Home Sales Pins
            var pinID = 1;
            for (var i=0; i < nl.length ;i++)
              {
                var pin = new VEPushpin(
                pinID, 
                new VELatLong(nl[i].childNodes[0].childNodes[11].text, nl[i].childNodes[0].childNodes[12].text), 
                "imagegen.aspx?id=" + pinID,
                '<b>' + (i+1) + '.</b> $' + nl[i].childNodes[1].childNodes[6].text + "<br />" + nl[i].childNodes[0].childNodes[0].text + ' ' + nl[i].childNodes[0].childNodes[1].text + ' ' + nl[i].childNodes[0].childNodes[2].text + ' ' + nl[i].childNodes[0].childNodes[3].text + ' ' +  nl[i].childNodes[0].childNodes[4].text + ' ' + nl[i].childNodes[0].childNodes[5].text  , 
                nl[i].childNodes[0].childNodes[6].text + ', ' + nl[i].childNodes[0].childNodes[7].text + '  ' + nl[i].childNodes[0].childNodes[8].text + "<br />" +  'Closing Date: ' + nl[i].childNodes[1].childNodes[7].text,
                'iconStyle',
                'titleSytle',
                'detailsStyle'
                );
                map.AddPushpin(pin);
                pinID++;
            }
            
             //Add Main Location PIN
             if (sp.length > 0) {
             var pin = new VEPushpin(
                    pinID, 
                    new VELatLong(sp[0].childNodes[4].text, sp[0].childNodes[5].text), 
                    'images/yellowstaricon.gif', 
                    sp[0].childNodes[0].text , 
                    sp[0].childNodes[1].text + ', ' + sp[0].childNodes[2].text,
                    'iconStyle',
                    'titleSytle',
                    'detailsStyle'
                    );
                    map.AddPushpin(pin);
                    pinID++;
                    }
                
        }    
     }
    } 
            
    function DoPixelToLL(x,y) 
            {            var ll = map.PixelToLatLong(x,y).toString()            
            alert("The latitude,longitude of the pixel at ("+x+","+y+") is: "+ll)
            }
             
            
  function FindElvis()
         {
         
         map = new VEMap('myMap');
         map.LoadMap();
         map.Find('elvis','Las Vegas, NV','1',onFindResults);
         }
         function onFindResults(findResults)
         {
            var results="Find Results:\n";
            for (r=0; r < findResults.length; r++)
            {
                  results += findResults[r].Name + ", ";
                  results += findResults[r].Description + ": ";
                  results += findResults[r].Phone + "\n";
            }
            alert(results);
         }

        function GetNewMapxxx(xLat, xLong, xDiv, xZoom, xType)
          {
           var map = new VEMap(xDiv);
           
          try
          {
          map.LoadMap(new VELatLong(xLat, xLong),  xZoom , xType , false);
          }
          catch(e)
          {}
          
           //map.HideDashboard();
           
          }   
          
     function GetNewMap()
      {
        // var map = new VEMap('ctl00_Main_myMap');
        var map = new VEMap('myMap');
         try
          {
          
       if (document.getElementById('ctl00_Main_jLat').value == ''){
        map.SetDashboardSize(VEDashboardSize.Small);
        map.LoadMap();
       
       } else {
       var xLat = document.getElementById('ctl00_Main_jLat').value;
       var xLong = document.getElementById('ctl00_Main_jLong').value;
       map.SetDashboardSize(VEDashboardSize.Small);
       map.LoadMap(new VELatLong(xLat, xLong),  13 ,'r' , false);
       
       }
       
        
                 
          }
          catch(e)
          {}
          
          
          try {
          
          if (window.attachEvent) {

                     window.attachEvent("onresize", mapResize);
                     //window.attachEvent("onendcontinuouspan", mapResize); 
                     map.AttachEvent("onendzoom", mapResize);
                     
                } else {

                     window.addEventListener("resize", mapResize, false);
                     map.attachEvent("onendzoom", mapResize); 
                }
                
                
                } catch(e) {}
                
         map.Hide3DNavigationControl();
       
         //This works!!!
         //var dsb = document.getElementById( "myMap_dashboard");
         //dsb.style.top = "100px";
         //dsb.style.left = "400px";
        
         gmapEnd = map.GUID;
         var gu = document.getElementById("ctl00_Main_txtGUID");
         gu.value = gmapEnd;
         
         //This works!!
         //var vx = map.GetMapView();
         //alert("TOP LEFT " + vx.TopLeftLatLong);
         //alert("BOTTOM RIGHT " + vx.BottomRightLatLong);
         
         //var z = document.getElementById('ctl00_Main_div2');
         //if (!z)return true; {z.style.display="none";}
         //mapResize();
          
                 
         
      }   
      
function mapResize(){

  try
          {

            if( typeof( window.innerWidth ) == 'number' )
                {
                //FIREFOX
                mHeight = window.innerHeight;
                mWidth =  window.innerWidth
                mWidth = mWidth ;
                mHeight = mHeight + 200;  //10
                } 
                else
                {
                //IE 
                mHeight = document.body.clientHeight;
                mWidth = document.body.clientWidth;
                mWidth = mWidth - 325;
                //mHeight = mHeight - 230 ;  //10
                }
                
                //end browsertype  check for minimum widths
                                
                if (mWidth < 370) //min width
                {
                    mWidth = 370;
                }
                if (mHeight < 370) //min height
                {
                    mHeight = 570;
                }
 
      
        var mydiv = document.getElementById('myMap');
        mydiv.style.width = mWidth+'px';
        mydiv.style.height = mHeight+'px';
        var szGUID = document.getElementById('ctl00_Main_txtGUID');
        VEMap._GetMapFromGUID(gmapEnd).Resize(mWidth,mHeight); 
        var map = VEMap._GetMapFromGUID(gmapEnd);
        var vx = map.GetMapView();
        var szLat1 = vx.TopLeftLatLong.Latitude;
        document.getElementById('ctl00_Main_txtLat1').value = szLat1;
        var szLong1 = vx.TopLeftLatLong.Longitude;
        document.getElementById('ctl00_Main_txtLong1').value = szLong1;
        var szLat2 = vx.BottomRightLatLong.Latitude;
        document.getElementById('ctl00_Main_txtLat2').value = szLat2;
        var szLong2 = vx.BottomRightLatLong.Longitude;  
        document.getElementById('ctl00_Main_txtLong2').value = szLong2;
        
        
        var tbData = document.getElementById('ctl00_Main_tblData');
        if (tbData != null) { var sztbd = tbData.style.clientHeight; };
        var szp20 = document.getElementById('ctl00_Main_panel20');
        if (szp20 != null) {
        var szn = mHeight - 235 ;
        if (tbData.clientHeight < 295) {} else {szp20.style.height='295px';} ;
        
        }

        var szpdr = document.getElementById('ctl00_Main_div2');
        if (szpdr != null) {
        szpdr.style.height = 300 + szp20.style.height + 'px';
        }
        
        
        
       

     }
       catch(e)
       {}
     
}
 

 
 function divAddress() {

 if (document.getElementById('ctl00_Main_searchAddress2').clientHeight >= 109) {
document.getElementById('ctl00_Main_searchAddress2').style.height = '40px';
 document.getElementById('ctl00_Main_Image3').src = "images/main_expander_on.gif"
 
 } else {  document.getElementById('ctl00_Main_searchAddress2').style.height = '109px';
 document.getElementById('ctl00_Main_Image3').src = "images/main_expander-out.gif"

 }
 }     
      
 function divCategory() {
 
 
 if (document.getElementByID != null) {
 if (document.getElementById('ctl00_Main_divMenu').style.visibility == "visible") {
 var d = document.getElementById('ctl00_Main_divMenu')
 d.style.visibility = "hidden";
 d.style.height = '0px';
 
 //document.getElementById('divMenu').style.visiblilty = 'hidden';
 
 
 } else {
 
 var d = document.getElementById('ctl00_Main_divMenu')
 d.style.visibility = "visible";
 d.style.height = '100%';
  
 }
 
 mapResize();
 }
 }
 
 function divMenuHide() {
 var d = document.getElementById('ctl00_Main_divMenu')
 d.style.visibility = "hidden";
 d.style.height = '0px';
 }     
     
      
function getAmenitiesDIV(szCategory, szLineOfBus, szPageIndex) {
 
    //var url = "VEMap.asmx/getOBAmenitiesSearch?szLat=" + szLat + "&szLong="  + szLong + "&szBusName=" + szBusName + "&szRadius=" + szRadius + "&szLOB=" + szLOB; 
    //var url = "VEMap.asmx/getOBAmenitiesData?szZipCode=33434&szCategory=" + szCategory + "&szLineOfBus=" + szLineOfBus + "&szPageIndex=" + szPageIndex ; 
    var url = "VEMap.asmx/getOBAmenitiesData?szZipCode=" + document.getElementById('ctl00_Main_jZip').value + "&szCategory=" + szCategory + "&szLineOfBus=" + szLineOfBus + "&szPageIndex=" + szPageIndex ; 
    
        
    if (window.ActiveXObject) {
    xmlHttp = GetXmlHttpObject(HandlerOBAmenitiesDataDIV); 
    } else {
    xmlHttp = GetXmlHttpObject(HandlerOBAmenitiesDataFirefoxDIV); 
    };
    xmlHttp_Get(xmlHttp, url); 
}         
function HandlerOBAmenitiesDataDIV() 
    { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete') { 
            
            if (xmlHttp.responseXml.documentElement == null) { return null };
            str = xmlHttp.responseXml.text;
             if (window.ActiveXObject)
                  {
                  var doc=new ActiveXObject("Microsoft.XMLDOM");
                  doc.async="false";
                  doc.loadXML(str);
                  }
                // code for Mozilla, Firefox, Opera, etc.
                else
                  {
                  var parser=new DOMParser();
                  var doc=parser.parseFromString(response,"text/xml");
                  doc.loadXML(str);
                  }
            
          var nl = doc.getElementsByTagName('OBAmenities');
          var pinID = 1;
         
          var map = new VEMap('myMap');
          if ( nl.length == 0 ) {return null;}
          var xLatI = nl(i).getElementsByTagName("Longitude")
          var xLongI = nl(i).getElementsByTagName("Latitude")
          
          var z = document.getElementById('ctl00_Main_div2');
          if (!z)return true; {z.style.display="block";}
          
          map.LoadMap(new VELatLong(xLatI(0).text,xLongI(0).text),2,'r',false);
          gmapEnd = map.GUID;
          
          for (var i=0; i < nl.length ;i++)
          
              {
                 try
                    {
                    var xPin = nl(i).getElementsByTagName("PinID")
                    var xBusName = nl(i).getElementsByTagName("Business_x0020_Name")
                    var xStreet = nl(i).getElementsByTagName("Street")
                    var xCity = nl(i).getElementsByTagName("City")
                    //var xStateName = nl(i).getElementsByTagName("StateName")
                    //var xZip = nl(i).getElementsByTagName("Zip")
                    //var xCountyName = nl(i).getElementsByTagName("CountyName")
                    var xPhone = nl(i).getElementsByTagName("Phone")
                    //var xState = nl(i).getElementsByTagName("State")
                    //var xCounty = nl(i).getElementsByTagName("County")
                    var xLat = nl(i).getElementsByTagName("Latitude")
                    var xLong = nl(i).getElementsByTagName("Longitude")
                    //var xLineOfBus = nl(i).getElementsByTagName("LineOfBus")
                    //var xIndustry = nl(i).getElementsByTagName("Industry")
                    //var xFranchise = nl(i).getElementsByTagName("Franchise")
                    //var xCategory = nl(i).getElementsByTagName("Category")
                                       
                    
                      var pin = new VEPushpin(
                            parseFloat(xPin(0).text), 
                            new VELatLong(xLat(0).text, xLong(0).text), 
                            //"images/pins/" + xPin(0).text       + ".gif", 
                            //"images/homes-map/orange-pin/" + xPin(0).text + ".png", 
                            "imagegen.aspx?id=" + xPin(0).text, 
                            //Driving directions
                            //"<div style='text-align: left; font-size:small;'><b><img src=imagegen.aspx?style=tab&id=" + xPin(0).text + " />" + '<br />  ' + xBusName(0).text + "<br />" + xStreet(0).text +  "<br />" + xCity(0).text + "<br />" + xPhone(0).text + "<br /><a href='homesinfo.aspx?v=3'>Driving Directions</a></div>",
                            "<div style='text-align: left; font-size:small;'><b><img src=imagegen.aspx?style=tab&id=" + xPin(0).text + " />" + '<br />  ' + xBusName(0).text + "<br />" + xStreet(0).text +  "<br />" + xCity(0).text + "<br />" + xPhone(0).text + "<br /></div>",
                            null,
                            'iconStyle',
                            'titleSytle',
                            'detailsStyle'
                            );
                            
                            map.AddPushpin(pin);
                            pinID++;
                    
                    } 
                    catch(e) { }
                
            }
           
           //zoom 11 is five miles  10 is 10 miles 9  13 is one mile
           
           var szRadius = 13;
           
           if (nl.length > 50) { szRadius = 9;}
           
               if (nl.length > 0) {
                var xLoc = new VELatLong(xLat(0).text,xLong(0).text);
                map.SetCenterAndZoom(xLoc,szRadius);
                map.AttachEvent("onresize", mapResize);
                map.AttachEvent("onendzoom", mapResize);
               } 
               
               setTimeout('mapResize()',1500); 
      } 
   }
 
 function clearSearch() {
 
 var z = document.getElementById('ctl00_Main_jControl');
 if (z.value == '0') {
 var t = document.getElementById('ctl00_Main_txtSearch');
 t.value = '';
 var t = document.getElementById('ctl00_Main_jControl');
 t.value = '1';
 
 }
 }
 
 function clearSearchAddress() {
 
 var z = document.getElementById('ctl00_Main_jControl2');
 if (z.value == '0') {
 var t = document.getElementById('ctl00_Main_txtSearchAddress');
 t.value = '';
 var t = document.getElementById('ctl00_Main_jControl2');
 t.value = '1';
 
 }
 }
 
 function clearSearchZip() {
 
 var z = document.getElementById('ctl00_Main_jControl3');
 if (z.value == '0') {
 var t = document.getElementById('ctl00_Main_txtSearchZip');
 t.value = '';
 var t = document.getElementById('ctl00_Main_jControl3');
 t.value = '1';
 
 }
 }
 
 function clearDirectionFrom() {
 
 var z = document.getElementById('ctl00_Main_jControl4');
 if (z.value == '0') {
 var t = document.getElementById('ctl00_Main_txtDirectionsFrom');
 t.value = '';
 var t = document.getElementById('ctl00_Main_jControl4');
 t.value = '1';
 
 }
 }
 
 function clearDirectionTo() {
 
 var z = document.getElementById('ctl00_Main_jControl5');
 if (z.value == '0') {
 var t = document.getElementById('ctl00_Main_txtDirectionsTo');
 t.value = '';
 var t = document.getElementById('ctl00_Main_jControl5');
 t.value = '1';
 
 }
 }
 
 
 function getAmenitiesFind() {
 
  var szLat1 = document.getElementById('ctl00_Main_txtLat1').value;
  var szLong1 = document.getElementById('ctl00_Main_txtLong1').value;
  var szLat2 = document.getElementById('ctl00_Main_txtLat2').value;
  var szLong2 = document.getElementById('ctl00_Main_txtLong2').value;
  var LOB =      document.getElementById('ctl00_Main_txtFind').value;
  
  var url = "VEMap.asmx/getOBAmenitiesFind?szLat1=" + szLat1 + "&szLong1="  + szLong1 + "&szLat2=" + szLat2 + "&szLong2=" + szLong2 + "&szLOB=" + LOB ; 
  //var url = "VEMap.asmx/getTEST?szLat1=1&szLong1=1&szLat2=2&szLong2=2&szLOB=pizza" 
  //var url = "VEMap.asmx/HelloWorld"
    if (window.ActiveXObject) {
    xmlHttp = GetXmlHttpObject(HandlerFindData); 
    } else {
    xmlHttp = GetXmlHttpObject(HandlerFindDataFireFox); 
    };
    xmlHttp_Get(xmlHttp, url); 
}   

 function HandlerFindData() 
    { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete') { 
            
            if (xmlHttp.responseXml.documentElement == null) { return null };
            str = xmlHttp.responseXml.text;
             if (window.ActiveXObject)
                  {
                  var doc=new ActiveXObject("Microsoft.XMLDOM");
                  doc.async="false";
                  doc.loadXML(str);
                  }
                // code for Mozilla, Firefox, Opera, etc.
                else
                  {
                  var parser=new DOMParser();
                  var doc=parser.parseFromString(response,"text/xml");
                  doc.loadXML(str);
                  }
            
          var nl = doc.getElementsByTagName('OBAmenities');
          var pinID = 1;
         
          var map = new VEMap('myMap');
          if ( nl.length == 0 ) {return null;}
          var xLatI = nl(i).getElementsByTagName("Longitude")
          var xLongI = nl(i).getElementsByTagName("Latitude")
                   
           map.LoadMap(new VELatLong(xLatI(0).text,xLongI(0).text),2,'r',false);
          gmapEnd = map.GUID;
          
          try
          {
         
          if (window.attachEvent) {
                     
                     map.AttachEvent("onresize", mapResize); 
                     map.AttachEvent("onendzoom", mapResize);
                    
                } else {

                     map.addEventListener("resize", mapResize, false);
                     map.AttachEvent("onendzoom", mapResize);
                }
          }
          catch(e)
          {alert(e);}
                  
              
          for (var i=0; i < nl.length ;i++)
          
              {
                 try
                    {
                    var xPin = nl(i).getElementsByTagName("PinID")
                    var xBusName = nl(i).getElementsByTagName("Business_x0020_Name")
                    var xStreet = nl(i).getElementsByTagName("Street")
                    var xCity = nl(i).getElementsByTagName("City")
                    //var xStateName = nl(i).getElementsByTagName("StateName")
                    //var xZip = nl(i).getElementsByTagName("Zip")
                    //var xCountyName = nl(i).getElementsByTagName("CountyName")
                    var xPhone = nl(i).getElementsByTagName("Phone")
                    //var xState = nl(i).getElementsByTagName("State")
                    //var xCounty = nl(i).getElementsByTagName("County")
                    var xLat = nl(i).getElementsByTagName("Latitude")
                    var xLong = nl(i).getElementsByTagName("Longitude")
                    //var xLineOfBus = nl(i).getElementsByTagName("LineOfBus")
                    //var xIndustry = nl(i).getElementsByTagName("Industry")
                    //var xFranchise = nl(i).getElementsByTagName("Franchise")
                    //var xCategory = nl(i).getElementsByTagName("Category")
                                       
                    
                      var pin = new VEPushpin(
                            parseFloat(xPin(0).text), 
                            new VELatLong(xLat(0).text, xLong(0).text), 
                            //"images/homes-map/orange-pin/" + xPin(0).text + ".png",  //pin-9.png", //"images/pins/" + xPin(0).text       + ".gif", 
                             "imagegen.aspx?id=" + xPin(0).text, 
                            "<b>" + xPin(0).text + '.</b>  ' + xBusName(0).text + "<br />" + xStreet(0).text +  "<br />" + xCity(0).text + "<br />" + xPhone(0).text ,
                            null,
                            'iconStyle',
                            'titleSytle',
                            'detailsStyle'
                            );
                            
                            map.AddPushpin(pin);
                            pinID++;
                    
                    } 
                    catch(e) { }
                
            }
           
         
                    
               if (nl.length > 0) {
                var xLoc = new VELatLong(xLat(0).text,xLong(0).text);
                map.SetCenterAndZoom(xLoc,13);
                setTimeout('mapResize()',500);
                
               } 
    } 

 }
 
 function HandlerFindDataFireFox() 
    { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete') { 
            
            //if (xmlHttp.responseXml.documentElement == null) { return null };
            //str = xmlHttp.responseXml.text;
             var myxml = xmlHttp.responseText;
         
            myxml = myxml.replace(/&lt;/g,"<");
            myxml = myxml.replace(/&gt;/g,">"); 
            //myxml = myxml.substring(114);            
            //myxml = myxml.substring(0,myxml.length - 9);
            
            var parser = new DOMParser();
            var doc = parser.parseFromString(myxml,"text/xml");
            //var root = doc.documentElement;
            
            var root = doc.getElementsByTagName('NewDataSet')[0];
            var nl = root.getElementsByTagName("OBAmenities");
            if ( nl.length == 0 ) {return null;}
            
          var pinID = 1;
          var map = new VEMap('myMap');
          var xLatI = nl[0].getElementsByTagName("Latitude")[0].firstChild.nodeValue;
          var xLongI = nl[0].getElementsByTagName("Longitude")[0].firstChild.nodeValue;
          
          try
          {
          map.LoadMap(new VELatLong(xLatI,xLongI),13,'r',false);  
          }
          catch(e)
          {}
          
          try
          {
          gmapEnd = map.GUID;
          if (window.attachEvent) {
            window.AttachEvent("onresize", mapResize); 
            window.AttachEvent("onendzoom", mapResize);
                } else {
            window.addEventListener("resize", mapResize, false);
             window.AttachEvent("onendzoom", mapResize);
                }
              }
              catch(e)
              {}
                      
              
          for (var i=0; i < nl.length ;i++)
          
              {
                 try
                    {
                    var xPin        = nl[i].getElementsByTagName("PinID")[0].firstChild.nodeValue;
                    var xBusName    = nl[i].getElementsByTagName("Business_x0020_Name")[0].firstChild.nodeValue;
                    var xStreet     = nl[i].getElementsByTagName("Street")[0].firstChild.nodeValue;
                    var xCity       = nl[i].getElementsByTagName("City")[0].firstChild.nodeValue;
                    var xPhone      = nl[i].getElementsByTagName("Phone")[0].firstChild.nodeValue;
                    var xLat        = nl[i].getElementsByTagName("Latitude")[0].firstChild.nodeValue;
                    var xLong       = nl[i].getElementsByTagName("Longitude")[0].firstChild.nodeValue;
                    
                    var pin = new VEPushpin(
                            parseFloat(xPin), 
                            new VELatLong(xLat, xLong), 
                            //"images/homes-map/orange-pin/" + xPin(0).text + ".png",  //pin-9.png", //"images/pins/" + xPin(0).text       + ".gif", 
                             "imagegen.aspx?id=" + xPin, 
                            "<b>" + xPin + '.</b>  ' + xBusName + "<br />" + xStreet +  "<br />" + xCity + "<br />" + xPhone ,
                            null,
                            'iconStyle',
                            'titleSytle',
                            'detailsStyle'
                            );
                            
                            map.AddPushpin(pin);
                            pinID++;
                    
                    } 
                    catch(e) { }
                
            }
           
                if (nl.length > 0) {
                //var xLoc = new VELatLong(xLat(0).text,xLong(0).text);
                //map.SetCenterAndZoom(xLoc,13);
                setTimeout('mapResize()',500);
                
               } 
    } 

 }
 
 
 function HandlerOBAmenitiesDataFirefoxDIV() 
    { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete') { 
            
            //if (xmlHttp.responseXml.documentElement == null) { return null };
            //str = xmlHttp.responseXml.text;
             var myxml = xmlHttp.responseText;
         
            myxml = myxml.replace(/&lt;/g,"<");
            myxml = myxml.replace(/&gt;/g,">"); 
            //myxml = myxml.substring(114);            
            //myxml = myxml.substring(0,myxml.length - 9);
            
            var parser = new DOMParser();
            var doc = parser.parseFromString(myxml,"text/xml");
            //var root = doc.documentElement;
            
            var root = doc.getElementsByTagName('NewDataSet')[0];
            var nl = root.getElementsByTagName("OBAmenities");
            if ( nl.length == 0 ) {return null;}
            
          var pinID = 1;
          var map = new VEMap('myMap');
          var xLatI = nl[0].getElementsByTagName("Latitude")[0].firstChild.nodeValue;
          var xLongI = nl[0].getElementsByTagName("Longitude")[0].firstChild.nodeValue;
          
          try
          {
          map.LoadMap(new VELatLong(xLatI,xLongI),13,'r',false);  
          
          }
          catch(e)
          {}
          
          try
          {
          gmapEnd = map.GUID;
          if (window.attachEvent) {
            window.attachEvent("onresize", mapResize); 
            window.attachEvent("onendzoom", mapResize);
                } else {
            window.addEventListener("resize", mapResize, false);
                }
              }
              catch(e)
              {}
                      
              
          for (var i=0; i < nl.length ;i++)
          
              {
                 try
                    {
                    var xPin        = nl[i].getElementsByTagName("PinID")[0].firstChild.nodeValue;
                    var xBusName    = nl[i].getElementsByTagName("Business_x0020_Name")[0].firstChild.nodeValue;
                    var xStreet     = nl[i].getElementsByTagName("Street")[0].firstChild.nodeValue;
                    var xCity       = nl[i].getElementsByTagName("City")[0].firstChild.nodeValue;
                    var xPhone      = nl[i].getElementsByTagName("Phone")[0].firstChild.nodeValue;
                    var xLat        = nl[i].getElementsByTagName("Latitude")[0].firstChild.nodeValue;
                    var xLong       = nl[i].getElementsByTagName("Longitude")[0].firstChild.nodeValue;
                    
                    var pin = new VEPushpin(
                            parseFloat(xPin), 
                            new VELatLong(xLat, xLong), 
                            //"images/homes-map/orange-pin/" + xPin(0).text + ".png",  //pin-9.png", //"images/pins/" + xPin(0).text       + ".gif", 
                             "imagegen.aspx?id=" + xPin, 
                            "<b>" + xPin + '.</b>  ' + xBusName + "<br />" + xStreet +  "<br />" + xCity + "<br />" + xPhone ,
                            null,
                            'iconStyle',
                            'titleSytle',
                            'detailsStyle'
                            );
                            
                            map.AddPushpin(pin);
                            pinID++;
                    
                    } 
                    catch(e) { }
                
            }
           
               if (nl.length > 0) {
               
                  mapResize()
                  var z = document.getElementById('ctl00_Main_div2');
                  if (!z)return true; {z.style.display="block";}
                  
               } 
    } 

 }
 
 
 function getVEResearchHomeSalesDIV(szZip, szAddress) {
  
         try {
           
           var szradio = document.getElementById("ctl00_Main_rbPropType_0");
           var xprop;
           if (szradio.checked == true){
           xprop='1'; } else {
           xprop='2';
           }
           var url = 'VEMap.asmx/VEMap?szZip=' + szZip + '&szAddress=' + szAddress + '&szPropertyType=' + xprop  ;   
           
            if (window.ActiveXObject) {
            xmlHttp = GetXmlHttpObject(stateResearchHandlerDIV); 
            } else {
            xmlHttp = GetXmlHttpObject(stateResearchHandlerDIVFirefox); 
            };
                      
           xmlHttp_Get(xmlHttp, url); 
                      
           } catch(e) 
           
           {}
    }
    
    function stateResearchHandlerDIV() 
     { 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){ 
            
             
            //str =  xmlHttp.responseXml.text; 
            str = xmlHttp.responseXml.documentElement;
            response = str.text;
            
            if (window.ActiveXObject)
                  {
                  var doc=new ActiveXObject("Microsoft.XMLDOM");
                  doc.async="false";
                  doc.loadXML(response);
                  }
                // code for Mozilla, Firefox, Opera, etc.
                else
                  {
                  var parser=new DOMParser();
                  var doc=parser.parseFromString(response,"text/xml");
                  doc.loadXML(response);
                  }

            var nv = doc.documentElement;
            var nb = doc.xml;
            var sp = doc.getElementsByTagName('XHSD:SUBJECT_PROPERTY');
                       
            var nl = doc.getElementsByTagName('XHSD:PROPERTY');
            
            if (nl.length ==0){
            alert("Home sale values were not found for the address and zip code you entered.  Please try again with a different address or zip code.");
            document.getElementById('ctl00_Main_txtSearchAddress').value = "";
            return false;
            }
            
             var xLat = doc.getElementsByTagName('XHSD:LATITUDE');
            var xLong = doc.getElementsByTagName('XHSD:LONGITUDE');
            //var map = null;
           
           if (xLat.length == 0) {
           getVEResearchHomeSales(document.getElementById('ctl00_Main_txtZipCode').value, '');
           return false;
           }
           
           var output = "<table id='mytable1'  cellspacing='0' cellpadding='3'>";
           var szRowSpan = 8;  
             for (var i=0; i < nl.length ;i++)
              {
              var mycolor;
              if (i % 2 == 0) {mycolor="style='background-color:white ;'";} else {mycolor="style='background-color:transparent;'";}
                           
              
              szRowSpan = 5;
                //output += "<tr><td>" + nl(i).childNodes(1).childNodes(6).baseName + "</td><td>" + nl(i).childNodes(1).childNodes(6).text +  "</td><td>" + nl(i).childNodes(1).childNodes(7).baseName + "</td><td>" + nl(i).childNodes(1).childNodes(7).text + "</td></tr>";
                //START
                output += "<tr ><td " + mycolor + " rowspan='" + szRowSpan + "' align='center' valign='top' ><img width='20px' alt='' src='imagegen.aspx?style=tab&id=" + (i + 1) + "'></td>";
                output += "<tr><td  " + mycolor + " align=left colspan=2 ><b>" +  nl(i).childNodes(0).childNodes(0).text + ' ' + nl(i).childNodes(0).childNodes(1).text + ' ' + nl(i).childNodes(0).childNodes(2).text + ' ' + nl(i).childNodes(0).childNodes(3).text + ' ' +  nl(i).childNodes(0).childNodes(4).text + ' ' + nl(i).childNodes(0).childNodes(5).text + ', ' + nl(i).childNodes(0).childNodes(6).text + ', ' + nl(i).childNodes(0).childNodes(7).text + "</b></td></tr>" ;
                output += "<tr><td  " + mycolor + " align='left'>Sale Price: <b>$" + CommaFormatted(nl(i).childNodes(1).childNodes(6).text) + "</b></td><td " + mycolor + "  align='left'>Close Date: " + nl(i).childNodes(1).childNodes(7).text + "</td></tr>";
                output += "<tr><td  " + mycolor + " align='left'>Year Built: " + nl(i).childNodes(1).childNodes(8).text + "</td><td " + mycolor + "  align='left'>Square Feet: " + CommaFormatted(nl(i).childNodes(1).childNodes(5).text,0,false,false) + "</td></tr>";
                output += "<tr><td  " + mycolor + " align='left'># of Bedrooms: " + nl(i).childNodes(1).childNodes(3).text + "</td><td " + mycolor + "  align='left'># of Baths: " + nl(i).childNodes(1).childNodes(4).text + "</td></tr>";
                output += "<tr><td  " + mycolor + " colspan=3 height=2></td></tr>"
                
                
                 //Sqare Feet
                //output += "<tr></tr>";
                
              }
           
           output += "</table>";
               
           document.getElementById("ctl00_Main_dataresults").innerHTML = output;
           
       if (xLat(0) != null) {
        var map = new VEMap('myMap');
        var x = xLat(0).childNodes(0).text;
        var y = xLong(0).childNodes(0).text;
        
         try
          {
            map.LoadMap(new VELatLong(x,y), 15 ,'h' , false);
             gmapEnd = map.GUID;
          if (window.attachEvent) {
              window.attachEvent("onresize", mapResize); 
              window.attachEvent("onendzoom", mapResize);
                } else {
              window.addEventListener("resize", mapResize, false);
                }
          }
          catch(e)
          {}
        
        gmap = map.GUID;
            
            }
            var pinID = 1;
          for (var i=0; i < nl.length ;i++)
              {
                var pin = new VEPushpin(
                
                pinID, 
                new VELatLong(nl(i).childNodes(0).childNodes(11).text, nl(i).childNodes(0).childNodes(12).text), 
               "imagegen.aspx?id=" + pinID, 
               null,
               //'<br /><b>' + (i+1) + '.</b> $' + nl(i).childNodes(1).childNodes(6).text + "<br />" + nl(i).childNodes(0).childNodes(0).text + ' ' + nl(i).childNodes(0).childNodes(1).text + ' ' + nl(i).childNodes(0).childNodes(2).text + ' ' + nl(i).childNodes(0).childNodes(3).text + ' ' +  nl(i).childNodes(0).childNodes(4).text + ' ' + nl(i).childNodes(0).childNodes(5).text  , 
                "<table width='252' border='0' cellspacing='0' cellpadding='0'><tr><td width='184'><strong><span class='style1'>WHAT'S MY HOME WORTH?</span><br />Lookup your home's value </strong></td><td width='68' align='right'><img src='images/homeslogo.jpg' width='68' height='31' /></td></tr><tr><td height='6' colspan='2'><img src='imagegen.aspx?style=tab&id=" + pinID + "'></td></tr><tr><td colspan='2'><p><span class='style1'><strong>Street Address:</strong></span><strong><br /> " + nl(i).childNodes(0).childNodes(0).text + ' ' + nl(i).childNodes(0).childNodes(1).text + ' ' + nl(i).childNodes(0).childNodes(2).text + ' ' + nl(i).childNodes(0).childNodes(3).text + ' ' +  nl(i).childNodes(0).childNodes(4).text + ' ' + nl(i).childNodes(0).childNodes(5).text + "<br />" +  nl(i).childNodes(0).childNodes(6).text + ' ' +  nl(i).childNodes(0).childNodes(7).text + ' ' + nl(i).childNodes(0).childNodes(8).text  + " </strong></p></td> </tr> <tr> <td height='6' colspan='2'></td> </tr> <tr><td colspan='2'><table width='252' border='0' cellspacing='0' cellpadding='0'><tr><td width='50%'><span class='style1'><strong>Bedrooms:</strong></span><strong> " + nl(i).childNodes(1).childNodes(3).text + " </strong></td><td><span class='style1'><strong>Year Built: </strong></span><strong>" + nl(i).childNodes(1).childNodes(8).text + " </strong></td></tr><tr><td><span class='style1'><strong>Bath #'s:</strong></span><strong> " + nl(i).childNodes(1).childNodes(4).text + " </strong></td><td><span class='style1'><strong>Square Feet:</strong></span><strong> " + CommaFormatted(nl(i).childNodes(1).childNodes(5).text,0,false,false) + " </strong></td></tr></table></td></tr><tr><td height='6' colspan='2'></td></tr><tr><td colspan='2'><table width='252' border='0' cellspacing='0' cellpadding='0'><tr><td width='50%' class='style1'><strong>Last Sale Price: </strong></td><td ><span class='style2'><b><font size=+1>$" + CommaFormatted(nl(i).childNodes(1).childNodes(6).text,0,false,false) + "</font></b></span></td></tr><tr><td class='style1'><strong>Closing Date </strong></td><td><strong>" + nl(i).childNodes(1).childNodes(7).text + "</strong></td></tr></table></td></tr></table>",
                //nl(i).childNodes(0).childNodes(6).text + ', ' + nl(i).childNodes(0).childNodes(7).text + '  ' + nl(i).childNodes(0).childNodes(8).text + "<br />" +  'Closing Date: ' + nl(i).childNodes(1).childNodes(7).text + '<table bgcolor=red><tr><td>test</td><td bgcolor=blue>asdf</td></tr></table>',
                'iconStyle',
                'titleSytle',
                'detailsStyle'
                );
                map.AddPushpin(pin);
                pinID++;
            }
            
             //Add Main Location PIN
             if (sp.length > 0) {
             var pin = new VEPushpin(
                    pinID, 
                    new VELatLong(sp(0).childNodes(4).text, sp(0).childNodes(5).text), 
                    'images/ministar.gif', 
                    null , 
                    sp(0).childNodes(0).text + ' ' + sp(0).childNodes(1).text + ', ' + sp(0).childNodes(2).text,
                    'iconStyle',
                    'titleSytle',
                    'detailsStyle'
                    );
                    map.AddPushpin(pin);
                    pinID++;
                    }
                    
                    mapResize();
                    var z = document.getElementById('ctl00_Main_div1');
                    if (!z)return true; {z.style.display="block";}
                    
                    var z = document.getElementById('ctl00_Main_div2');
                    if (!z)return true; {z.style.display="none";}
                    
                    var z = document.getElementById('ctl00_Main_div5');
                    if (!z)return true; {z.style.display="none";}
                    
                    hideData();
                    
                    
         
                
        }    
     }
            
     function stateResearchHandlerDIVFirefox() 
          { 
        if (xmlHttp.readyState == 4) { 
           
            if (xmlHttp.responseXML.documentElement == null) { return null };           
            
            var myxml = xmlHttp.responseText;
         
            myxml = myxml.replace(/&lt;/g,"<");
            myxml = myxml.replace(/&gt;/g,">"); 
            myxml = myxml.substring(114);            
            myxml = myxml.substring(0,myxml.length - 9);
            
            var parser = new DOMParser();
            var doc = parser.parseFromString(myxml,"text/xml");
            
            var root = doc.documentElement;
            var nl = doc.getElementsByTagName("PROPERTY");
            var sp = doc.getElementsByTagName("SUBJECT_PROPERTY");
            var xLat = root.childNodes[1].childNodes[4].innerText;
            var xLong = root.childNodes[1].childNodes[5].innerText;
          
       if (xLat != null) {
        var map = new VEMap('myMap');
        var x = xLat;
        var y = xLong;
        
         try
          {
            map.LoadMap(new VELatLong(x,y), 15 ,'h' , false);
          }
          catch(e)
          {}
        
        //map.HideDashboard();
          gmapEnd = map.GUID;
          var szgmap = document.getElementById("ctl00_Main_txtGUID")
          szgmap.value = gmapEnd;
          
          if (window.attachEvent) {
          window.attachEvent("onresize", mapResize); 
          window.attachEvent("onendzoom", mapResize);
            } else {
          window.addEventListener("resize", mapResize, false);
            }

          var output = "<table id='mytable1' width='295px' cellspacing='0' cellpadding='2'>";
            
             for (var i=0; i < nl.length ;i++)
              {
              
              var mycolor;
              if (i % 2 == 0) {mycolor="style='background-color:White;'";} else {mycolor="style='background-color:transparent;'";}
             
                  szRowSpan = 5;
                //output += "<tr><td>" + nl(i).childNodes(1).childNodes(6).baseName + "</td><td>" + nl(i).childNodes(1).childNodes(6).text +  "</td><td>" + nl(i).childNodes(1).childNodes(7).baseName + "</td><td>" + nl(i).childNodes(1).childNodes(7).text + "</td></tr>";
                //START
                output += "<tr ><td " + mycolor + "  rowspan='" + szRowSpan + "' align='center' valign='top'><img width='20px' alt='' src='imagegen.aspx?style=tab&id=" + [i + 1] + "'></td>";
                output += "<tr><td " + mycolor + "  align=left colspan=2 >" +  nl[i].childNodes[0].childNodes[0].text + ' ' + nl[i].childNodes[0].childNodes[1].text + ' ' + nl[i].childNodes[0].childNodes[2].text + ' ' + nl[i].childNodes[0].childNodes[3].text + ' ' +  nl[i].childNodes[0].childNodes[4].text + ' ' + nl[i].childNodes[0].childNodes[5].text + ', ' + nl[i].childNodes[0].childNodes[6].text + ', ' + nl[i].childNodes[0].childNodes[7].text + "</td></tr>" ;
                output += "<tr><td " + mycolor + "  align='left'>Sale Price: <b>$" + CommaFormatted(nl[i].childNodes[1].childNodes[6].text) + "</b></td><td " + mycolor + "  align='left'>Close Date: " + nl[i].childNodes[1].childNodes[7].text + "</td></tr>";
                output += "<tr><td " + mycolor + "  align='left'>Year Built: " + nl[i].childNodes[1].childNodes[8].text + "</td><td " + mycolor + "  align='left'>Square Feet: " + CommaFormatted(nl[i].childNodes[1].childNodes[5].text,0,false,false) + "</td></tr>";
                output += "<tr><td " + mycolor + "  align='left'># of Bedrooms: " + nl[i].childNodes[1].childNodes[3].text + "</td><td " + mycolor + "  align='left'># of Baths: " + nl[i].childNodes[1].childNodes[4].text + "</td></tr>";
                output += "<tr><td " + mycolor + "  bgcolor=silver colspan=3 height=2></td></tr>"
                
              }
           
           output += "</tr></tbody></table>";
           document.getElementById("ctl00_Main_dataresults").innerHTML = output;
           
        
                     
          //Home Sales Pins
            var pinID = 1;
            for (var i=0; i < nl.length ;i++)
              {
                var pin = new VEPushpin(
                pinID, 
                new VELatLong(nl[i].childNodes[0].childNodes[11].text, nl[i].childNodes[0].childNodes[12].text), 
                "imagegen.aspx?id=" + pinID,
                //'<b>' + (i+1) + '.</b> $' + nl[i].childNodes[1].childNodes[6].text + "<br />" + nl[i].childNodes[0].childNodes[0].text + ' ' + nl[i].childNodes[0].childNodes[1].text + ' ' + nl[i].childNodes[0].childNodes[2].text + ' ' + nl[i].childNodes[0].childNodes[3].text + ' ' +  nl[i].childNodes[0].childNodes[4].text + ' ' + nl[i].childNodes[0].childNodes[5].text  , 
                null,
                "<table width='252' border='0' cellspacing='0' cellpadding='0'><tr><td width='184'><strong><span class='style1'>WHAT'S MY HOME WORTH?</span><br />Lookup your home's value </strong></td><td width='68' align='right'><img src='images/homeslogo.jpg' width='68' height='31' /></td></tr><tr><td height='6' colspan='2'><img src='imagegen.aspx?style=tab&id=" + pinID + "'></td></tr><tr><td colspan='2'><p><span class='style1'><strong>Street Address:</strong></span><strong><br /> " + nl[i].childNodes[0].childNodes[0].text + ' ' + nl[i].childNodes[0].childNodes[1].text + ' ' + nl[i].childNodes[0].childNodes[2].text + ' ' + nl[i].childNodes[0].childNodes[3].text + ' ' +  nl[i].childNodes[0].childNodes[4].text + ' ' + nl[i].childNodes[0].childNodes[5].text + "<br />" +  nl[i].childNodes[0].childNodes[6].text + ' ' +  nl[i].childNodes[0].childNodes[7].text + ' ' + nl[i].childNodes[0].childNodes[8].text  + " </strong></p></td> </tr> <tr> <td height='6' colspan='2'></td> </tr> <tr><td colspan='2'><table width='252' border='0' cellspacing='0' cellpadding='0'><tr><td width='50%'><span class='style1'><strong>Bedrooms:</strong></span><strong> " + nl[i].childNodes[1].childNodes[3].text + " </strong></td><td><span class='style1'><strong>Year Built: </strong></span><strong>" + nl[i].childNodes[1].childNodes[8].text + " </strong></td></tr><tr><td><span class='style1'><strong>Bath #'s:</strong></span><strong> " + nl[i].childNodes[1].childNodes[4].text + " </strong></td><td><span class='style1'><strong>Square Feet:</strong></span><strong> " + nl[i].childNodes[1].childNodes[5].text + " </strong></td></tr></table></td></tr><tr><td height='6' colspan='2'></td></tr><tr><td colspan='2'><table width='252' border='0' cellspacing='0' cellpadding='0'><tr><td width='50%' class='style1'><strong>Last Sale Price: </strong></td><td ><span class='style2'><b><font size=+1>$" + nl[i].childNodes[1].childNodes[6].text + "</font></b></span></td></tr><tr><td class='style1'><strong>Closing Date </strong></td><td><strong>" + nl[i].childNodes[1].childNodes[7].text + "</strong></td></tr></table></td></tr></table>",
               
                //nl[i].childNodes[0].childNodes[6].text + ', ' + nl[i].childNodes[0].childNodes[7].text + '  ' + nl[i].childNodes[0].childNodes[8].text + "<br />" +  'Closing Date: ' + nl[i].childNodes[1].childNodes[7].text,
                'iconStyle',
                'titleSytle',
                'detailsStyle'
                );
                map.AddPushpin(pin);
                pinID++;
            }
            
             //Add Main Location PIN
             if (sp.length > 0) {
             var pin = new VEPushpin(
                    pinID, 
                    new VELatLong(sp[0].childNodes[4].text, sp[0].childNodes[5].text), 
                    'images/ministar.gif', 
                    sp[0].childNodes[0].text , 
                    sp[0].childNodes[1].text + ', ' + sp[0].childNodes[2].text,
                    'iconStyle',
                    'titleSytle',
                    'detailsStyle'
                    );
                    map.AddPushpin(pin);
                    pinID++;
                    }
                
                
        }    
        mapResize();
        var z = document.getElementById('ctl00_Main_div1');
        if (!z)return true; {z.style.display="block";}
         var y = document.getElementById('ctl00_Main_div2');
        if (!y)return true; {y.style.display="block";}
        hideData()
                    
     }
    } 
function getDrivingDirectionsDIV()
      {
       var map = new VEMap('myMap');
       
      try
          {
          map.LoadMap();  
          }
          catch(e)
          {}
       map.HideDashboard();
        gmapEnd = map.GUID;
       
       try {
       if (window.attachEvent) {
            window.attachEvent("onresize", mapResize); 
            window.attachEvent("onendzoom", mapResize);
                } else {
            window.addEventListener("resize", mapResize, false);
                }
              }
              catch(e)
              {}
                    
              
       try
       
       {
       //map.GetRoute(document.getElementById('ctl00_Main_txtSearch').value + ' ' + document.getElementById('ctl00_Main_jZip').value , document.getElementById('ctl00_Main_txtSearch2').value + ' ' +  document.getElementById('ctl00_Main_jZip2').value  ,null,null,onGotRouteDIV);
       map.GetRoute(document.getElementById('ctl00_Main_txtDirectionsFrom').value , document.getElementById('ctl00_Main_txtDirectionsTo').value ,null,null,onGotRouteDIV);
       
       }
       catch(e)
       {}
}
    
    
function onGotRouteDIV(route)         
        {
        
        var routeinfo="<br/><b>Route info:</b><br/>";            
        routeinfo+="Driving Time: ";
        routeinfo+=   route.Itinerary.Time+"<br/>";
        routeinfo+="Total distance: ";           
        routeinfo+=   route.Itinerary.Distance+" ";            
        routeinfo+=   route.Itinerary.DistanceUnit+"<br/>";                        
        
        var steps="";            
        var len = route.Itinerary.Segments.length;               
        for(var i = 0; i < len ;i++)              
         { 
        steps+= "<font color=red>";
        steps+= i+1 
        steps+= "</font>. "
        steps+=route.Itinerary.Segments[i].Instruction+" -- (";                  
        steps+=route.Itinerary.Segments[i].Distance+") ";                  
        steps+=route.Itinerary.DistanceUnit+"<br/>";               
        }            
        routeinfo+="Waypoints:<br/>"+steps;
        document.getElementById("ctl00_Main_dataresultsDD").innerHTML = routeinfo;
        StartLat = route.StartLocation.LatLong.Latitude;
        StartLong = route.StartLocation.LatLong.Longitude;
        EndLat = route.EndLocation.LatLong.Latitude;
        EndLong = route.EndLocation.LatLong.Longitude;
        
        mapResize();
        var z = document.getElementById('ctl00_Main_div4');
        if (!z)return true; {z.style.display="block";}
        var z = document.getElementById('ctl00_Main_div2');
        if (!z)return true; {z.style.display="none";}
        var z = document.getElementById('ctl00_Main_div1');
        if (!z)return true; {z.style.display="none";}  
        var z = document.getElementById('ctl00_Main_div3');
        if (!z)return true; {z.style.display="none";}               
        }      
         
function showdiv1() {

var xdivit1 = document.getElementById("ctl00_Main_div1")
if (xdivit1 != null) {
xdivit1.display = "block";
}

}

function toggleMe(a){
  var e=document.getElementById(a);
  if(!e)return true;
  if(e.style.display=="none"){
    e.style.display="block"
  } else {
    e.style.display="none"
  }
  return true;
}

function clearmap(a) {

var e=document.getElementById(a);
var xpr = document.getElementById("myProfile");
var xit = document.getElementById("myMap");
var e=document.getElementById(a);

  if(!e)return true;
  if(e.style.display=="none"){
    //map OFF
    e.style.display="block";
    xit.style.display="none";
    xpr.style.display="block";
  } else {
    //map ON
    e.style.display="none";
    xit.style.display="block";
    xpr.style.display="none";
  }
}

function showProfile() {
var xid = document.getElementById("ctl00_Main_div3");
var xpr = document.getElementById("myProfile");
var xit = document.getElementById("myMap");
xid.style.display="block"
xpr.style.display="block";
xit.style.display="none";

}

function showData() {
var xip = document.getElementById("ctl00_Main_panel20");
xip.style.display="block";
}

function hideData() {
var xip = document.getElementById("ctl00_Main_panel20");
xip.style.display="none";
}

function hideDiv(e) {
var xip = document.getElementById("ctl00_Main_" + e);
xip.style.display="none";
}

function showDiv(e) {
var xip = document.getElementById("ctl00_Main_" + e);
xip.style.display="block";
}



function GetATTMap()
      {
        var map = new VEMap('myMap');
        map.LoadMap(new VELatLong(33.7412699991, -84.341383), 5, 'r', false, VEMapMode.Mode2D, true);
       
      }   