// BLACK ROOM - JANELA ESCURA QUE SOBREPÕE CONTEÚDO

function tamanho_tabela()
{
	document.getElementById('BlackRoom').style.height = document.getElementById('principal').offsetHeight
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v;
	//if (obj.style) { obj=obj.style; v=(v=='show')?'auto':(v=='hide')?'hidden':ovf; }
	//obj.overflow=ovf;
	}
  
}

// FIM DO BLACK ROOM

function getAjax(){
	window.document.body.style.cursor = "wait";

	// DEFINE AS VARIÁVEIS QUE SERÃO UTILIZADAS NO OBJETO

	var req;
	var arrRegistros = "";
	var txtObj = "";
	var txtFunction = "";
	var bitCombo = 0;
	var txtValSelected = "";
	var txtHost = "";
	var txtMetod = "GET";

	// INÍCIO DO PROCESSAMENTO

	// Seta o nome do objeto que irá receber o conteúdo da informação
	this.setObject = function(txtNome){
		txtObj = txtNome;
	};
	// Seta um valor binário 1=indica que o retorno deve entrar em um objeto do tipo combo; 0=indica que o retorno será em um objeto normal
	this.setCombo = function(txtNome){
		bitCombo = txtNome;
	};
	// Seta um nome de função que o objeto chamará após ser carregado as informações
	this.setFunction = function(txtNome){
		txtFunction = txtNome;
	};
	// Seta o valor default para caso for uma combo, este valor virá selecionado
	this.setValSelected = function(txtNome){
		txtValSelected = txtNome;
	};
	// Seta o host
	this.setHost = function(txtNome){
		txtHost = txtNome;
	};
	// Seta o método de envio das informações
	this.setMetod = function(txtNome){
		txtMetod = txtNome;
	};

	if(window.XMLHttpRequest) {
    	try {
			req = new XMLHttpRequest();
        } catch(e) {
			req = false;
        };
    } else if(window.ActiveXObject) {
       	try {
        	req = new ActiveXObject("Msxml2.XMLHTTP");
      	} catch(e) {
        	try {
          		req = new ActiveXObject("Microsoft.XMLHTTP");
        	} catch(e) {
          		req = false;
        	};
		};
    };

	this.sendAjax = function(){
		var objRetorno = document.getElementById(txtObj);
		if(typeof(objRetorno)!="object") return false;
		if(txtHost==""){
			alert("Insira o parâmetro de Host.");
			return;
		};
		if(txtObj==""){
			alert("Insira o nome do objeto.");
			return;
		};

		if(bitCombo!="1"){
			objRetorno.innerHTML = "<table width='100%' border='0' cellspacing='0' cellpadding='0' height='100%'><tr><td align='center'><img src='../scripts/loading.gif' width='126' height='22' /></td></tr></table>";
		};

		window.document.body.style.cursor = "wait";
		if(req) {
			req.onreadystatechange = function(){
				var resultado = "";
				var objRetorno = "";
				var contadorAjax = 0;
				var qtditens;
				var contArr;
				var controleGrupo;
				if (req.readyState == 4) {
					if (req.status == 200) {
						resultado = req.responseText;
					} else {
						resultado = "erro";
					};
					if(resultado=="erro"){
						alert("Problemas ao determinar a saída dos dados, favor contatar o suporte.");
					}else{
						var objRetorno = document.getElementById(txtObj);
						if(typeof(objRetorno)!="object") return false;

						if(parseInt(bitCombo)==1){	// Se for combo
							eval(resultado);
							// Zera tudo as opções
							for(contadorAjax=objRetorno.length-1;contadorAjax>=0;contadorAjax--) {
								objRetorno.options[contadorAjax]=null;
							};
							// Zera tudo os grupos
							var optgroups = objRetorno.childNodes;
							for(contadorAjax=optgroups.length-1; contadorAjax>=0; contadorAjax--){
								objRetorno.removeChild(optgroups[contadorAjax]);
							};
							// Carrega os dados
							qtditens = arrRegistros.length;
							contArr = 0;
							controleGrupo = '0';
							for(contadorAjax=0;contadorAjax<(qtditens);contadorAjax++){
								if(controleGrupo!=arrRegistros[contadorAjax][2] && trim(arrRegistros[contadorAjax][3])!=""){
									var optgroup = document.createElement('optgroup');
									optgroup.label = trim(arrRegistros[contadorAjax][3]);
									objRetorno.appendChild(optgroup);
									controleGrupo = arrRegistros[contadorAjax][2];
								};
								objRetorno.options[contArr] = new Option(arrRegistros[contadorAjax][1],arrRegistros[contadorAjax][0],false);
								if(txtValSelected==arrRegistros[contadorAjax][0]){
									objRetorno.options[contArr].selected = true;
								};
								contArr++;
							};
						}else{ // if(parseInt(this.setCombo)==1){	// Se NÃO for combo
							objRetorno.innerHTML = resultado;
						};
	
						if(txtFunction!=""){ // Caso seja para executar alguma função no final do processamento
							eval(txtFunction);
						};
					};
				};
				window.document.body.style.cursor = "default";
			};
	
			req.open(txtMetod, txtHost, true);
			req.setRequestHeader("Content-Type", "text/html; charset=windows-1252"); //"application/x-www-form-urlencoded");
//			req.setRequestHeader('Charset','windows-1252');
//			req.setRequestHeader("charset","ISO-8859-1");
			req.setRequestHeader("CharSet","windows-1252");
			req.setRequestHeader("Encoding","windows-1252");
			req.setRequestHeader("Cache-Control", "no-cache");
			req.setRequestHeader("Pragma", "no-cache");
			req.send(null);
			//request.open("POST", file,true);
			//request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		};
	};
	window.document.body.style.cursor = "default";
};
