function Request(){
	var request = false;
	if (window.XMLHttpRequest)
	    request = new XMLHttpRequest()
	else if (window.ActiveXObject){
		try{
			request = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e){
			try{
				request = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e){}
		}
	}
	if (!request)
	    alert ("Error initializing XMLHttpRequest!");
	return request;
}


function Location(url){
	window.location.href = url;
}


function Wait(waitId, buttonId, s){
	if (s == 'on') {
	    document.getElementById(waitId).innerHTML = "<img src=\"templates/images/loading.gif\" width=\"16\" height=\"16\" style=\"border:0; cursor:wait; vertical-align: middle; margin:-5px 3px 0 3px;\" />";
	    buttonId.disabled = true;
	}else{
		document.getElementById(waitId).innerHTML = "";
		buttonId.disabled = false;
	}
}


function LoadPage(request, waitId, buttonId){
	if (request.readyState == 4){
		if (request.status == 200){
			Wait(waitId, buttonId, 'off');
			alert (request.responseText);
		}else if(request.status == 404){
		    alert ("ERROR 404: FILE NOT FOUND");
		}else{
		    alert ("Server error.");
		}
	}else{
		Wait(waitId, buttonId, 'on');
	}
	return request;
}


function Send(page, id, waitId, buttonId){
	var request = Request();
	request.onreadystatechange = function(){request = LoadPage(request, waitId, buttonId);}
	var data  = new String();
  	for (i=0; i<id.length; i++) {
		data += "&" + id[i] + "=" + encodeURIComponent(document.getElementById(id[i]).value);
  	}
	//var url = page + "?s=" + new Date().getTime() + data;
	//var url = page + "?" + data;
	request.open("POST", page, true);
	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
	request.send(data);
}
