Array.prototype.contains = function (element)
{
	for (var i = 0; i < this.length; i++)
	{
		if (this[i] == element)
		{
			return true;
		}
	}
	return false;
};


function qryHowOld(varAsOfDate, varBirthDate)
   {
   var dtAsOfDate;
   var dtBirth;
   var dtAnniversary;
   var intSpan;
   var intYears;
   var intMonths;
   var intWeeks;
   var intDays;
   var intHours;
   var intMinutes;
   var intSeconds;
   var strHowOld;

   // get born date
   dtBirth = new Date(varBirthDate);
   
   // get as of date
   dtAsOfDate = new Date(varAsOfDate);

   // if as of date is on or after born date
   if ( dtAsOfDate >= dtBirth )
      {

      // get time span between as of time and birth time
      intSpan = ( dtAsOfDate.getUTCHours() * 3600000 +
                  dtAsOfDate.getUTCMinutes() * 60000 +
                  dtAsOfDate.getUTCSeconds() * 1000    ) -
                ( dtBirth.getUTCHours() * 3600000 +
                  dtBirth.getUTCMinutes() * 60000 +
                  dtBirth.getUTCSeconds() * 1000       )

      // start at as of date and look backwards for anniversary 

      // if as of day (date) is after birth day (date) or
      //    as of day (date) is birth day (date) and
      //    as of time is on or after birth time
      if ( dtAsOfDate.getUTCDate() > dtBirth.getUTCDate() ||
           ( dtAsOfDate.getUTCDate() == dtBirth.getUTCDate() && intSpan >= 0 ) )
         {

         // most recent day (date) anniversary is in as of month
         dtAnniversary = 
            new Date( Date.UTC( dtAsOfDate.getUTCFullYear(),
                                dtAsOfDate.getUTCMonth(),
                                dtBirth.getUTCDate()) );

         } 
      else
         {
         // most recent day (date) anniversary is in month before as of month
         dtAnniversary = 
            new Date( Date.UTC( dtAsOfDate.getUTCFullYear(),
                                dtAsOfDate.getUTCMonth() - 1,
                                dtBirth.getUTCDate() ) );

         // get previous month
         intMonths = dtAsOfDate.getUTCMonth() - 1;
         if ( intMonths == -1 )
            intMonths = 11;

         // while month is not what it is supposed to be (it will be higher)
         while ( dtAnniversary.getUTCMonth() != intMonths )

            // move back one day
            dtAnniversary.setUTCDate( dtAnniversary.getUTCDate() - 1 );
         }
      // if anniversary month is on or after birth month
      if ( dtAnniversary.getUTCMonth() >= dtBirth.getUTCMonth() )
         {

         // months elapsed is anniversary month - birth month
         intMonths = dtAnniversary.getUTCMonth() - dtBirth.getUTCMonth();

         // years elapsed is anniversary year - birth year
         intYears = dtAnniversary.getUTCFullYear() - dtBirth.getUTCFullYear();

         }

      // if birth month is after anniversary month
      else
         {
         // years elapsed is year before anniversary year - birth year
         intYears = (dtAnniversary.getUTCFullYear() - 1) - dtBirth.getUTCFullYear();

         }
	  // create output string     
      if ( intYears > 0 )
         if ( intYears > 1 )
            strHowOld = intYears.toString();
         else
            strHowOld = intYears.toString();
      else
         strHowOld = '';

      }
   else
      strHowOld = 0; 
   return strHowOld;
   }  

