document.oncontextmenu	= menuoff;
document.onkeydown		= ver_ultatz;

//****************************************************************************//
//Habilita criticas para timeout.										      //
//****************************************************************************//
	
	//window.attachEvent("onload",timer);
	function timer()
	{
	  	var objtimer  = document.createElement("iframe");
		objtimer.name = "ifrtimer";
		objtimer.id   = "ifrtimer";
		objtimer.style.display = "none";
		objtimer.style.border  = "#000000 1px solid";
		objtimer.style.height  = "18px";
		objtimer.style.width   = "40px";
		objtimer.frameBorder   = 0;
		objtimer.scrolling     = "no";
		document.body.appendChild(objtimer);
		ifrtimer.document.location.replace("../telas/timer.asp");
	}

//****************************************************************************//
// Desabilita o menu do botão direito nas páginas que utilizam o Gublib.js.   //
//****************************************************************************//

	function menuoff()
	{
		event.returnValue = false;
	}

//****************************************************************************//
// Habilita funções de mascara.											      //
//****************************************************************************//

	window.attachEvent("onload",loadhtc);

	function loadhtc()
	{
		var inputs   = document.all.tags("input");
		var decimais = 0;
		if (inputs.length > 0)
		{
			for (i=0;i<inputs.length;i++)
			{
				if (inputs(i).type == "text" || inputs(i).type == "password")
				{
					if (inputs(i).tipo.toUpperCase() == "N")
					{
						inputs(i).style.textAlign = "right";
						if ((trim(inputs(i).value) == ""))
						{
							var valor = 0;
							if (inputs(i).mascara.indexOf(".") >= 0)
							{
								decimais = inputs(i).mascara.substr(inputs(i).mascara.indexOf(".") + 1,inputs(i).mascara.length - i);
								decimais = decimais.length;
								inputs(i).value = valor.toFixed(decimais);
							}
							else inputs(i).value = valor;
						}
					}
					else
					{
						if ((inputs(i).tipo == "D" || inputs(i).tipo == "T") && inputs(i).value != "")
						{
							var data = formatdatetime(inputs(i).value,inputs(i).mascara);
							if (data != inputs(i).value) inputs(i).value = data;
						}
					}
					inputs(i).onfocus = addhtc;
				}
			}
		}
	}	

	function addhtc()
	{
		this.addBehavior("../htc/input.htc");
	}
	
//****************************************************************************//
// Cria matriz com todos os objetos dos formulários da página. Cada linha é um//
// objeto com 2 campos o primeiro sendo o tabindex e o segundo o id do mesmo. //
//****************************************************************************//
	
	function lista_objetos()
	{
		linhas = 0;
		for (i=0;i<document.forms.length;i++)
		{
			var inputs     = document.forms(i).tags("input");
			var textareas  = document.forms(i).tags("textarea");
			var linhas     = linhas + inputs.length + textareas.length;
		}
		
		var objetos    = new Array(linhas);
		for (i=0;i < linhas;i++)
		{
			objetos[i] = new Array(2);
		}

		pos = 0;
		for (i=0;i<document.forms.length;i++)
		{
			var inputs     = document.forms(i).tags("input");
			var textareas  = document.forms(i).tags("textarea");
			for (j=0;j < inputs.length;j++)
			{
				objetos[pos+j][0] = inputs(j).tabIndex;
				objetos[pos+j][1] = inputs(j).id;
			}
			pos = pos + inputs.length;
			for (j=0;j < textareas.length;j++)
			{
				objetos[pos+j][0] = inputs(j).tabIndex;
				objetos[pos+j][1] = inputs(j).id;
			}
			pos = pos + textareas.length;
		}
		return objetos;
	}

//****************************************************************************//
// Desabilita campos input-text se perder as facilidades de acesso ao objeto. //
//****************************************************************************//

function desabilita(objeto,valor)
{
	if (valor == 1)
	{
		if (objeto.type == "checkbox")
		{
			objeto.onclick = event_cancel;
		}
		else
		{
			objeto.readOnly = true;
			objeto.style.color   = "gray";
		}
	}
	else
	{
		if (objeto.type == "checkbox") objeto.onclick = "";
		else
		{
			objeto.readOnly = false;
			objeto.style.color = "";
		}
	}
}

function event_cancel()
{
	event.returnValue = false;
}

//***************************************************************************//
// Função obrigatória no método iniciliaza(JScript) das páginas .ASP para    //
// controle multiempresa.                                                    //
//***************************************************************************//

	function init_multiem(pb_nivel,pb_multiem,cd_empresa,nm_empresa)
	{
		var obj_cd_emp  = document.forms(0).item("txtcd_empresa");
		
		if ((pb_nivel == 2) || (pb_nivel == 3) || (pb_nivel == 4))
		{
			desabilita(obj_cd_emp,1);
		}
		else
		{
			desabilita(obj_cd_emp,0);
		}

		obj_cd_emp.value    = cd_empresa;
		spnnm_emp.innerText = nm_empresa;

		if (pb_multiem == true) tbempresa.style.display = "block";
		else tbempresa.style.display = "none";
	}
 
//***************************************************************************//
// Função obrigatória no método iniciliaza(JScript) das páginas .ASP de      //
// relatório para controle filial.											 //
//***************************************************************************//

	function init_relfil(pb_nivel,cd_filial)
	{
		var obj_filial_ini  = document.forms(0).item("txtfilial_ini");
		var obj_filial_fim  = document.forms(0).item("txtfilial_fim");

		if  ((pb_nivel == 1) || (pb_nivel == 2))
		{
			desabilita(obj_filial_ini,0);
			desabilita(obj_filial_fim,0);
		}
		else
		{
			obj_filial_ini.value = cd_filial;
			obj_filial_fim.value = cd_filial;
			desabilita(obj_filial_ini,1);
			desabilita(obj_filial_fim,1);
		}
	}
	
