// AJAX.JS
// Contains simple ajax functions.

function simple_ajax_call(url, callback_function_done) {
    var xmlHttpReq = false;
    var self = this;
    var result = "";
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
    self.xmlHttpReq.open('GET', url, true);
    self.xmlHttpReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; Charset=utf-8");
    self.xmlHttpReq.onreadystatechange =
        function () {
            if (self.xmlHttpReq.readyState == 4) {
                if (callback_function_done) {
                    callback_function_done(self.xmlHttpReq.responseText);
                }
            }
        }
    self.xmlHttpReq.send(null);
}

function simple_ajax_post(url, callback_function_loading, callback_function_done ) {
    var xmlHttpReq = false;
    var self = this;
    var result = "";
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
    self.xmlHttpReq.open('POST', url, true);
    self.xmlHttpReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; Charset=utf-8");
    self.xmlHttpReq.onreadystatechange =
        function () {
            if (self.xmlHttpReq.readyState == 1) {
                if (callback_function_loading) {
                    callback_function_loading(self.xmlHttpReq.responseText);
                }
            }
            if (self.xmlHttpReq.readyState == 4) {
                if (callback_function_done) {
                    callback_function_done(self.xmlHttpReq.responseText);
                }
            }
        }
    self.xmlHttpReq.send(null);
}

function ajax_post_john(url, parameters, callback_function_loading, callback_function_done)
{
	var http_request = false;
	var self = this;

    if (window.XMLHttpRequest)
    {
    	self.http_request = new XMLHttpRequest();
    }
    else if (window.ActiveXObject)
    {
         try
         {
            self.http_request = new ActiveXObject("Msxml2.XMLHTTP");
         }
         catch (e)
         {
            try
            {
            	self.http_request = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e) {}
         }
    }

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

    self.http_request.onreadystatechange =
        function () {
            if (self.http_request.readyState == 1) {
                if (callback_function_loading) {
                    callback_function_loading(self.http_request.responseText);
                }
            }
            if (self.http_request.readyState == 4) {
                if (callback_function_done) {
                    callback_function_done(self.http_request.responseText);
                }
            }
        }

    self.http_request.open('POST', url, true);
    self.http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    self.http_request.setRequestHeader("Content-length", parameters.length);
    self.http_request.setRequestHeader("Connection", "close");
    self.http_request.send(parameters);
}
