function makeRequest(url, parameters, onComplete, onLoading) {
    var http_request = false;
    try {
        http_request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e1) {
        try {
            http_request= new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e2) {
            http_request = new XMLHttpRequest();
        }
    }


    if (!http_request) {
      alert('Cannot create XMLHTTP instance');
      return false;
    }


    completeListener = function() {
        if (http_request.readyState == 1) {
            onLoading()
        }
        if (http_request.readyState == 4) {
            if (http_request.status == 200) {
                onComplete(http_request)
            }
        }
    };

    http_request.onreadystatechange = completeListener;
    http_request.open('GET', url + "?" + parameters, true);
    http_request.send(null);
}