//***************************************************************************//
// Função obrigatória no método iniciliaza(JScript) das páginas .ASP de      //
// relatório para controle multiempresa e filial.                            //
//***************************************************************************//

	function init_relempfil(pb_nivel,pb_multiem,cd_empresa,cd_filial)
	{
		var obj_filial_ini  = document.forms(0).item("txtfilial_ini");
		var obj_filial_fim  = document.forms(0).item("txtfilial_fim");
		var obj_cd_emp_ini  = document.forms(0).item("txtcd_emp_ini");
		var obj_cd_emp_fim  = document.forms(0).item("txtcd_emp_fim");
	
		if  ((pb_nivel == 1) || (pb_nivel == 2))
		{
			desabilita(obj_filial_ini,0);
			desabilita(obj_filial_fim,0);
		}
		else
		{
			obj_filial_ini.value = cd_filial;
			obj_filial_fim.value = cd_filial;
			desabilita(obj_filial_ini,1);
			desabilita(obj_filial_fim,1);
		}
		
		if (pb_multiem == true)
		{
			if (pb_nivel == 1)
			{
					desabilita(obj_cd_emp_ini,0);
					desabilita(obj_cd_emp_fim,0);
			}
			else
			{
					obj_cd_emp_ini.value = cd_empresa;
					obj_cd_emp_fim.value = cd_empresa;
					desabilita(obj_cd_emp_ini,1);
					desabilita(obj_cd_emp_fim,1);
			}
			tbempresa.style.display = "block";
		}
		else
		{
			obj_cd_emp_ini.value	= cd_empresa;
			obj_cd_emp_fim.value	= cd_empresa;
			tbempresa.style.display = "none";
		}
	}	
	
//***************************************************************************//
// Função obrigatória no método iniciliaza(JScript) das páginas .ASP de      //
// relatório para controle para apresentação da empresa						 //
//***************************************************************************//

	function init_relemp(pb_nivel,pb_multiem,cd_empresa)
	{
		var obj_empresa = document.forms(0).item("txtcd_empresa");
		//*************
		if (pb_multiem == true)
		{
			if (pb_nivel == 1)
			{
				desabilita(obj_empresa,0);
			}
			else
			{
				obj_empresa.value = cd_empresa;
				desabilita(obj_empresa,1);
			}
			tbempresa.style.display = "block";
		}
		else
		{
			obj_empresa.value	= cd_empresa;
			tbempresa.style.display = "none";
		}
	}

//***************************************************************************//
// Função obrigatória no método iniciliaza(JScript) das páginas .ASP de      //
// relatório para controle multiempresa e filial.                            //
//***************************************************************************//

	function init_relemp(pb_nivel,pb_multiem,cd_empresa)
	{
		var obj_cd_emp_ini  = document.forms(0).item("txtcd_emp_ini");
		var obj_cd_emp_fim  = document.forms(0).item("txtcd_emp_fim");
	
		if (pb_multiem == true)
		{
			if (pb_nivel == 1)
			{
					desabilita(obj_cd_emp_ini,0);
					desabilita(obj_cd_emp_fim,0);
			}
			else
			{
					obj_cd_emp_ini.value = cd_empresa;
					obj_cd_emp_fim.value = cd_empresa;
					desabilita(obj_cd_emp_ini,1);
					desabilita(obj_cd_emp_fim,1);
			}
			tbempresa.style.display = "block";
		}

		else
		{
			obj_cd_emp_ini.value	= cd_empresa;
			obj_cd_emp_fim.value	= cd_empresa;
			tbempresa.style.display = "none";
		}
	}

//***************************************************************************//
// Função utilizada para aplicar a segurança no campo filial.                //
//***************************************************************************//

	function init_filial(pb_nivel,cd_filial,nm_filial)
	{
		
		if (document.forms.length > 0) var obj_cd_fil  = document.forms(0).item("txtcd_filial");
		else var obj_cd_fil  = document.all.item("txtcd_filial");

		if (pb_nivel > 2) desabilita(obj_cd_fil,1);
		else desabilita(obj_cd_fil,0);
		
		obj_cd_fil.value       = cd_filial;
		spnnm_filial.innerText = nm_filial;
	}

//*************************************************************************//
// Função obrigatória no método Validpk(JScript) das páginas .ASP para     //
// controle multiempresa, testa se o campo cd_empresa está vazio.          //
//*************************************************************************//

	function multiem(frm)
	{
		if (arguments.length == 0) var obj_emp = document.forms(0).item("txtcd_empresa");
		else  var obj_emp = frm.item("txtcd_empresa");
		if (validaembranco(obj_emp) == false)
		{
			alert("\nO Campo Empresa deve ser preenchido.");
			return false;
		}
	}

//*************************************************************************//
// Função obrigatória no método Inicializa(JScript) das páginas .ASP para  //
// setar o foco no primeiro campo da tela, já preparado para multiempresa. //
//*************************************************************************//

	function foco(objeto,frm,win)
	{
		if (arguments.length <= 1)
		{
			var obj_emp = window.document.all("txtcd_empresa");
			var tag_emp = window.document.all("tbempresa");
		}
		else
		{
			var obj_emp = frm.txtcd_empresa;
			var tag_emp = win.document.all("tbempresa");
		}
		
		if ((obj_emp != null) && (tag_emp != null))
		{
			if ((obj_emp.readOnly != true) && (tag_emp.style.display == "block") && (obj_emp.value == "")) obj_emp.focus();
			else objeto.focus();
		}
		else
		{
			objeto.focus();
		}		
	}

