﻿function doClick(buttonName,e)
{
    var keyunicode=e.charCode || e.keyCode    
    //the purpose of this function is to allow the enter key to 
    //point to the correct button to click.
    var key;					
    if(e.which){//firefox
        if (keyunicode == 13)
        {
            //Get the button the user wants to have clicked
            var btn = document.getElementById(buttonName);
            if (btn != null)
            { //If we find the button click it
                btn.click(); e.charCode = 0 ; //firefox
            }
        }                                              
    }
    else {
        key = e.keyCode; //IE    
        if (key == 13)
        {
            //Get the button the user wants to have clicked
            var btn = document.getElementById(buttonName);
            if (btn != null)
            { //If we find the button click it
                btn.click(); e.keyCode = 0 ; //IE
            }
        }                        
    }
}

        var key1 = 'ABQIAAAAGbe15MnqXib6_AaXgHErgxRsROQRoIwy6oyws6FuiOM8dwVGcxT4PV59tKtGC1JTW4yxbegtlyBwQw';
        var key2 = 'ABQIAAAAGbe15MnqXib6_AaXgHErgxSwjfvWQ-isB4Rz4D7GZAmS-xEErxQEqveaiCBNZdetB1hDaqHBggK21Q';
        var myKey = key2;
        if (window.location.host == 'www.gmapplus.com' || window.location.host== 'gmapplus.com') {
          myKey = key1;
        }
        else {
          myKey = key2;
        }
        var scriptTag = '<' + 'script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=' + myKey + '">'+'<'+'/script>';
        document.write(scriptTag); 


        var map ;        
        function initialize() {
          if (GBrowserIsCompatible()) {
            map = new GMap2(document.getElementById("map_canvas"));
            var latlng = new GLatLng(40.036040,-98.977512) ; // Memphis Airport
            map.setCenter(latlng,4);
            map.addControl(new GSmallMapControl());
            map.addControl(new GMapTypeControl());            
            map.enableScrollWheelZoom();            
          }     
        RS.Execute("IPQuery.aspx","ServerSideReturnGetIP",showIP);        
        var inputtext1 = document.getElementById("inputtext1");
        inputtext1.focus();
        }

        function showIP(returnIP){
            document.getElementById("TDIP").innerHTML="Your IP is: "+returnIP;
            document.getElementById("inputtext1").value=returnIP;
        }
        
        function ButtonClientSubmit_onclick() {
            window.status = "Getting IP values ...";
            var inputtext1 = document.getElementById("inputtext1");
            var ULInfo = document.getElementById("ULInfo");
            ULInfo.innerHTML="<table style='width: 90%; background-color: #FFFFFF;'> <tr valign='middle'> <td> <img src='images/loadinfo_net.gif' alt='processing...' /> </td> <td> Processing... </td> </tr> </table>";            
            RS.Execute("IPQuery.aspx","ServerSideReturn",inputtext1.value,updateMap);
            window.status = "";
        }
        
        function updateMap(result){
            var ULInfo = document.getElementById("ULInfo");                        
            var TDMsg = document.getElementById("TDMsg");  
            var returnAry = new Array();
            returnAry = result.split("+");                      
            if(returnAry.length<3){
                var inputtext1 = document.getElementById("inputtext1");
                TDMsg.innerHTML="No data found for "+inputtext1.value +"!";
                //ULInfo.innerHTML=result;           
                return;
            }            
            TDMsg.innerHTML="";
            var inputtext1 = document.getElementById("inputtext1");
            var inputValue=inputtext1.value;
            inputtext1.value="";    
            inputtext1.focus();        

            var returnErrorNo = returnAry[0];
            var returnState = returnAry[1];
            var returnCenterX = returnAry[2];
            var returnCenterY = returnAry[3];
            var returnCity = returnAry[4];
            var returnZip = returnAry[5];
            var returnCountry = returnAry[6];
            var tabsStr=returnAry[7];   
                     
            var htmlStr=""; 
            htmlStr+="<table style='width: 95%; border-top-style: ridge; border-right-style: ridge; border-left-style: ridge; border-bottom-style: ridge;'>";
            htmlStr+="<tr style='background-color: #aaaaaa;'><td>You gave</td></tr><tr><td align='center'><a href='#'>"+inputValue+"</a></td></tr>"
            htmlStr+="<tr style='background-color: #aaaaaa;'><td>City</td></tr><tr><td align='center'><a href='#'>"+returnCity+"</a></td></tr>"
            htmlStr+="<tr style='background-color: #aaaaaa;'><td>State</td></tr><tr><td align='center'><a href='#'>"+returnState+"</a></td></tr>"
            htmlStr+="<tr style='background-color: #aaaaaa;'><td>Zip</td></tr><tr><td align='center'><a href='#'>"+returnZip+"</a></td></tr>"
            htmlStr+="<tr style='background-color: #aaaaaa;'><td>Country</td></tr><tr><td align='center'><a href='#'>"+returnCountry+"</a></td></tr>"
            htmlStr+="<tr style='background-color: #aaaaaa;'><td>Longitude</td></tr><tr><td align='center'><a href='#'>"+returnCenterX+"</a></td></tr>"
            htmlStr+="<tr style='background-color: #aaaaaa;'><td>Latitude</td></tr><tr><td align='center'><a href='#'>"+returnCenterY+"</a></td></tr>"
            htmlStr+="</table>";
                      
            ULInfo.innerHTML = htmlStr;    
            
            var point_center = new GLatLng(parseFloat(returnCenterY),parseFloat(returnCenterX));                             
            if(tabsStr=="NA"){                
                var marker_center = new GMarker(point_center);
                GEvent.addListener(marker_center, "click", function() {
                    marker_center.openInfoWindowHtml('<table style="color: #4D85C5; "><tr><TD>IP: '+inputValue, + returnCenterX +","+returnCenterY+'</TD></TR></TABLE>');
                    });
                map.addOverlay(marker_center);            
            }
            else{
			    var label = "XYInfo";
			    var tabInfo = new Array();
			    tabInfo="Address|CensusInfo|SchoolDist|AreaCode|Other".split("|");
			    tabs = new Array();
			    for (var j = 0; j < tabInfo.length; j++) {
				    var tabLabel = tabInfo[j];
				    var tabHtml = getTagValue(tabInfo[j],tabsStr);
				    if ((j==0) && (tabInfo.length > 2)){
					    tabHtml = '<div style="width:'+tabInfo.length*88+'px">' + tabHtml + '</div>';
				    }
				    tabs.push(new GInfoWindowTab(tabLabel,tabHtml));
			    }
			    var marker = createTabbedMarker(point_center,label,tabs);

			    map.addOverlay(marker);
			    marker.openInfoWindowTabsHtml(marker.tabs);            
            }
            map.setCenter(new GLatLng(parseFloat(returnCenterY),parseFloat(returnCenterX)),13);
        }
        
    function getTagValue(tagName,infos){
        var tagValue="";
        var mytagName=new String;
        mytagName=tagName;
        var myInfos=new String;
        myInfos=infos;
        var startIndex;
        var endIndex;
        var length;
        startIndex=myInfos.indexOf("<"+mytagName+">");
        endIndex=myInfos.indexOf("</"+mytagName+">");
        length=mytagName.length+2;
        if (startIndex < endIndex)
        {
            tagValue = myInfos.substring(startIndex + length, endIndex);
        }
        return tagValue;
    }
    
    function createTabbedMarker(point,label,tabs) {
	    var marker = new GMarker(point);
	    marker.tabs = tabs;        
	    GEvent.addListener(marker, "click", function() {
		    marker.openInfoWindowTabsHtml(marker.tabs);
	    });
	    return marker;
    }   