/**
 * Allows simple inclusion of other content.
 */
 
function getRequestObject(crossSite) {
    var requestObj = false //variable to hold ajax object
/*@cc_on
   @if (@_jscript_version >= 5)
      try {
        requestObj = new ActiveXObject("Msxml2.XMLHTTP")
      }
      catch (e) {
         try {
             requestObj = new ActiveXObject("Microsoft.XMLHTTP")
         }
         catch (e2) {
             requestObj = false
         }
      }
   @end
@*/

    if (!requestObj && typeof XMLHttpRequest != 'undefined') {
        // ok, we are doing it the Mozilla way ...
        if (!crossSite) {
            requestObj = new XMLHttpRequest()
        }
        else {
            // try to expand our permissions ...
            try {
                netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
                requestObj = new XMLHttpRequest()
            } catch (e) {
                requestObj = false;
            }
        }
    }

    return requestObj;
}

function ajaxInclude(url, crossSite){
    var requestObj = getRequestObject(crossSite);
    if (requestObj) { //if requestObj is not false
        try {
            requestObj.open('GET', url, false); //get page synchronously 
            requestObj.send(null);
            embedContent(requestObj);
        }
        catch (ex) {
            document.write("\n<div class=\"error\">Unable to retrieve content from "+ url +" (error: "+ ex.message +").</div>");
        }
    }
    else {
        if (crossSite) {
            document.write("\n<div class=\"error\">Unable to retrieve content from "+ url +" (cannot create an AJAX request object with sufficient privileges to read \"cross-site\" data).</div>");
        }
        else {
            document.write("\n<div class=\"error\">Unable to retrieve content from "+ url +" (cannot create an AJAX request object).</div>");
        }
    }
}

function embedContent(request) {
    //if viewing page offline or the document was successfully retrieved online (status code=2000)
    if (window.location.href.indexOf("http") == -1 || request.status == 200) {
        document.write(request.responseText)
    }
}