//*************************************************************************//
// Função utilizada para mudança de pages no pageframe.                    //
//*************************************************************************//

	function pagefocu(par_pages,par_iframes,page,frm)
	{
		var pages   = par_pages.children;
		var iframes = par_iframes.children;
		var id_page = page.id;
	
		for (i=0; i < pages.length; i++)
		{
			if (pages(i).id == id_page) pages(i).className = "pageup";
			else if (pages(i).className != "pageblank") pages(i).className = "pagedown";
		}
		for (i=0; i < iframes.length; i++)
		{
			if (iframes(i).id == frm) iframes(i).style.zIndex = 1;
			else iframes(i).style.zIndex = 0;
		}
	}

//*************************************************************************//
// Função utilizada para mudança de pages no sidepageframe.                //
//*************************************************************************//

	function sidepagefocu(par_pages,par_iframes,page,frm)
	{
		var pages   = par_pages.cells.tags("td");
		var iframes = par_iframes.children;
		var id_page = page.id;
		for (i=0; i < pages.length; i++)
		{
			if (pages(i).id == id_page) pages(i).className = "sidepagedown";
			else if (pages(i).className != "sidepagecorpo") pages(i).className = "sidepageup";
		}
		for (i=0; i < iframes.length; i++)
		{
			if (iframes(i).id == frm) iframes(i).style.zIndex = 1;
			else iframes(i).style.zIndex = 0;
		}
	}

//*************************************************************************//
// Função utilizada para verificar se o campo está preenchido.             //
//*************************************************************************//

	function validaembranco(objeto)
	{
		var valor = objeto.value;
		if (trim(valor) == "")
		{
			objeto.value = trim(valor);
			objeto.focus();
			return false;
		}
		else 
		{
			if (objeto.tipo == "N")
			{
				if (trim(valor) == "0")
				{
					objeto.value = trim(valor);
					//foco(objeto);
					objeto.focus();
					return false;
				}
			}
			else return true;
		}
	}

//*************************************************************************//
// Função utilizada para verificar data. Tipo = 0-Date | 1-DateTime        //
//*************************************************************************//

	function isDate(val,tipo)
	{
		var bar1 = parseInt(val.indexOf("/"));
		var bar2 = parseInt(val.indexOf("/",bar1 + 1));
		var tam  = parseInt(val.length);
		var dia  = parseInt(val.substr(0,bar1),10);
		var mes  = parseInt(val.substr(bar1+1,bar2 - bar1 - 1),10);
		var ano  = parseInt(val.substr(bar2+1,tam - bar2 - 1),10);
		
		if	(ano < 1920)
		{
			return false;
		}
	
		if (ano < 1900) ano += 2000;
		var bisexto = ( (ano == ( parseInt(ano / 4) * 4 ) ) && !(ano == (parseInt(ano/100) * 100)));
		if (!((mes >= 1) && (mes <= 12))) return false;
		if ((mes == 2) && (bisexto)) qtde_dias = 29;
		if ((mes == 2) && !(bisexto)) qtde_dias = 28;
		if ((mes == 1) || (mes == 3) || (mes == 5) || (mes == 7) || (mes == 8) || (mes == 10) || (mes == 12)) qtde_dias = 31;
		if ((mes == 4) || (mes == 6) || (mes == 9) || (mes == 11)) qtde_dias = 30;
		if (dia > qtde_dias) return false;
		
		if (tipo == 1)
		{
			pontos1 = val.indexOf(":");
			pontos2 = val.lastIndexOf(":");
			
			if (pontos1 < 0) return false;
			else
			{
				hora   = parseInt(val.substr(pontos1 - 2,2),10);
				minuto = parseInt(val.substr(pontos1 + 1,2),10);
				if (pontos1 != pontos2)
				{
					segundo =  parseInt(val.substr(pontos2 + 1,2),10);
					if (hora > 23 || minuto > 59 || segundo > 59) return false;
				}
				else
				{
					if (hora > 23 || minuto > 59) return false;
				}
			} 
		}
		return true;
	}

//*************************************************************************//
// Função utilizada para verificar horas. Tipo = 0-Hora | 1-Tempo          //
//*************************************************************************//

	function isHour(valor,tipo)
	{
		pontos1 = valor.indexOf(":");
		pontos2 = valor.lastIndexOf(":");
			
		if (pontos1 < 0) return false;
		else
		{
			hora   = parseInt(valor.substr(0,pontos1),10);
					
			if (pontos1 != pontos2)
			{
				minuto  = parseInt(valor.substr(pontos1 + 1,pontos2 - (pontos1 + 1)),10);
				segundo = parseInt(valor.substr(pontos2 + 1,valor.length - (pontos2 + 1)),10);
				
				if (tipo == 0)
				{
					if (hora > 23 || minuto > 59 || segundo > 59) return false;
				}
				else if (minuto > 59 || segundo > 59) return false;
			}
			else
			{
				minuto = parseInt(valor.substr(pontos1 + 1,valor.length - (pontos1 + 1)),10);
				if (tipo == 0)
				{
					if (hora > 23 || minuto > 59) return false;
				}
				else if (minuto > 59) return false;
			}
		}
		return true;
	}

//*************************************************************************//
// Função utilizada para formatar data de acordo com a mascara passada no  //
// parametro                                                               //
//*************************************************************************//

	function formatdate(valor)
	{
		if (isDate(valor))
		{
			var data    = ""
			var dia     = ""
			var mes     = ""
			var ano     = ""
			var barra1  = valor.indexOf("/");
			var barra2  = valor.lastIndexOf("/");
			var dia     = valor.substr(0,barra1);
			var mes     = valor.substr(barra1 + 1,barra2 - (barra1 + 1));
			var ano = valor.substr(barra2 + 1,4);
			
			if (dia.length == 1) dia = "0" + dia;
			if (mes.length == 1) mes = "0" + mes;
			
			data = dia + "/" + mes + "/" + ano
			return data;
		}
		else return "";
	}

