﻿// AJAX Handler
function GetXmlHttpObject(handler) 
{ 
    var objXmlHttp = null; 
    if (!window.XMLHttpRequest)
    { 
        objXmlHttp = GetMSXmlHttp(); 
        if (objXmlHttp != null) 
            objXmlHttp.onreadystatechange = handler; 
    } 
    else
    { 
        objXmlHttp = new XMLHttpRequest(); 
        if (objXmlHttp != null) 
        { 
            objXmlHttp.onreadystatechange = handler;
            objXmlHttp.onload = handler; 
            objXmlHttp.onerror = handler; 
        } 
    } 
    return objXmlHttp; 
}
function GetMSXmlHttp()
{ 
    var xmlHttp = null; 
    var clsids = ["Msxml2.XMLHTTP.6.0", "Msxml2.XMLHTTP.4.0", "Msxml2.XMLHTTP.3.0", "Microsoft.XMLHTTP"];
    for(var i=0; i<clsids.length && xmlHttp == null; i++) 
    { 
        xmlHttp = CreateXmlHttp(clsids[i]); 
    } 
    return xmlHttp; 
}
function CreateXmlHttp(clsid) 
{ 
    var xmlHttp = null; 
    try 
    { 
        xmlHttp = new ActiveXObject(clsid); 
        return xmlHttp; 
    } catch(e) {} 
}