var http_request = false;
function makeRequest(url, parameters) {
	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;
     }
	 parameters = parameters + "&dummy=" + new Date().getTime();
     http_request.onreadystatechange = respond;
     http_request.open('GET', url + parameters, true);
     http_request.send(null);
}

function respond() {
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			//alert(http_request.responseText);
			result = http_request.responseText;
			//document.getElementById('head_center').innerHTML = result;
			//var actionBot needs to be defined on the sender page
			actionBot.innerHTML = result;
		} else {
			alert('There was a problem with the request.');
		}
	}else{
		actionBot.innerHTML = "wait";
	}
}

function get(obj, output, doc) {
	var getstr = "?";
	var sendTo = "/ajax/" + doc;
	actionBot = output;//tell the server what element will respond
	for (i=0; i<obj.childNodes.length; i++) {
		if (obj.childNodes[i].tagName == "INPUT") {
			if (obj.childNodes[i].type == "text") {
				getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
			}
			if (obj.childNodes[i].type == "password") {
               getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
            }
            if (obj.childNodes[i].type == "checkbox") {
				if (obj.childNodes[i].checked) {
					getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
				} else {
					getstr += obj.childNodes[i].name + "=&";
				}
			}
            if (obj.childNodes[i].type == "radio") {
				if (obj.childNodes[i].checked) {
					getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
				}
			}
		}else if (obj.childNodes[i].tagName == "TEXTAREA") {
			TAname = obj.childNodes[i].name;
			TAvalue = obj.childNodes[i].value;
			TAvalue = TAvalue.replace("&", "AND");
			getstr += TAname + "=" + TAvalue + "&";
		}
	}
	makeRequest(sendTo, getstr);
}