//*************************************************************************//
// Função utilizada para formatar hora de acordo com a mascara passada no  //
// parametro                                                               //
//*************************************************************************//

	function formattime(valor,mascara,tipo)
	{
		var hora     = "";
		var minuto   = "";
		var segundo  = "";
		
		var ponto1   = valor.indexOf(":");
		var ponto2   = valor.lastIndexOf(":");
		
		var hor_masc = mascara.substr(0,mascara.indexOf(":"));
		if (mascara.indexOf(":") != mascara.lastIndexOf(":"))
		{
			var min_masc = mascara.substr(mascara.indexOf(":") + 1,mascara.lastIndexOf(":") - (mascara.indexOf(":") + 1));
			var seg_masc = mascara.substr(mascara.lastIndexOf(":") + 1,(mascara.length - 1) - mascara.lastIndexOf(":"));
		}
		else
		{
			var min_masc = mascara.substr(mascara.indexOf(":") + 1,(mascara.length - 1) - mascara.indexOf(":"));
			var seg_masc = ""
		}

		if (ponto1 >= 0 || arguments.length == 3)
		{
			
			if (ponto1 >= 0)
			{
				hora    = valor.substr(0,ponto1);
				
				if (ponto1 != ponto2)
				{
					minuto = valor.substr(hora.length + 1,ponto2 - (ponto1 + 1));
					segundo = valor.substr(ponto2 + 1,seg_masc.length);
				}
				else
				{
					minuto = valor.substr(hora.length +	1,min_masc.length);
					segundo = "";
				}

				hora   = padl(hora,hor_masc.length,"0");
				minuto = padl(minuto,min_masc.length,"0");
		
				if (segundo != "") segundo = padl(segundo,seg_masc.length,"0");
				else if (seg_masc != "") segundo = padl(segundo,seg_masc.length,"0");
				
				if (segundo != "") return hora + ":" + minuto + ":" + segundo;
				else               return hora + ":" + minuto;
			}
			else
			{
				hora = padl(valor,hor_masc.length,"0");
				if (seg_masc != "") return hora + ":00:00";
				else                return hora + ":00";				
			}
		}
		else
		{	
			if (valor.length < seg_masc.length && seg_masc.length > 0)
			{
				hora    = padl(hora,hor_masc.length,"0");
				minuto  = padl(minuto,min_masc.length,"0");
				segundo = padl(valor,seg_masc.length,"0");
			}
			else
			{
				if (valor.length == seg_masc.length && seg_masc.length > 0)
				{
					hora    = padl(hora,hor_masc.length,"0");
					minuto  = padl(minuto,min_masc.length,"0");			
					segundo = valor;
				}
				else
				{
					if (valor.length < (min_masc.length + seg_masc.length))
					{
						hora    = padl(hora,hor_masc.length,"0");
						minuto  = valor.substr(0,(min_masc.length + seg_masc.length) - valor.length);
						if (seg_masc.length > 0) segundo = valor.substr(minuto.length,seg_masc.length);
						minuto  = padl(minuto,min_masc.length,"0");
					}
					else
					{
						if (valor.length == (min_masc.length + seg_masc.length))
						{
							hora    = padl(hora,hor_masc.length,"0");
							minuto  = valor.substr(0,min_masc.length);
							if (seg_masc.length > 0) segundo = valor.substr(minuto.length,seg_masc.length);
						} 
						else
						{
							if (valor.length < (hor_masc.length + min_masc.length + seg_masc.length))
							{
								hora    = valor.substr(0,valor.length - (min_masc.length + seg_masc.length));
								minuto  = valor.substr(hora.length,min_masc.length);
								if (seg_masc.length > 0) segundo = valor.substr(minuto.length,seg_masc.length);
								hora    = padl(hora,hor_masc.length,"0");
							}
							else
							{
								if (valor.length == (hor_masc.length + min_masc.length + seg_masc.length))
								{
									hora    = valor.substr(0,hor_masc.length);
									minuto  = valor.substr(hora.length,min_masc.length);
									if (seg_masc.length > 0) segundo = valor.substr(minuto.length,seg_masc.length);
								}
							}
						}
					}
				}
			}			
			if (seg_masc.length > 0) segundo = ":" + segundo;
			return hora + ":" + minuto + segundo;
		}
	}

//*************************************************************************//
// Função utilizada para formatar data e hora de acordo com a mascara      //
// passada no parametro                                                    //
//*************************************************************************//

	function formatdatetime(valor,mascara)
	{
		var data = "";
		var hora = "";
		
		if (mascara.indexOf(" ") >= 0)
		{
			var masc_data = mascara.substr(0,mascara.indexOf(" ") + 1);
			var masc_hora = mascara.substr(mascara.indexOf(" ") + 1, (mascara.length - (mascara.indexOf(" ") + 1)));
			data          = valor.substr(0,masc_data.length);
			if (data.indexOf(" ") >= 0)
			{
				data = data.substr(0,data.indexOf(" "));
			}
			if (valor.indexOf(" ") >= 0) hora = valor.substr(valor.indexOf(" ") + 1, (valor.length - (valor.indexOf(" ") + 1)));
		}
		else
		{
			if (mascara.indexOf("/") >=0)
			{
				var masc_data = mascara.substr(0,mascara.length);
				var masc_hora = "";
				data          = valor.substr(0,valor.length);
				hora          = "";
			}
			else
			{
				if (mascara.indexOf(":") >=0)
				{
					var masc_data = "";
					var masc_hora = mascara.substr(0,mascara.length);
					data          = "";
					hora          = valor.substr(0,valor.length);
				}
			}
		}

		var data_hora = "";
		
		
		if (data != "") data_hora = formatdate(data,masc_data);
		if (hora != "") data_hora = data_hora + " " + formattime(hora,masc_hora,1);
		else
		{
			var re = /9/g;
			data_hora = data_hora + " " + masc_hora.replace(re,"0");
		}
		
		data_hora = trim(data_hora);
		if (data_hora.length == mascara.length) return data_hora;
		else return "";
	}

