function GetXmlHttpObject() {
    var xmlHttp = null;
    try {
        // Firefox, Opera 8.0+, Safari
            xmlHttp = new XMLHttpRequest();
    } catch (e) {
        // Internet Explorer
            try {
                xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
    }
    return xmlHttp;
}

function getValueById(id) {
    try {
        var obj = document.getElementById(id);
        return obj.value;
    } catch(e) {
        return "";
    }
}

function setValueById(id, value) {
    try {
        var obj = document.getElementById(id);
        obj.value = value;
    } catch(e) {
    }
}

function voidAjaxCall(url, callback) {
    var xmlHttp = GetXmlHttpObject();
    xmlHttp.onreadystatechange = function() {
        if (xmlHttp.readyState == 4) { // "OK"
	    if (xmlHttp.status == 200) {
    	        if (callback != undefined) {
	            callback();
                }
    	    }
        }
    }
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}

function setIdToHTML(id, html) {
    document.getElementById(id).innerHTML = html;
}

function setIdToAjaxResponse(id, url, callback) {
    var xmlHttp = GetXmlHttpObject();
    xmlHttp.onreadystatechange = function() {
        if (xmlHttp.readyState==4) {
   	    if (xmlHttp.status == 200) {
    	 	setIdToHTML(id, xmlHttp.responseText);
    		if (callback != undefined) {
	            callback();
            	}
	    }
        }
    }
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}