/*
* parametros:
		campos -> Array -> será composto em pares, sendo o primeiro
						   o nome do campo e o segundo a mensagem!
		div -> String -> para qual div deverá ser carregada a proxima pagina
						 q vai ta num hidden chamado GoPag
		funcoes -> Array -> será composto por strings que são os nomes dos metodos já
							com os paramentros (tudo certo) que serão chamados depois
							de verificar se todos os campos estão preenchidos.
		frm -> Form -> é o form que está o formulário a ser revisado!
  retorno:
  		true -> se todos os campos do formulário estiverem preenchidos corretamente!
		false -> caso contrario
  Exemplo:
  		onsubmit="return validar_form(Array('Campo1', 'Mensagem1', 'Campo2', 'Mensagem2'), 'uma_div', Array('verifica_email(\'Email\')', 'verifica_uf(\'UF\')'), this);"
*/
function validar_form(campos, div, funcoes, frm)
{
	try
	{
		if(campos.length % 2 == 0)
		{
			for(var i = 0; i < campos.length; i+=2)
			{
				var obj = document.getElementById(campos[i]);
	
				if(obj.type == 'text' || obj.type == 'textarea' || obj.type == 'hidden' || obj.type == 'file')
					if(obj.value == null || obj.value == '')
						return aviso(obj, campos[i+1]);
	
				if(obj.type == 'checkbox')
					if(!obj.checked)
						return aviso(obj, campos[i+1]);
	
				if(obj.type == 'select-one')
					if(obj.selectedIndex == null || obj.selectedIndex == 0)
						return aviso(obj, campos[i+1]);
			}
			
			for(var i = 0; i < funcoes.length; i++)
			{
				var retorno = eval(funcoes[i]);
				if(retorno == false) return false;
				else continue;
			}
		}
		else
			alert('Ocorreu um erro inesperado. Contate a Fundação Conesul e informe o código de erro:\nCODIGO #1');
		
		if(frm.GoPag)
			enviaPost(frm.GoPag.value, div, gerar_paramentros(frm));
			
		return true;
	}
	catch(e)
	{
		alert('Exception: ' + e);
		return false;
	}
}

function verifica_data(campo)
{ 
	var str = document.getElementById(campo);
	if(str.value.lenght > 0)
	{
		dia = (str.value.substring(0,2)); 
		mes = (str.value.substring(3,5)); 
		ano = (str.value.substring(6,10)); 
	
		cons = true; 
		
		// verifica se foram digitados números
		if(isNaN(dia) || isNaN(mes) || isNaN(ano))
		{
			alert("Preencha a data somente com números."); 
			str.focus(); 
			return false;
		}
			
		// verifica o dia valido para cada mes 
		if((dia < 01)||(dia < 01 || dia > 30) && (mes == 04 || mes == 06 ||  mes == 09 || mes == 11 ) || dia > 31)
		{ 
			cons = false; 
		} 
	
		// verifica se o mes e valido 
		if(mes < 01 || mes > 12 )
		{ 
			cons = false; 
		} 
	
		// verifica se e ano bissexto 
		if(mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4))))
		{ 
			cons = false; 
		} 
		
		if(cons == false)
		{ 
			alert("A data inserida não é válida: " + str.value); 
			str.focus(); 
		} 
		
		return cons;
	}
	else return true;
}

function verifica_uf(campo)
{
	try
	{
		var estado = document.getElementById(campo);
		if(estado.value.length > 0)
		{
			var estados = new Array("AC", "AL", "AM", "AP", "BA", "CE", "DF", "ES", "GO", "MA", "MG", "MS", "MT", "PA", "PB", "PE", "PI", "PR", "RJ", "RN", "RO", "RR", "RS", "SC", "SE", "SP", "TO");
			
			if(estados.contains(estado.value.toUpperCase()) == false)
			{
				alert("O campo UF não é válido");
				estado.focus();
				return false;
			}
		}
		return true;
	}
	catch(e)
	{
		alert("ExceptionA: " + e);
		return false;
	}
}

function verificar_tamanho_palavra(nome, tamanho, obrigatorio, msg) {
	var campo = document.getElementById(nome);
	if(!obrigatorio && campo.value.length == 0) {
		return true;
	} else {
		if(campo.value.length >= tamanho)
			return true;
		else {
			return aviso(campo, msg);
		}
	}
}

function somente_caracteres_dv(campo)
{
	var letra = document.getElementById(campo);
	var validos  = "0123456789XPNxpn";
	var comp = "agência";
	if(campo.indexOf("Conta") != -1)
		comp = "conta"
	
	/*if(letra.value.length == 0) {
		alert('O campo do dígito verificador da '+comp+' está vazio.\n\nSe não possuir dígito verificador, então coloque a letra N');
		letra.focus();
		return false;
	}*/
	
	for(i = 0; i < letra.value.length; i++)
	{
		if(validos.indexOf(letra.value.substr(i,1)) == -1)
		{
			alert('Caracter inválido no dígito verificador da '+comp+'.\n\nSe não possuir dígito verificador, então coloque a letra N');
			letra.focus();
			return false;
		}
	}
	return true;
}

