var ajax;
var publicObjectId;
var dhtmlAjax;
var dhtmlPublicObjectId;
var congelarTela;
//var navegador;

document.write("<div id=\"screenSaver\" class=\"screensaver\" style=\"visibility:hidden;position:absolute;top:0;left;0;width:100%;height:100%;filter:alpha(opacity=80);opacity: .80;background:#AAA;\"><font color=\"#AA0000\" face=\"arial\" size=\"6\"><b>Aguarde uns instantes ...</b></font></div>");

// criar objeto ajax
function criarAjax(){
	if (window.ActiveXObject){
		ajax = new ActiveXObject("Microsoft.XMLHTTP");
		//navegador = 'ie';
	} else if (window.XMLHttpRequest){
		//navegador = 'ff';
		ajax = new XMLHttpRequest();
	}
}
// solicitação ajax por meio POST
function postAjax(pagina,query,objectId,bolCongelaTela){
	criarAjax();
	congelarTela = bolCongelaTela;
	publicObjectId = objectId;		// passa parâmetro para o handlestatechange
	ajax.onreadystatechange = handleAjaxState;
	ajax.open("POST",pagina+"?"+query,true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.setRequestHeader("Content-length", query.length);
	ajax.setRequestHeader("Connection", "close");
	ajax.send(query);	
}
// criar objeto ajax
function dhtmlCriarAjax(){
	if (window.ActiveXObject){
		dhtmlAjax = new ActiveXObject("Microsoft.XMLHTTP");
	} else if (window.XMLHttpRequest){
		dhtmlAjax = new XMLHttpRequest();
	}
}
// solicitação ajax por meio POST
function dhtmlPostAjax(pagina,query,objectId,bolCongelaTela){
	dhtmlCriarAjax();
	congelarTela = bolCongelaTela;
	document.getElementById("screenSaver").style.visibility="visible";
	dhtmlPublicObjectId = objectId;		// passa parâmetro para o handlestatechange
	dhtmlAjax.onreadystatechange = dhtmlHandleAjaxState;
	dhtmlAjax.open("POST",pagina+"?"+query,true);
	dhtmlAjax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	dhtmlAjax.setRequestHeader("Content-length", query.length);
	dhtmlAjax.setRequestHeader("Connection", "close"); 
	dhtmlAjax.send(query);	
}
function handleAjaxState(){
	switch (ajax.readyState){
		case 1: // carregando
			if (congelarTela){
				document.getElementById("screenSaver").style.visibility="visible";
			}
		break;
		/*case 2: // carregada
		case 3: // interativa
		*/
		case 4: // concluída
			if (congelarTela)
				document.getElementById("screenSaver").style.visibility="hidden";
			if (ajax.status == 200){
				document.getElementById(publicObjectId).value = ajax.responseText;
			} else {
				document.getElementById(publicObjectId).value = "Erro! "+ajax.status;
			}
		break;
 	}
}
function dhtmlHandleAjaxState(){
	switch (dhtmlAjax.readyState){
		case 1: // carregando
			if (congelarTela){
				document.getElementById("screenSaver").style.visibility="visible";
			}
		break;
		case 4: // concluída
			if (congelarTela)
				document.getElementById("screenSaver").style.visibility="hidden";
			if (dhtmlAjax.status == 200){
				eval(dhtmlAjax.responseText);
				//document.getElementById(dhtmlPublicObjectId).innerHTML = dhtmlAjax.responseText;
			} else {
				document.getElementById(dhtmlPublicObjectId).innerHTML = "Erro! "+dhtmlAjax.status;
			}
		break;
 	}
}