//*************************************************************************//
// Função utilizada para completar uma string, a esquerda, com um caracter //
// desejado.                                                               //
//*************************************************************************//

	function padl(valor,tam,caracter)
	{
		var diftam = tam - valor.length;
		var resultado = "";
		if (diftam > 0)
		{
			for(z=0;z<diftam;z++)
			{
				resultado = resultado + caracter;
			}
			
		}
		resultado = resultado + valor;
		return resultado;
	}

	function padr(valor,tam,caracter)
	{
		var diftam = tam - valor.length;
		var resultado = "";
		if (diftam > 0)
		{
			for(z=0;z<diftam;z++)
			{
				resultado = resultado + caracter;
			}
			
		}
		resultado = valor + resultado;
		return resultado;
	}

//*************************************************************************//
// Função utilizada para apagar o campo nome correspondente.               //
// A função deve ser utilizada no evento onBlur.                           //
//*************************************************************************//

	function limpanome(val_ini,val_fim,campo_limpa)
	{	
		if (val_ini != val_fim) document.all.item(campo_limpa).innerHTML = "";
	}
	

//*************************************************************************//
// A função para tirar espaços em branco.							       //
//*************************************************************************//
	
	function trim(valor)
	{
		var str_valor = new String(valor);
	    return str_valor.replace(/(^\s*)|(\s*$)/g, "");
	}


//*************************************************************************//
// A função para habilitar e desabilitar todos os campos da tela.           //
//*************************************************************************//

	function somenteleitura(valor)
	{
		var inputs     = document.all.tags("input");
		var selects    = document.all.tags("select");
			
		for (j=0;j < inputs.length;j++)
		{
			if (valor == 1)
			{
				inputs(j).readOnly		= true;
			}
			else 
			{
				inputs(j).readOnly		= false;
			}			
		}
	}
	
	function disabled_all()
	{
		var inputs     = document.all.tags("input");
		var selects     = document.all.tags("select");
			
		for (j=0;j < inputs.length;j++)
		{
			inputs(j).disabled	= true;
		}
		for (j=0;j < selects.length;j++)
		{
			selects(j).disabled	= true;
		}

	}

	function enabled_all()
	{
		var inputs     = document.all.tags("input");
		var selects     = document.all.tags("select");
			
		for (j=0;j < inputs.length;j++)
		{
			inputs(j).disabled	= false;
		}

		for (j=0;j < selects.length;j++)
		{
			selects(j).disabled	= false;
		}

	}

//*********************************************************************************//
// Função utilizada para verificar se o valor está vazio.						   //
//=================================================================================//
// Valor		: Valor do tipo numerico										   //
//*********************************************************************************//

	function isblank(valor)
	{
		if (trim(valor) == "")
		{
			return 0;
		}
		else
		{
			if (trim(valor) == "0")
			{
				return 0;
			}
			else
			{
				return valor;
			}
		}
	}
	
//*********************************************************************************//
// Função para arrastar um div pela tela.                						   //
//*********************************************************************************//
	
function divmove(objeto)
{
	var obj = objeto;
	obj.style.left	= event.clientX;
	obj.style.top	= event.clientY;
}

//*********************************************************************************//
// Função para realiazar drag-and-drop de objetos                				   //
//=================================================================================//
// obj_ori		: Objeto a ser arrastado										   //
// obj_des      : Objeto que serve como encaixe para a imagem arrastada     	   //
// func1  		: Função executada quando os objetos se encaixam                   //
// func2  		: Função executada quando os objetos se desencaixam                //
//*********************************************************************************//

var public_draganddrop = 0
	
function drag_and_drop(obj_ori,obj_des,func1,func2)
{
	return false;
	
	obj_ori.style.posTop     = obj_ori.offsetTop;
	obj_ori.style.posLeft    = obj_ori.offsetLeft;
	obj_ori.style.position   = "absolute";
	var x = event.offsetX
	var y = event.offsetY
	document.onmousemove = function()
	{
		if (event.button == 1)
		{
			obj_ori.style.posLeft = event.clientX - x;
			obj_ori.style.posTop  = event.clientY - y;
		}
		else event.returnValue = false;
	};
		
	document.onmouseup = function()
	{
		if (obj_des != undefined)
		{
			var obj_des_iniv = obj_des.offsetLeft;
			var obj_des_fimv = obj_des.offsetLeft + obj_des.offsetWidth;
			var obj_ori_iniv = obj_ori.offsetLeft;
			var obj_ori_fimv = obj_ori.offsetLeft + obj_ori.offsetWidth;

			var obj_des_inih = obj_des.offsetTop;
			var obj_des_fimh = obj_des.offsetTop + obj_des.offsetHeight;
			var obj_ori_inih = obj_ori.offsetTop;
			var obj_ori_fimh = obj_ori.offsetTop + obj_ori.offsetHeight;
				
			var flagv = 0
			var flagh = 0
				
			if (obj_ori_iniv > obj_des_iniv && obj_ori_iniv < obj_des_fimv) flagv = 1;
			if (obj_ori_fimv > obj_des_iniv && obj_ori_fimv < obj_des_fimv) flagv = 1;
			if (obj_ori_iniv <= obj_des_iniv && obj_ori_fimv >= obj_des_fimv) flagv = 1;

			if (obj_ori_inih > obj_des_inih && obj_ori_inih < obj_des_fimh) flagh = 1;
			if (obj_ori_fimh > obj_des_inih && obj_ori_fimh < obj_des_fimh) flagh = 1;
			if (obj_ori_inih <= obj_des_inih && obj_ori_fimh >= obj_des_fimh) flagh = 1;
				
			if (flagv == 1 && flagh == 1)
			{
				var obj_ori_centerh = obj_ori.offsetWidth  / 2;
				var obj_ori_centerv = obj_ori.offsetHeight / 2;

				var obj_des_centerh = obj_des.offsetLeft + (obj_des.offsetWidth  / 2);
				var obj_des_centerv = obj_des.offsetTop  + (obj_des.offsetHeight / 2);
					
				obj_ori.style.left = obj_des_centerh - obj_ori_centerh;
				obj_ori.style.top  = obj_des_centerv - obj_ori_centerv;
					
				eval(func1);
				public_draganddrop = 1;
			}
			else
			{
				if (public_draganddrop == 1)
				{
					public_draganddrop = 0;
					eval(func2);
				}
			}
		}
		document.onmousemove = function()
		{
			document.onmouseup = function()
			{
				event.returnValue = false;
			};
			event.returnValue = false;
		};
				
	};
}