function verificar_infos_contrato() {
	var situacao = document.getElementById("SituacaoID");
	var banco = document.getElementById("BancoID");
	var agencia = document.getElementById("Agencia");
	var conta = document.getElementById("Conta");
	
	// inativando o contrato
	if(situacao.selectedIndex >= 2) {
		return true;
	} else {
		if(situacao.selectedIndex == 0) {
			return aviso(situacao, "Selecione uma situação");
		}
		
		if(banco.selectedIndex == 0) {
			return aviso(banco, "Selecione um banco");
		}
		
		if(agencia.value == "") {
			return aviso(agencia, "O campo AGÊNCIA está vazio");
		}
		
		if(conta.value == "") {
			return aviso(conta, "O campo CONTA está vazio");
		}
		
		var r = somente_caracteres_dv('DV_Agencia');
		if(r) {
			var r2 = somente_caracteres_dv('DV_Conta');
			if(r2) {
				return verificar_agencia_conta('BancoID', 'Agencia', 'DV_Agencia', 'Conta', 'DV_Conta');
			}
		}
		
		return false;
	}
}

function verificar_agencia_conta(sBanco, sAgencia, sDV_Agencia, sConta, sDV_Conta) {
	var banco = document.getElementById(sBanco);
	var txt_agencia = document.getElementById(sAgencia);
	var txt_dv_agencia = document.getElementById(sDV_Agencia);
	var txt_conta = document.getElementById(sConta);
	var txt_dv_conta = document.getElementById(sDV_Conta);
	
	var agencia = banco.options[banco.selectedIndex].getAttribute('agencia');
	var dv_agencia = banco.options[banco.selectedIndex].getAttribute('dv_agencia');
	var conta = banco.options[banco.selectedIndex].getAttribute('conta');
	var dv_conta = banco.options[banco.selectedIndex].getAttribute('dv_conta');
	
	if(!comparar_agencia_conta(txt_agencia, agencia, 'A agência')) return false;
	if(!comparar_agencia_conta(txt_dv_agencia, dv_agencia, 'O dígito verificador da agência')) return false;
	if(!comparar_agencia_conta(txt_conta, conta, 'A conta')) return false;
	if(!comparar_agencia_conta(txt_dv_conta, dv_conta, 'O dígito verificador da conta')) return false;
	
	return true;
}

function comparar_agencia_conta(txt, tamanho, str) {
	
	if(tamanho == 0 && txt.value.length > 0) {
		return aviso(txt, str + ' não deve ser preenchido(a). Por favor, apague o que foi digitado.');
	} else if(txt.value.length > tamanho) {
		return aviso(txt, str + ' contém o tamanho de ' + txt.value.length + ' dígito' + (txt.value.length > 1 ? "s" : "") + '.\nO tamanho exato é de ' + tamanho + ' dígito' + (tamanho > 1 ? "s" : "") + '.');
	} else if(txt.value.length < tamanho) {
		return aviso(txt, str + ' contém o tamanho de ' + txt.value.length + ' dígito' + (txt.value.length > 1 ? "s" : "") + ', sendo que o tamanho exato é de ' + tamanho + ' dígito' + (tamanho > 1 ? "s" : "") + '.\nSe for o caso, preencha com zeros à esquerda até o tamanho exato do campo.\nPor exemplo: 1234 -> 001234');
	}
	
	return true;
}

function verifica_disponibilidade()
{
	var manha = document.getElementById('Disp_Manha');
	var tarde = document.getElementById('Disp_Tarde');
	var noite = document.getElementById('Disp_Noite');
	
	if(manha.checked || tarde.checked || noite.checked)
		return true;
	
	alert("Selecione ao menos um período de disponibilidade para estágio!");
	return false;
}

function verifica_data_nascimento_externo() {
	var dia = document.getElementById('Dia').value;
	var mes = document.getElementById('Mes').value;
	var ano = document.getElementById('Ano').value;
		
	cons = true; 
		
	// verifica o dia valido para cada mes 
	if((dia < 01)||(dia < 01 || dia > 30) && (mes == 04 || mes == 06 ||  mes == 09 || mes == 11 ) || dia > 31)
	{ 
		cons = false; 
	} 

	// verifica se o mes e valido 
	if(mes < 01 || mes > 12 )
	{ 
		cons = false; 
	} 

	// verifica se e ano bissexto 
	if(mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4))))
	{ 
		cons = false; 
	} 
	
	if(cons == false)
	{ 
		alert("A data inserida não é válida: " + dia + "/" + mes + "/" + ano); 
		document.getElementById('Dia').focus(); 
	} 
	
	return cons;
}

