
    //for xml parsing
    if (typeof DOMParser == "undefined") {
        DOMParser = function () {}
		
	DOMParser.prototype.parseFromString = function (str, contentType) {
	    if (typeof ActiveXObject != "undefined") {
		         var d = new ActiveXObject("MSXML.DomDocument");
		         d.loadXML(str);
		         return d;
	    } else if (typeof XMLHttpRequest != "undefined") {
		         var req = new XMLHttpRequest;
		         req.open("GET", "data:" + (contentType || "application/xml") +
		                         ";charset=utf-8," + encodeURIComponent(str), false);
		         if (req.overrideMimeType) {
		            req.overrideMimeType(contentType);
		         }
		         req.send(null);
		         return req.responseXML;
	    }
	}
    }


function makeHttpRequestexist(url,callback_function, return_xml) { 
    var http_request = false; 

    if (window.XMLHttpRequest) { // Mozilla, Safari,... 
        http_request = new XMLHttpRequest(); 
        if (http_request.overrideMimeType) { 
            http_request.overrideMimeType('text/xml'); 
        } 
    } 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('Unfortunately you browser doesn\'t support this feature.'); 
        return false; 
    } 

    http_request.onreadystatechange = function() { 
        if (http_request.readyState == 4) { 
            if (http_request.status == 200) { 
                eval(callback_function + '(1)'); 
            } else { 
                eval(callback_function + '(0)'); 
                //alert('There was a problem with the request.(Code: ' + http_request.status + ')'); 
            } 
        } else {
            //eval(callback_function + '(0)'); 
        }
    } 
    try {
	    http_request.open('GET', url, true); 
	    http_request.send(null); 
    } catch (e) {}
}

function makeHttpRequest(url, callback_function, return_xml) { 
    var http_request = false; 

    if (window.XMLHttpRequest) { // Mozilla, Safari,... 
        http_request = new XMLHttpRequest(); 
        if (http_request.overrideMimeType) { 
            http_request.overrideMimeType('text/xml'); 
        } 
    } 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('Unfortunately you browser doesn\'t support this feature.'); 
        return false; 
    } 
    http_request.onreadystatechange = function() { 
        if (http_request.readyState == 4) { 
            if (http_request.status == 200) { 
                if (return_xml) { 
                    eval(callback_function + '(http_request.responseXML)'); 
                } else { 
                    eval(callback_function + '(http_request.responseText)'); 
                } 
            } else { 
                //alert('There was a problem with the request.(Code: ' + http_request.status + ')'); 
            } 
        } 
    } 
    http_request.open('GET', url, true); 
    http_request.send(null); 
}


function makeHttpRequestSync(url, callback_function, return_xml) { 
    var http_request = false; 

    if (window.XMLHttpRequest) { // Mozilla, Safari,... 
        http_request = new XMLHttpRequest(); 
        if (http_request.overrideMimeType) { 
            http_request.overrideMimeType('text/xml'); 
        } 
    } 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('Unfortunately you browser doesn\'t support this feature.'); 
        return false; 
    } 
    http_request.onreadystatechange = function() { 
        if (http_request.readyState == 4) { 
            if (http_request.status == 200) { 
                if (return_xml) { 
                    eval(callback_function + '(http_request.responseXML)'); 
                } else { 
                    eval(callback_function + '(http_request.responseText)'); 
                } 
            } else { 
                //alert('There was a problem with the request.(Code: ' + http_request.status + ')'); 
            } 
        } 
    } 
    http_request.open('GET', url, false); 
    http_request.send(null); 
}