//*********************************************************************************//
// Função para mudar a ordem dos divs na tela.           						   //
//*********************************************************************************//

function divfocu(objeto)
{
	div1.style.zIndex = 0;
	div2.style.zIndex = 0;
	div3.style.zIndex = 0;
	var obj = objeto;
	obj.style.zIndex = 1;
}

//*********************************************************************************//
// Função utilizada para ativar a lupa principal da tela.						   //
//=================================================================================//
// Titulo		: Titulo da lupa.       										   //
// url   		: Url dos filtros da lupa.      								   //
//*********************************************************************************//

function ativalupa(titulo,url)
{
	var gridtop,gridleft
	var objifrcampos = document.all.item("ifrcampos");
	
	divlupa.style.width       = "";
	divlupa.style.height      = "";
	objifrcampos.style.height = "";
	
	divlupa.className        = "lupa";
	ifrcampos.className      = "filtro";
	spnlupa.innerText        = titulo;
	divlupa.style.visibility = "visible";
	
	gridtop  = (document.body.offsetHeight / 2) - (divlupa.offsetHeight / 2)
	divlupa.style.top = gridtop;
	gridleft = (document.body.offsetWidth / 2) - (divlupa.offsetWidth / 2)
	divlupa.style.left = gridleft;

	ifrcampos.document.location.replace(url);
	ifrgrid.document.location.replace("../lupas/gridvazia.xml");
}

//*********************************************************************************//
// Função utilizada para listar os itens da lupa.        						   //
//=================================================================================//

function lupalistar()
{
	var frmfilho
	frmfilho = ifrcampos.document.forms.item(0);
/*	var	verHidPagina = ifrcampos.document.all.item("hidpagina_atual");
	if	(verHidPagina != null)
	{
		var	verHidPagina = ifrcampos.document.all.item("hidpagina_final");
		frmfilho.hidpagina_atual.value	= 1;
		ifrnavegador.document.location.replace("../lupas/gridnavegador.asp?pagina_atual=1&pagina_final="+verHidPagina.value);
	}
	else
	{
		ifrnavegador.document.location.replace("../lupas/gridnavegador.asp");
	}*/
	frmfilho.submit();
}

//*********************************************************************************//
// Função utilizada para Avançar os registros no Grid							   //
//=================================================================================//

function lupavolta(valPaginaIni, valPaginaFim)
{
	var frmfilho = window.parent.ifrcampos.document.forms.item(0);
	frmfilho.hidpagina_atual.value	= valPaginaIni;
	frmfilho.hidpagina_final.value	= valPaginaFim;
	window.parent.ifrnavegador.document.location.replace("../lupas/gridnavegador.asp?pagina_atual="+valPaginaIni+"&pagina_final="+valPaginaFim);
	if (frmfilho.action.indexOf("?") >= 0)
	{
		frmfilho.action = frmfilho.action + "&pagina_atual=" + valPaginaIni + "&pagina_final=" + valPaginaFim;
	}
	else
	{
		frmfilho.action = frmfilho.action + "?pagina_atual=" + valPaginaIni + "&pagina_final=" + valPaginaFim;
	}
	frmfilho.submit();
}

function lupaavanca(valPaginaIni, valPaginaFim)
{
	var frmfilho = window.parent.ifrcampos.document.forms.item(0);

	frmfilho.hidpagina_atual.value	= valPaginaIni;
	frmfilho.hidpagina_final.value	= valPaginaFim;
	window.parent.ifrnavegador.document.location.replace("../lupas/gridnavegador.asp?pagina_atual="+valPaginaIni+"&pagina_final="+valPaginaFim);
	if (frmfilho.action.indexOf("?") >= 0)
	{
		frmfilho.action = frmfilho.action + "&pagina_atual=" + valPaginaIni + "&pagina_final=" + valPaginaFim;
	}
	else
	{
		frmfilho.action = frmfilho.action + "?pagina_atual=" + valPaginaIni + "&pagina_final=" + valPaginaFim;
	}
	frmfilho.submit();
}

//*********************************************************************************//
// Função utilizada para sair da lupa.                   						   //
//=================================================================================//