function verifica_telefones_externo() {
	var fixo = document.getElementById('Telefone');
	var celular = document.getElementById('Celular');
	if(fixo.value.length == 0 && celular.value.length == 0) {
		alert("Por favor, preencha pelo menos um telefone.");
		fixo.focus();
		return false;
	}
	
	if(fixo.value.length > 0) {
		if(fixo.value.length < 11) {
			alert("As informações do telefone fixo são inválidas");
			fixo.focus();
			return false;
		}
	}
	
	if(celular.value.length > 0) {
		if(celular.value.length < 11) {
			alert("As informações do telefone celular são inválidas");
			celular.focus();
			return false;
		}
	}
	
	return true;
}

function verifica_campos_iguais(nome1, nome2, msg) {
	var campo1 = document.getElementById(nome1);
	var campo2 = document.getElementById(nome2);
	if(campo1.value == campo2.value)
		return true;
	else {
		alert(msg);
		campo1.focus();
		return false;
	}
}

function verifica_email(campo)
{
	try
	{
		var obj = document.getElementById(campo);
		if(obj.value.length > 0)
		{
			if((obj.value.indexOf(".") == -1) || (obj.value.indexOf("@") == -1))
			{
				alert("O campo de email está invalido");
				obj.focus();
				return false;
			} else if(obj.value.indexOf(".") == obj.value.length-1) {
				alert("O campo de email está invalido");
				obj.focus();
				return false;
			}
			else return true;
		}
		else return true;
	}
	catch(e)
	{
		alert("Exception email: " + e);
		return false;
	}
}

function removeDiv(id)
{
	var d = document.getElementById('conteudo');
	var olddiv = document.getElementById(id);
	if(d && olddiv) d.removeChild(olddiv);
}

function verificar_senha(conf)
{
	var senha = document.getElementById('Senha');
	if(conf.value != senha.value)
	{
		alert('Senha não confere!');
		conf.value = "";
		senha.focus();
	}
}

function seleciona_taxa(combo) {
	var label = document.getElementById('label_taxa');
	if(combo.selectedIndex == 0) {
		label.innerHTML = '%';
	} else {
		label.innerHTML = 'R$';
	}
}

function alterar_ferias(id) {
	var check = document.getElementById('Ferias['+id+']');
	var tipo = document.getElementById('Tipo['+id+']');
	var data = document.getElementById('Data['+id+']');
	var valor = document.getElementById('Valor['+id+']');
	
	tipo.disabled = !check.checked;
	data.disabled = !check.checked;
	valor.disabled = !check.checked;
	
	tipo.selectedIndex = 0;
}

function alterar_tipo(id) {
	var tipo = document.getElementById('Tipo['+id+']');
	var data = document.getElementById('Data['+id+']');
	
	if(tipo.options[tipo.selectedIndex].value == 0) {
		data.disabled = false;
	} else if(tipo.options[tipo.selectedIndex].value == 1) {
		data.disabled = false;
	} else {
		data.disabled = true;
	}
}

function validar_acao(frm) {
	frm.action = "javascript:;";
	frm.target = "";
	
	var acao = document.getElementById('Acao');
	var opcao = acao.options[acao.selectedIndex];
	var elementos = document.getElementsByTagName('input');
	var cont = 0;
	for(var i = 0; i < elementos.length; i++) {
		if(elementos[i].id.indexOf("ContratoID[]") > -1 && elementos[i].checked) {
			cont++;
			if(cont > 1)
				break;
		}
	}
	
	if(acao.selectedIndex == 0) {
		alert("Você não selecionou nenhuma ação.");
		return false;
	}
	
	if(cont == 0) {
		alert("Selecione pelo menos um cadastro.");
		return false;
	}

	if(opcao.getAttribute("src") != "") {
		frm.action = opcao.getAttribute("src");
		frm.target = "";
		frm.submit();
		return false;
	}
	
	return true;
}

function listar_usuarios(combo, url, div) {
	var value = combo.options[combo.selectedIndex].value;
	enviaPost(url, div, combo.id+"="+value);
}

function seleciona_estagiario(campo)
{
	try
	{
		document.getElementById('EstagiarioTxt').value = campo.innerHTML;
		document.getElementById('EstagiarioID').value = campo.id;
		if(document.getElementById('VagaID'))
			document.getElementById('VagaID').focus();
		document.getElementById('estagiario').innerHTML = " ";
	}
	catch(e)
	{
		alert(e);
	}
}

