var bloqueiaEnvio = false; // variável utilizada pelo bloqueio de botões

//função que exibe a mensagem de aguarde e bloqueia os botões da tela
function bloqueiaAcoes(documento){

	//bloqueia os botões do documento passado como parâmetro
	var listaBotoes = documento.getElementsByTagName("input");
	for (var cont=0; cont<listaBotoes.length; cont++){
		controle = listaBotoes[cont];
		if (controle.type == "button" || controle.type == "submit"){
			controle.disabled = true;
		}
	}
	
	//exibe a tela de aguarde no centro da tela
	documento.getElementById("loading").style.left = documento.body.offsetWidth / 2 - 120;
	documento.getElementById("loading").style.top = documento.body.clientHeight / 2 + documento.body.scrollTop - 40;
	documento.getElementById("frameloading").style.left = documento.getElementById("loading").style.left;
	documento.getElementById("frameloading").style.top = documento.getElementById("loading").style.top;
	documento.getElementById("frameloading").style.zIndex = "98";
	documento.getElementById("loading").style.zIndex = "99";
	documento.getElementById("loading").style.display = "";
	documento.getElementById("frameloading").style.width = documento.getElementById("loading").offsetWidth+"px";
	documento.getElementById("frameloading").style.height = documento.getElementById("loading").offsetHeight+"px";
	documento.getElementById("frameloading").style.display = "";
	bloqueiaEnvio = true;
}

//função que esconde a mensagem de aguarde e desbloqueia os botões da tela
function desbloqueiaAcoes(documento){

	//desbloqueia os botões do documento passado como parâmetro
	var listaBotoes = documento.getElementsByTagName("input");
	for (var cont=0; cont<listaBotoes.length; cont++){
		controle = listaBotoes[cont];
		if (controle.type == "button" || controle.type == "submit"){
			controle.disabled = false;
		}
	}
	
	//esconde a tela de aguarde
	documento.getElementById("loading").style.left = 0;
	documento.getElementById("loading").style.top = 0;
	documento.getElementById("frameloading").style.left = 0;
	documento.getElementById("frameloading").style.top = 0;
	documento.getElementById("frameloading").style.zIndex = "-1";
	documento.getElementById("loading").style.zIndex = "-1";
	documento.getElementById("loading").style.display = "none";
	documento.getElementById("frameloading").style.width = 0;
	documento.getElementById("frameloading").style.height = 0;
	documento.getElementById("frameloading").style.display = "none";
	bloqueiaEnvio = false;
}

//função que exibe uma mensagem de aguarde, caso algum botão seja clicado durante o processamento
function aguarde(){
	if (bloqueiaEnvio){			
		alert("Sua solicitação está sendo processada.\nPor favor aguarde!");
		return false;
	}
	return true;
}
