var xmlHTTP;
var sendMethod = "";

var XML_STREET_DIRECTORIES = "StreetDirectories";
var XML_SEARCH_TYPE = "SearchType";
var XML_PROJECTION_ZONE = "ProjectionZone";
var XML_POSTCODE = "Postcode";
var XML_PASSWORD = "Password";
var XML_INFO = "Info";
var XML_VALIDATE_STREET = "ValidateStreet";

function loadXMLDoc(url, sendAsync)
{
    sendMethod = "";
    xmlHTTP = null;

    if (window.XMLHttpRequest)
    {
        if (navigator.appName == "Microsoft Internet Explorer")
        {
            createActiveXXMLHttp();
        }
        else
        {
            createXMLHttpRequest();
        }
    }
    else if (window.ActiveXObject)
    {
        createActiveXXMLHttp();
    }

    if (xmlHTTP != null)
    {
        xmlHTTP.open(sendMethod, url, sendAsync);
        
        if (sendAsync)
            xmlHTTP.onreadystatechange = state_Change;

        xmlHTTP.send(null);

        if (!sendAsync)
            return xmlHTTP.responseText;
    }
    else
    {
        alert("Your browser does not support XMLHTTP.");
    }

    return true;
}

function state_Change()
{
    if (xmlHTTP.readyState == 4)
    {
        // 4 = "loaded"
        if (xmlHTTP.status == 200)
        {
            // 200 = OK
            processXMLHttpResult(xmlHTTP.responseText);
        }
        else
        {
            processXMLHttpResultError();
        }
    }
}

function createXMLHttpRequest()
{
    xmlHTTP = new XMLHttpRequest();
    sendMethod = "GET"; 
}

function createActiveXXMLHttp()
{
    xmlHTTP = new ActiveXObject("Microsoft.XMLHTTP");
    sendMethod = "POST";
}