function procurar_estagiario()
{
	try
	{
		var goCampo = document.getElementById('GoCampo').value;
		var estagiario = document.getElementById('EstagiarioTxt').value;
		setaPagina(goCampo+"&Estagiario="+estagiario, 'estagiario');
	}
	catch(e)
	{
		alert(e);
	}
}

function procurar_escola()
{
	try
	{
		var goCampo = document.getElementById('GoCampo').value;
		var escola = document.getElementById('EscolaTxt').value;
		setaPagina(goCampo+"&Escola="+escola, 'escola');
	}
	catch(e)
	{
		alert(e);
	}
}

function procurar_escola_externo()
{
	try
	{
		var goCampo = document.getElementById('GoCampo').value;
		var escola = document.getElementById('EscolaTxt').value;
		
		var par = "Escola="+escola;
		
		document.getElementById('EscolaID').options.length = 1;
		
		carregaCombo(goCampo, 'EscolaID', 'opcoesList', 'escola', par, '1');
	}
	catch(e)
	{
		alert(e);
	}
}

function seleciona_escola(campo)
{
	try
	{
		document.getElementById('EscolaTxt').value = campo.innerHTML;
		document.getElementById('EscolaID').value = campo.id;
		document.getElementById('Nivel').focus();
		document.getElementById('escola').innerHTML = " ";
	}
	catch(e)
	{
		alert(e);
	}
}

function aviso(obj, msg)
{
	alert(msg);
	obj.focus();
	return false;
}

function gerar_paramentros(frm)
{
	var poststr = '';
	for(var i = 0; i < frm.length; i++)
	{
		var obj = frm[i];
		if(obj.type == 'text' || obj.type == 'textarea' || obj.type == 'hidden' || obj.type == 'password' || obj.type == 'file')
		{
			poststr = poststr + obj.name + "=" + obj.value + "&";
		}
		if(obj.type == 'radio')
		{
			if(obj.checked) poststr = poststr + obj.name + "=" + obj.value + "&";
		}
		if(obj.type == 'checkbox')
		{
			if(obj.checked) poststr = poststr + obj.name + "=" + obj.value + "&";
			else poststr = poststr + obj.name + "=0" + "&";
		}
		
		if(obj.type == 'select-one')
		{
			poststr = poststr + obj.name + "=" + obj.options[obj.selectedIndex].value + "&";
		}
	}
	return poststr;
}

function carregarMenus()
{
	setaPagina('/conesul/menudireito.inc.php', 'menudireito');
	//setaPagina('/conesul/menuesquerdo.inc.php', 'menuesquerdo');
}

function seleciona_curso_por_nivel(url, id, combo)
{
	var val = combo.options[combo.selectedIndex].value;
	var par = "Nivel="+val;
	
	enviaPost(url, id, par);
}

function seleciona_elemento_combo(nomeCombo1, nomeCombo2, opcao, tag)
{
	try
	{
		// pega os objetos
		var combo1 = document.getElementById(nomeCombo1);
		var valueCombo1 = combo1.options[combo1.selectedIndex].value;
		var par = combo1.name+"="+valueCombo1;
		
		var combo2 = document.getElementById(nomeCombo2);
		
		// limpa o combo!! deixa ele só com a primeira opção
		combo2.options.length = 1;
		
		carregaCombo(document.forms[0].GoCombo.value, nomeCombo2, opcao, tag, par);
	}
	catch(e)
	{
		alert("Exception:" + e);
	}
}

function selecionar_item_menu(nome)
{
	try
	{
		var tds = document.getElementsByTagName('TD');
		var obj = null;
		for(var i = 0; i < tds.length; i++)
		{
			// o td pertence ao menu
			if(tds[i].id.indexOf('menu') != -1)
			{
				// verifica se é o menu clicado
				if(tds[i].id == nome)
					obj = tds[i];
				if(tds[i].className == 'tab-selected')
					tds[i].className = 'tab-unselected';
			}
		}
		obj.className = 'tab-selected';
	}
	catch(e)
	{
		alert('DExcepton: ' + e);
	}
}

