///////////////////////////////// AJAX ///////////////////////////////////
function ajaxInit() {
var init;
try {
init = new ActiveXObject("Microsoft.XMLHTTP");
} 
catch(e) {
try {
init = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(ex) {
try {
init = new XMLHttpRequest();
}
catch(exc) {
alert("Esse browser nÃ£o tem recursos para uso do Ajax");
init = null;
}
}
}
return init
} 
/////////////////////////////////////////////////////////////////////////

function opcao(pagina,variaveis,Divload,txtLoad,Divres){
var ajax = ajaxInit();

variaveis = String(variaveis).replace(/'/g,'');     //'//converte o conteudo p/ string e remove aspas simples(')do conteudo da variavel para evitar erro de sql

if ((Divres=='popup')||(Divres=='POPUP')){
	popup('F'); 
	Divload='loadpopup';
	}

if ((Divres=='popupm')||(Divres=='POPUPM')){
	popup('M'); 
	Divload='loadpopup';
	}	
	
if(document.getElementById('erro')){
	document.getElementById('erro').innerHTML='';
}
var _load = document.getElementById(Divload) // faz instancia com o objeto load 
var _res = document.getElementById(Divres)
var retorno;

ajax.open("POST", pagina +'?rand='+Math.random(), true);//'?rand='+Math.random()  gera um numero aleatorio p/ garantir que a pagina nao fique em cache
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); // diz ao ajax que os dados sao do tipo form 
ajax.onreadystatechange = function() { 
	if(ajax.readyState == 1 ) {
	_load.style.display='';
	_load.innerHTML = "<img src=imagens/geral/loading.gif> "+txtLoad; // mostra Carregando enquanto o ajax naoo terminou de processar 
							  } 
	if(ajax.readyState == 4 ) {
		//_load.style.display='none';
		_load.innerHTML = "<img src=imagens/geral/blank.gif> ";
		if(ajax.status==200){ //se tudo
			
		var resultado=ajax.responseText;
			if (Divres=='principal'){
				resultado='<div class="divs" id="erro" ></div>'+resultado
			}	
				_res.innerHTML =resultado;
				//_res.innerHTML =ajax.responseText;
			////////////////////////////////////////////////////  EXECUTAR FUNCAO A PARTIR DE UMA PAGINA RETORNADA PELO AJAX ////////////////////////
			var a=ajax.responseText.split('%');
			for (var i=0; i < a.length; i++) {
				if(a[i].substr(0,1)=='#'){
					var b=a[i].split('#');
					for (var j=0; j < b.length; j++) {
						if(j==1){//se for a parte do comando
								eval(b[1]);
							}
					}
				}
			}
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		}else{
			var erroajax='';
			switch(ajax.status){
				case 401: erroajax=ajax.status+' Unauthorized';break;
				case 403: erroajax=ajax.status+' Forbidden';break;		
				case 404: erroajax=ajax.status+' Not Found';break;	
				default: erroajax=ajax.status+' Desconhecido';break;
			}
			_res.innerHTML ='Erro ao carregar a página solicitada: Erro '+erroajax;	
		}
	}
									}

ajax.send("variaveis="+variaveis);
}

