var xmlHttp;
	var mapHttp;
	
    var requestURL = getRootPath() + '/DesktopModules/JourneyPlannerResults/logMapRequest.aspx?';
        
    var is_ie = (navigator.userAgent.indexOf('MSIE') >= 0) ? 1 : 0;
    var is_ie5 = (navigator.appVersion.indexOf("MSIE 5.5")!=-1) ? 1 : 0;
    var is_opera = ((navigator.userAgent.indexOf("Opera6")!=-1)||(navigator.userAgent.indexOf("Opera/6")!=-1)) ? 1 : 0;
    //netscape, safari, mozilla behave the same???
    var is_netscape = (navigator.userAgent.indexOf('Netscape') >= 0) ? 1 : 0;
    

    function log_mapRequest(stat_id, tabid, quickid, maprequesttype){
		test = new Date();
		var sYear = test.getFullYear();
		var sMonth = test.getMonth() + 1;
		if(sMonth < 10)
		{
			sMonth = "0" + sMonth;
		}
		//alert(sMonth);
		var sDay = test.getDate();
		var sHours = test.getHours();
		var sMinutes = test.getMinutes();
		var sMilliseconds = test.getMilliseconds();
		var requestTimestamp = Date.UTC(sYear,sMonth,sDay,sHours,sMinutes,sMilliseconds);//get the date string
        if (stat_id > 0){
            //Append the parameters to the requestURL
            var url = requestURL + 'stat_id=' + stat_id + '&tabid=' + tabid + '&quickid=' + quickid + 
            '&maprequesttype=' + maprequesttype + '&requestTimestamp=' + requestTimestamp;
            
            //document.write(url);
            //alert(url);
            
            //Create the xmlHttp object to use in the request
            //stateChangeHandler will fire when the state has changed, i.e. data is received back
            // This is non-blocking (asynchronous)
            xmlHttp = GetXmlHttpObject(stateChangeHandler);
            
            //Send the xmlHttp get to the specified url
            xmlHttp_Get(xmlHttp, url);
        }
        else {
            alert('No Stats.');
			}
    }
    
    //stateChangeHandler will fire when the state has changed, i.e. data is received back
    // This is non-blocking (asynchronous)
	function stateChangeHandler()
    {
        //readyState of 4 or 'complete' represents that data has been returned
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){
            //
        }
    }
    // Uncomment this function and comment out the one above for debugging
    /* function stateChangeHandler()
    {
        //readyState of 4 or 'complete' represents that data has been returned
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){
           	if (xmlHttp.status == 200)
			{
				alert(xmlHttp.responseText);
			}
			else if (xmlHttp.status == 404)
			{
				alert('Page Not Found!');
			}
			else if (xmlHttp.status == 500)
			{
				alert('Page Error: 500');
			}
        }				
    }*/
    
     /*function mapChangeHandler()
    {
		var windowURL;
        //readyState of 4 or 'complete' represents that data has been returned
        if (mapHttp.readyState == 4 || mapHttp.readyState == 'complete'){
            //deal with response
            if(mapHttp.responseText == "Success")
            {
				if(tripKey == 0)
				{
					windowURL = getRootPath() + '/DesktopModules/JourneyPlannerMap/TripDetailFrame.aspx?JourneyID=' + JourneyID
				}
				else
				{
					windowURL = getRootPath() + '/DesktopModules/JourneyPlannerMap/TripDetailFrame.aspx?JourneyID=' + JourneyID + '&IsService=' + TripKey
				}
				
				map.resizeTo(800,600);
				map.location.href = windowURL;
				map.focus();
            }
            else
            {
            
            }
        }
        else
        {
        
        }
    }*/

    // XMLHttp send GET request
    function xmlHttp_Get(xmlhttp, url) {
        xmlhttp.open('GET', url, true);
        xmlhttp.send(null);
    }
    
    /*function mapHttp_Get(maphttp, mapurl) {
        maphttp.open('GET', mapurl, true);
        maphttp.send(null);
    }*/

    function GetXmlHttpObject(handler) {
        var objXmlHttp = null;    //Holds the local xmlHTTP object instance

        //Depending on the browser, try to create the xmlHttp object
        if (is_ie){
            //The object to create depends on version of IE
            //If it isn't ie5, then default to the Msxml2.XMLHTTP object
            var strObjName = (is_ie5) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP';
            
            //Attempt to create the object
            try{
                objXmlHttp = new ActiveXObject(strObjName);
                objXmlHttp.onreadystatechange = handler;
            }
            catch(e){
            //Object creation errored
                //alert('IE detected, but object could not be created. Verify that active scripting and activeX controls are enabled');
                return;
            }
        }
        //else if (is_opera){
            //Opera has some issues with xmlHttp object functionality
            //alert('Opera detected. The page may not behave as expected.');
            //return;
       // }
        else{
            // Mozilla | Netscape | Safari | Opera
            objXmlHttp = new XMLHttpRequest();
            objXmlHttp.onload = handler;
            objXmlHttp.onerror = handler;
        }
        
        //Return the instantiated object
        return objXmlHttp;
    }