function total() {
	try {
		var campo_total = document.getElementById('Total_Pag');
		var total = 0;
		
		for(var i = 0; i < document.forms[1].length; i++) {
			var obj = document.forms[1][i];
			if(obj.id == "Valor_Pago" || obj.id == "Vale_Transporte") {
				var val = obj.value;
				if(val != null && val != "") {
					val = val.replace('.','');
					val = val.replace(',','.');
					
					total += parseFloat(val, 2);
				}
			}
		}
		
		campo_total.value = total.toFixed(2);
		coloca_mascara(campo_total, 'moeda');
	} catch(e) {
		alert(e);
	}
}

function valor_vale_refeicao()
{
	var vale = document.getElementById('Vale_Refeicao');
	var valor = document.getElementById('ValorValeRefeicao');
	
	valor.value = '';
	if(vale.value == 'Sim')
		valor.disabled = false;
	else
		valor.disabled = true;
}

// Funcao que valida o formulario
function confirmaExclusao(text)
{
	confirma = confirm(text, false);
	if(confirma == false) return false;
	if(confirma == true) return true;
	return false;
}

function coloca_mascara(objCampo, mascara)
{
	switch(mascara)
	{
		//000.000.000-00
		case 'cpf':
			objCampo.value = somente_numero(objCampo.value);
			pri = objCampo.value.substring(0,3);
			seg = objCampo.value.substring(3,6);
			ter = objCampo.value.substring(6,9);
			qua = objCampo.value.substring(9,11);
						
			objCampo.value = pri+
			((seg!='') ? '.'+seg : '')+
			((ter!='') ? '.'+ter : '')+
			((qua!='') ? '-'+qua : '');
		break;

		//00.000.000/0000-00
		case 'cnpj':
			objCampo.value = somente_numero(objCampo.value);
			pri = objCampo.value.substring(0,2);
			seg = objCampo.value.substring(2,5);
			ter = objCampo.value.substring(5,8);
			qua = objCampo.value.substring(8,12);
			qui = objCampo.value.substring(12,14);
			
			objCampo.value = pri+
			((seg!='') ? '.'+seg : '')+
			((ter!='') ? '.'+ter : '')+
			((qua!='') ? '/'+qua : '')+
			((qui!='') ? '-'+qui : '');
		break;
		
		//(00) 0000-0000
		case 'telefone':
			objCampo.value = somente_numero(objCampo.value);
			
			pri = objCampo.value.substring(0,2);
			seg = objCampo.value.substring(2,6);
			ter = objCampo.value.substring(6,10);
						
			objCampo.value = pri+
			((seg!='') ? '-'+seg : '')+
			((ter!='') ? '.'+ter : '');
		break;

		//00000-000
		case 'cep':
			objCampo.value = somente_numero(objCampo.value);
			
			pri = objCampo.value.substring(0,5);
			seg = objCampo.value.substring(5,8);
						
			objCampo.value = pri+
			((seg!='') ? '-'+seg : '');
		break;

		//00/00/0000
		case 'data':
			objCampo.value = somente_numero(objCampo.value);
			
			pri = objCampo.value.substring(0,2);
			seg = objCampo.value.substring(2,4);
			ter = objCampo.value.substring(4,8);
			
			objCampo.value = pri+
			((seg!='') ? '/'+seg : '')+
			((ter!='') ? '/'+ter : '')
		break;
		
		//00/0000
		case 'venc_cartao':
			objCampo.value = somente_numero(objCampo.value);
			
			pri = objCampo.value.substring(0,2);
			seg = objCampo.value.substring(2,6);
			
			objCampo.value = pri+
			((seg!='') ? '/'+seg : '')
		break;

		//0000 0000 0000 0000
		case 'cartao':
			objCampo.value = somente_numero(objCampo.value);
			
			pri = objCampo.value.substring(0,4);
			seg = objCampo.value.substring(4,8);
			ter = objCampo.value.substring(8,12);
			qua = objCampo.value.substring(12,16);
			
			objCampo.value = pri+
			((seg!='') ? '-'+seg : '')+
			((ter!='') ? '-'+ter : '')+
			((qua!='') ? '-'+qua : '');
		break;

		case 'numero':
			objCampo.value = somente_numero(objCampo.value);		
		break;
		
		case 'letra':
			objCampo.value = somente_letras(objCampo.value);
		break;

		//1.000.000.000.000,00
		case 'moeda':
			len = 20
			cur = objCampo
			n   = '0123456789';
			d   = objCampo.value;
			l   = d.length;
			r   = '';
			
			if ( l > 0 )
			{
				z = d.substr(0,l);
				s = '';
				a = 0;
				
				for ( i=0; i < l; i++ )
				{
					c = d.charAt(i);
					if ( n.indexOf(c) > a )
					{
						a  = -1;
						s += c;
					};
				};
				l = s.length;
				t = len - 1;
				if ( l > t )
				{
					l = t;
					s = s.substr(0,t);
				}
				if ( l > 2 )
				{
					r = s.substr(0,l-2)+','+s.substr(l-2,2);
				}
				else
				{
					if ( l == 2 )
					{
						r='0,'+s;
					}
					else
					{
						if ( l == 1 )
						{
							r = '0,0'+s;
						}
					}
				}
				if ( r == '' )
				{
					r = '0,00';
				}
				else
				{
					l=r.length;
					if (l > 6)
					{
						j  = l%3;
						w  = r.substr(0,j);
						wa = r.substr(j,l-j-6);
						wb = r.substr(l-6,6);
						if ( j > 0 )
						{
							w+='.';
						};
						k = (l-j)/3-2;
						for ( i=0; i < k; i++ )
						{
							w += wa.substr(i*3,3)+'.';
						};
						r = w + wb;
					}
				}
			}
			if ( cur.value.length == len || cur.value.length > len )
			{
				cur.value = cur.value.substring(0 ,len);
				return false;
			}
			else
			{
				if ( r.length <= len )
				{
					cur.value = r;
				}
				else
				{
					cur.value = z;
				};
			}
		break;
	}
}

