
var http_request = false;

function makePOSTRequest(url, parameters, functionName) 
{
    http_request = false;
    
    if (window.XMLHttpRequest) // Mozilla, Safari,...
    { 
        http_request = new XMLHttpRequest();
        if (http_request.overrideMimeType) 
        {
 	        // set type accordingly to anticipated content type
            //http_request.overrideMimeType('text/xml');
            http_request.overrideMimeType('text/html');
        }
    } 
    else if (window.ActiveXObject) // IE
    { 
        try 
        {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) 
        {
            try 
            {
                http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) 
            {}
        }
    }
    
    if (!http_request) 
    {
        alert('Cannot create XMLHTTP instance');
        return false;
    }

    http_request.onreadystatechange = functionName;
    http_request.open('POST', url, true);
    http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http_request.setRequestHeader("Content-length", parameters.length);
    http_request.setRequestHeader("Connection", "close");
    http_request.send(parameters);
}

function makeGETRequest(url, functionName) 
{
    http_request = false;
    
    if (window.XMLHttpRequest) // Mozilla, Safari,...
    {
        http_request = new XMLHttpRequest();
    } 
    else
    {         
        try
        {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch(e)
        {
            try
            {
                http_request = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch(oc)
            {
                http_request = null;
            }
        }      
    }
    
    if (!http_request) 
    {
        alert('Cannot create XMLHTTP instance');
        return false;
    }
    var myDate=new Date(); 
    url += '&uniqueReq=' + myDate.getTime();
    http_request.onreadystatechange = functionName;
    http_request.open('GET', url, true);
    http_request.send('');
}

function makeSynchronousGETRequest(url) 
{
    if (window.XMLHttpRequest) { AJAX = new XMLHttpRequest(); }
    else { AJAX = new ActiveXObject("Microsoft.XMLHTTP"); }
    if (AJAX) 
    {
        AJAX.open("GET", url, false);                             
        AJAX.send(null);
        return AJAX.responseText;                                         
    } 
    else { return false; }                                             
}