function lupasair()
{
	if (document.forms(0).item("hidpath_local").value != "")
	{
		var bl_lupasec = document.forms(0).item("hidbl_lupasec").value;
		if (bl_lupasec == "false")
		{
			document.forms(0).item("hidstatusreg").value = 0;
			document.forms(0).item("hidrecnum").value    = window.ifrgrid.document.all.item("hid_recnum").value;
			document.forms(0).submit();
		}
		else
		{
			document.forms(0).item("hidrecnum").value = window.ifrgrid.document.all.item("hid_recnum").value;
			var campoorigem = document.forms(0).item("hidcampoorigem").value;
			var campo       = document.forms(0).item("hidcampo").value;
			document.forms(0).item("hidpath_del").value = document.forms(0).item("hidpath_local").value;
			document.forms(0).item("hidpath_local").value = "";
			if (campoorigem.indexOf(".") < 0)
			{
				document.forms(0).item(campoorigem).value = window.ifrgrid.document.all.item(campo).value;
				document.forms(0).item(campoorigem).focus();
			}
			else
			{
				eval(campoorigem).value = window.ifrgrid.document.all.item(campo).value;
				eval(campoorigem).focus();
			}

			if (document.forms(0).item("hidcamposecund").value != "")
			{
				var camposecund = document.forms(0).item("hidcamposecund").value;
				var camposec    = document.forms(0).item("hidcamposec").value;
				document.forms(0).item("hidpath_del").value = document.forms(0).item("hidpath_local").value;
				document.forms(0).item("hidpath_local").value = "";
				if (camposecund.indexOf(".") < 0)
				{
					document.forms(0).item(camposecund).value = window.ifrgrid.document.all.item(camposec).value;
					document.forms(0).item(camposecund).focus();
				}
				else
				{
					eval(camposecund).value = window.ifrgrid.document.all.item(camposec).value;
					eval(camposecund).focus();
				}				
			}

			if (document.forms(0).item("hidcampoterc").value != "")
			{
				var campoterc = document.forms(0).item("hidcampoterc").value;
				var campoter    = document.forms(0).item("hidcampoter").value;
				document.forms(0).item("hidpath_del").value = document.forms(0).item("hidpath_local").value;
				document.forms(0).item("hidpath_local").value = "";
				if (campoterc.indexOf(".") < 0)
				{
					document.forms(0).item(campoterc).value = window.ifrgrid.document.all.item(campoter).value;
					document.forms(0).item(campoterc).focus();
				}
				else
				{
					eval(campoterc).value = window.ifrgrid.document.all.item(campoter).value;
					eval(campoterc).focus();
				}				
			}
			divlupa.style.visibility = "hidden";
		}
	}
	else divlupa.style.visibility = "hidden";
	document.forms(0).item("hidbl_lupasec").value = "false";
}

//*********************************************************************************//
// Função utilizada para ativar a lupa de seleção principal da tela.			   //
//=================================================================================//
// Titulo		: Titulo da lupa.       										   //
// url   		: Url dos filtros da lupa.      								   //
//*********************************************************************************//

function ativaslupa(titulo,url)
{
	var gridtop,gridleft
	var objifrcampos = document.all.item("ifrcampos");
	
	divslupa.style.width       = "";
	divslupa.style.height      = "";
	objifrscampos.style.height = "";
	
	divslupa.className         = "lupa";
	ifrscampos.className       = "filtro";
	spnslupa.innerText         = titulo;
	divslupa.style.visibility  = "visible";
	
	gridtop  = (document.body.offsetHeight / 2) - (divslupa.offsetHeight / 2)
	divslupa.style.top = gridtop;
	gridleft = (document.body.offsetWidth / 2) - (divslupa.offsetWidth / 2)
	divslupa.style.left = gridleft;
	ifrscampos.document.location.replace(url);
	ifrsgrid.document.location.replace("../lupas/gridvazia.xml");
}

//*********************************************************************************//
// Função utilizada para listar os itens da lupa de seleção.    				   //
//=================================================================================//

function lupaslistar()
{
	var campoorigem = window.document.forms(0).item("hidcampoorigem");
	var campo		= eval("window.document.forms(0).item('" + campoorigem.value + "')");
	campo.value		= "";

	var frmfilho
	frmfilho = ifrscampos.document.forms.item(0);
	frmfilho.submit();
}

//*********************************************************************************//
// Função utilizada para sair da lupa de seleção.          						   //
//=================================================================================//

function lupassair()
{
	var campoorigem = window.document.forms(0).item("hidcampoorigem");
	var campo		= eval("window.document.forms(0).item('" + campoorigem.value + "')");

	if (trim(campo.value) != "")
	{
		var campoinicial = window.document.forms(0).item("hidcampoinicial");
		var campoini     = eval("window.document.forms(0).item('" + campoinicial.value + "')");
		
		if (trim(campoini.value) != "")
		{
			campoini.value = 0;
			desabilita(campoini, 1);	//0 - Habilita   1 - Desabilita
		}

		var campofinal   = window.document.forms(0).item("hidcampofinal");
		var campofim     = eval("window.document.forms(0).item('" + campofinal.value + "')");
		
		if (trim(campofim.value) != "")
		{
			campofim.value = 0;
			desabilita(campofim, 1);	//0 - Habilita   1 - Desabilita
		}

	}
	else
	{
		var campoinicial = window.document.forms(0).item("hidcampoinicial");
		var campoini     = eval("window.document.forms(0).item('" + campoinicial.value + "')");
		desabilita(campoini, 0);	//0 - Habilita   1 - Desabilita

		var campofinal   = window.document.forms(0).item("hidcampofinal");
		var campofim     = eval("window.document.forms(0).item('" + campofinal.value + "')");
		desabilita(campofim, 0);	//0 - Habilita   1 - Desabilita
	}
	divslupa.style.visibility = "hidden";
}


//*********************************************************************************//
// Função utilizada para selecionar todos os itens do Grid.						   //
//=================================================================================//