function somente_numero(numero)
{
	var validos = "0123456789";
	var numero_ok = '';
	for(i = 0; i < numero.length; i++)
	{
		if(validos.indexOf(numero.substr(i,1)) != -1)
		{
			numero_ok += numero.substr(i,1);
		}
	}
	return numero_ok;
}

function somente_letras(letra)
{
	var validos  = "_abcdefghijklmnopkrstuvxzywçáéíóú ";
	var letra_ok = '';
	
	for(i = 0; i < letra.length; i++)
	{
		if(validos.indexOf(letra.substr(i,1)) != -1)
		{
			letra_ok += letra.substr(i,1);
		}
	}
	return letra_ok;
}

function setaStatusBar()
{
	window.status = window.status;
	return true;
}

function marcar_todos()
{
	var seguros = document.getElementsByTagName('input');
	for(var i = 0; i < seguros.length; i++)
	{
		if(seguros[i].id == 'Seguro')
			seguros[i].checked = true;
	}
}

function desmarcar_todos()
{
	var seguros = document.getElementsByTagName('input');
	for(var i = 0; i < seguros.length; i++)
	{
		if(seguros[i].id == 'Seguro')
			seguros[i].checked = false;
	}
}

function marcar_todos_generico(id)
{
	var seguros = document.getElementsByTagName('input');
	for(var i = 0; i < seguros.length; i++)
	{
		if(seguros[i].id == id)
			seguros[i].checked = true;
	}
}

function desmarcar_todos_generico(id)
{
	var seguros = document.getElementsByTagName('input');
	for(var i = 0; i < seguros.length; i++)
	{
		if(seguros[i].id == id)
			seguros[i].checked = false;
	}
}

function soma(id, valor)
{
	var obj = document.getElementById(id);
	var valor_obj = parseInt(obj.value);
	var valor_int = parseInt(valor);
	var max_int = parseInt(document.getElementById(id+'Max').value);

	if(valor_int == 0)
		return;

	if((valor_obj == max_int && valor_int >= 1) || (valor_obj == 1 && valor_int <= -1))
		return;
	
	obj.value = valor_obj + valor_int;
}

