//<![CDATA[
function isXmlHTTPNull(oXmlHTTP)
{
    if (oXmlHTTP == null)
    {
        alert(strErrorXMLHTTPNoSupport);
        return false;
    }
}

// Process the XML request for AJAX.
function doXMLRequest(oXmlHTTP, sUrl, sAction, bAsync, sFunctionNameGood, sFunctionNameBad)
{
    oXmlHTTP.open(sAction.toUpperCase(), sUrl, bAsync);
    oXmlHTTP.onreadystatechange = function()
        {
            if (oXmlHTTP.readyState == 4)
            {
                if (oXmlHTTP.status == 200)
                    eval(sFunctionNameGood);
                else
                {
                    alert(strErrorXMLHTTP + oXmlHTTP.status);
                    eval(sFunctionNameBad);
                }
            }
        };
    oXmlHTTP.send(null);
}

// Get the XML HTTP object for AJAX.
function getNewXmlHTTPObject()
{
    var oTempXmlHttp = null;
    try
    {
        // Firefox, Opera 8.0+, Safari
        oTempXmlHttp = new XMLHttpRequest();
    }
    catch (e)
    {
        // Internet Explorer
        try
        { oTempXmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); }
        catch (e)
        { oTempXmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }
    }

    return oTempXmlHttp;
}
//]]>