function lupasselect()
{
	var	totCheck = 0;
	var Checks	 = window.frames("ifrsgrid").document.all.tags("input");
	
	for (i=0;i<Checks.length;i++)
	{
		alert(Checks.name);
		if	(Checks.type == "checkbox")
		{
			totCheck++;
		}
	
		//alert(totCheck);
		if (totCheck == 0)
		{
			alert("Nenhum item foi apresentado. Verifique.")
		}
		else
		{
			var campoorigem = window.document.forms(0).item("hidcampoorigem");
			var campo		= eval("window.document.forms(0).item('" + campoorigem.value + "')");
			campo.value		= ""

			for (i=0;i<Checks.length;i++)
			{
				alert(Checks.value);
				campo.value	= campo.value + "[" + Checks.value + "]";			
			}
			alert(campo.value);
		}
	}
}

//*********************************************************************************//
// Função utilizada para ativar a a tela de incosistencia de km         		   //
//=================================================================================//
// Critica	: Critica retornada pelo componente.								   //
// url   	: Url do xml contendo o registro da critica.					       //
//*********************************************************************************//

function critica_km(critica,url)
{
	var gridtop,gridleft
	
	divcrit_km.style.width      = "";
	divcrit_km.style.height     = "";
	divcrit_km.className        = "critkm";
	divcrit_km.style.visibility = "visible";
	spncrit_km.innerText        = critica;
	
	gridtop  = (document.body.offsetHeight / 2) - (divcrit_km.offsetHeight / 2)
	divcrit_km.style.top = gridtop;
	gridleft = (document.body.offsetWidth / 2) - (divcrit_km.offsetWidth / 2)
	divcrit_km.style.left = gridleft;
	ifrcrit_km.src = url;
	ifrcrit_km.document.location.replace(url);
}

//*********************************************************************************//
// Função utilizada para apresentar a informação do último usuário que alterou     //
//*********************************************************************************//

function ver_ultatz()
{
	if (window.event.keyCode == 120)
	{
		var Multiem = window.parent.parent.parent.frames("main").document.getElementById("hidpb_multiem");
		if (Multiem != null)
		{
			var Multiem	= window.parent.parent.parent.frames("main").hidpb_multiem.value;
			var Empresa	= window.parent.parent.parent.frames("main").hidcd_emp_info.value;
			var EmpDesc	= window.parent.parent.parent.frames("main").hidnm_emp_info.value;
			var Usuario	= window.parent.parent.parent.frames("main").hidcd_usu_info.value;
			var UsuDesc	= window.parent.parent.parent.frames("main").hidnm_usu_info.value;
			var DataUlt	= window.parent.parent.parent.frames("main").hiddh_ult_info.value;
		
			//***************
			if (Empresa != undefined)
			{
				if (Empresa != "")
				{
					var MsgUtlAtz = "";
					MsgUtlAtz = "Último usuário a realizar uma alteração nesse registro:\n";
					if (Multiem != "0")
					{
						MsgUtlAtz = MsgUtlAtz + "- Empresa: " + Empresa + " - " + EmpDesc + "\n";
					}
					MsgUtlAtz = MsgUtlAtz + "- Usuário: " + Usuario + " - " + UsuDesc + " em '" + DataUlt + "'";	
					alert(MsgUtlAtz);
				}
			}
		}
	}
}


//*********************************************************************************//
// Função utilizada para selecionar todos os itens do Grid.						   //
//=================================================================================//

function lupasselect()
{
	var	totCheck = 0;
	var Checks	 = window.frames("ifrsgrid").document.all.tags("input");
	
	for (i=0;i<Checks.length;i++)
	{
		alert(Checks.name);
		if	(Checks.type == "checkbox")
		{
			totCheck++;
		}
	
		//alert(totCheck);
		if (totCheck == 0)
		{
			alert("Nenhum item foi apresentado. Verifique.")
		}
		else
		{
			var campoorigem = window.document.forms(0).item("hidcampoorigem");
			var campo		= eval("window.document.forms(0).item('" + campoorigem.value + "')");
			campo.value		= ""

			for (i=0;i<Checks.length;i++)
			{
				alert(Checks.value);
				campo.value	= campo.value + "[" + Checks.value + "]";			
			}
			alert(campo.value);
		}
	}
}

//*********************************************************************************//
// Função utilizada para ativar a a tela de incosistencia de km         		   //
//=================================================================================//
// Critica	: Critica retornada pelo componente.								   //
// url   	: Url do xml contendo o registro da critica.					       //
//*********************************************************************************//

function critica_km(critica,url)
{
	var gridtop,gridleft
	
	divcrit_km.style.width      = "";
	divcrit_km.style.height     = "";
	divcrit_km.className        = "critkm";
	divcrit_km.style.visibility = "visible";
	spncrit_km.innerText        = critica;
	
	gridtop  = (document.body.offsetHeight / 2) - (divcrit_km.offsetHeight / 2)
	divcrit_km.style.top = gridtop;
	gridleft = (document.body.offsetWidth / 2) - (divcrit_km.offsetWidth / 2)
	divcrit_km.style.left = gridleft;
	ifrcrit_km.src = url;
	ifrcrit_km.document.location.replace(url);
}

//*********************************************************************************//
// Função utilizada para formatar valores numéricos							       //
//=================================================================================//
// valor	: Valor original, considerando que já vem com separador "."			   //  										   //
// numdec	: Números de decimais a serem apresentadas							   //
//*********************************************************************************//

function formatnumber(val, numdec)
{
	var valor	  = new String(val);	
	valor		  = padr(valor, 30, "0");
	var ponto	  = parseInt(valor.indexOf("."));
	var inteiro   = valor.substr(0, ponto);
	var decimais  = valor.substr(ponto,numdec+1);
	var valFinal  = padr(inteiro + decimais, numdec, "0");

	return valFinal;
	//**************
}