function seta_spinner(comboID, spinnerID)
{
	var combo = document.getElementById(comboID);
	var spinner = document.getElementById(spinnerID);
	
	var valueCombo = combo.options[combo.selectedIndex].value;
	
	var par = combo.name+"="+valueCombo;

	carregaSpinner(document.forms[0].GoSpinner.value, spinnerID, par);
}


 function validarCPF(id){
   var cpf = document.getElementById(id).value;
   var filtro = /^\d{3}.\d{3}.\d{3}-\d{2}$/i;
   if(!filtro.test(cpf)){
     window.alert("CPF inválido. Tente novamente.");
	 document.getElementById(id).focus();
	 return false;
   }
   
   cpf = remove(cpf, ".");
   cpf = remove(cpf, "-");
    
   if(cpf.length != 11 || cpf == "00000000000" || cpf == "11111111111" ||
	  cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" ||
	  cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" ||
	  cpf == "88888888888" || cpf == "99999999999"){
	  window.alert("CPF inválido. Tente novamente.");
	  document.getElementById(id).focus();
	  return false;
   }

   soma = 0;
   for(i = 0; i < 9; i++)
   	 soma += parseInt(cpf.charAt(i)) * (10 - i);
   resto = 11 - (soma % 11);
   if(resto == 10 || resto == 11)
	 resto = 0;
   if(resto != parseInt(cpf.charAt(9))){
	 window.alert("CPF inválido. Tente novamente.");
	 document.getElementById(id).focus();
	 return false;
   }
   soma = 0;
   for(i = 0; i < 10; i ++)
	 soma += parseInt(cpf.charAt(i)) * (11 - i);
   resto = 11 - (soma % 11);
   if(resto == 10 || resto == 11)
	 resto = 0;
   if(resto != parseInt(cpf.charAt(10))){
     window.alert("CPF inválido. Tente novamente.");
	 document.getElementById(id).focus();
	 return false;
   }
   return true;
 }
 
 function remove(str, sub) {
   i = str.indexOf(sub);
   r = "";
   if (i == -1) return str;
   r += str.substring(0,i) + remove(str.substring(i + sub.length), sub);
   return r;
 }






var scrtxt="SISCONE PRO - Fundação Conesul de Desenvolvimento";
var lentxt=scrtxt.length;
var width=100;
var pos=1-width;
function scroll()
{
	pos++;
	var scroller="";
	if (pos==lentxt)
	{
		pos=1-width;
	}
	if (pos<0)
	{
    	for (var i=1; i<=Math.abs(pos); i++)
		{
      		scroller=scroller+" ";
		}
	    scroller=scroller+scrtxt.substring(0,width-i+1);
	}
	else
	{
    	scroller=scroller+scrtxt.substring(pos,width+pos);
	}
	window.status = scroller;
	setTimeout("scroll()",120);
}

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; }
}

function abrir_seguradora(theURL,winName,features,seguro) {
	if(seguro.checked)
		window.open(theURL,winName,features);
}

/*
	var tecla=window.event.keyCode; 
	var shift=window.event.shiftKey;
	var ctrl=window.event.ctrlKey;
	var insert=window.event.insertKey;
	var alt=window.event.altKey;
	
	var key = null;

	if(ev)			//Moz
	{
		key = ev.keyCode;
	}
	if(window.event)	//IE
	{
		key = window.event.keyCode;
	}

	alert(key);

	switch(key)
	{
		case BS:
			alert('AAAA');
			break;
	}
*/
var ENTER = 13;
var SHIFT = 16;
var CTRL = 17;
var ALT = 18;
var ESC = 27;
var TAB = 06;
var BS = 08;
var CAPSLOCK = 20;
var SPACE = 32;
var KEYUP = 38;
var KEYDN = 40;

var NUM0 = 48;
var NUM1 = 49;
var NUM2 = 50;
var NUM3 = 51;
var NUM4 = 52;
var NUM5 = 53;
var NUM6 = 54;
var NUM7 = 55;
var NUM8 = 56;
var NUM9 = 57;

var F3 = 114;
var F4 = 115;
var F5 = 116;
var F6 = 117;
var F7 = 118;
var F8 = 119;
var F9 = 120;
var F10 = 121;
var F11 = 122;
var F12 = 123;

// Parte das letras // 
var A = 65;
var B = 66;
var C = 67;
var D = 68;
var E = 69;
var F = 70;
var G = 71;
var H = 72;
var I = 73;
var J = 74;
var K = 75;
var L = 76;
var M = 77;
var N = 78;
var O = 79;
var P = 80;
var Q = 81;
var R = 82;
var S = 83;
var T = 84;
var U = 85;
var V = 86;
var W = 87;
var X = 88;
var Y = 89;
var Z = 90;

// Parte dos números // 
var NUMPAD0 = 96;
var NUMPAD1 = 97;
var NUMPAD2 = 98;
var NUMPAD3 = 99;
var NUMPAD4 = 100;
var NUMPAD5 = 101;
var NUMPAD6 = 102;
var NUMPAD7 = 103;
var NUMPAD8 = 104;
var NUMPAD9 = 105;

var ASTERISCO = 106;
var CRUZ = 107;
var HIFEN = 109;
var DEL = 110;
var BARRA = 111;
