
//Fun??o de abrir popUp
function MM_openBrWindow(theURL,winName,features){
	window.open(theURL,winName,features);
}

//Função para validar os dados dos formularios
function testaDados(ex) {
	var e = document.form.elements;
	for(i=0; i < e.length; i++) {
		if ( e[i].value == "" && !ex.match(e[i].name) ) {
			alert("Campo " + e[i].id + " é de preenchimento obrigatório.");
			e[i].style.backgroundColor='#EFEEEE';
			e[i].focus();
		return false;
		}else{
			e[i].style.backgroundColor='#FFFFFF';
		}
	}
	window.document.form.submit();
}			
function testaDadosCompleto(excecoes) {
	var elementosForm = document.form.elements;
	var elementosExcecoes = excecoes.split(" ");
	var temp, flag, mensagem = '';
	for(i=0; i < elementosForm.length; i++) {
		flag = true;
		for(j = 0; j < elementosExcecoes.length; j++) {
			if (elementosForm[i].name.toLowerCase() == elementosExcecoes[j].toLowerCase()){
				flag = false;
				break;	
			}
		}
		if (flag){
			switch (elementosForm[i].type){
				case 'button': //ignora do tipo botao
					break;
				case 'radio':
				case 'checkbox':
					j = i;
					temp = elementosForm[i].name;
					while (elementosForm[i].name == temp){
						if (elementosForm[i].checked){
							flag = false;
						}
						elementosForm[i].style.backgroundColor='#FEE';
						i++;
					}
					if (flag){
						for(j; j < i; j++) {
							elementosForm[j].style.backgroundColor='#F00';
						}
						mensagem += "Campo " + elementosForm[i].title + " é de preenchimento obrigatório. \n" ;
					}
					i--;
					break;
				case 'hidden':
					if (elementosForm[i].value == "" || elementosForm[i].value == 0){
						mensagem += "Campo " + elementosForm[i].title + " é de preenchimento obrigatório. \n" ;
					} 
					break;
				default: //select-one, textarea, text
					if (elementosForm[i].name.toLowerCase().substring(0,3) == 'dt_'){
						if (isDate(elementosForm[i])){
							alert("DT OK");
						}else{
							alert("DT errada");
						}
					}
					if (elementosForm[i].value == ""){
						mensagem += "Campo " + elementosForm[i].title + " é de preenchimento obrigatório. \n";
						elementosForm[i].style.backgroundColor='#f55';
						elementosForm[i].style.color='#FFF';
					}else{
						elementosForm[i].style.backgroundColor='#FEE';
						elementosForm[i].style.color='#000';
					}
			}
		}
	}
	if (mensagem != ""){
		alert(mensagem);
		return false;
	}else{
		return true;	
	}
}
function defineObrigatorios(excecoes) {
	var elementosForm = document.form.elements;
	var elementosExcecoes = excecoes.split(" ");
	var flag;
	for(i=0; i < elementosForm.length; i++) {
		flag = true;
		for(j = 0; j < elementosExcecoes.length; j++) {
			if (elementosForm[i].name.toLowerCase() == elementosExcecoes[j].toLowerCase()){
				flag = false;
				break;	
			}
		}
		if (flag){
			elementosForm[i].style.backgroundColor='#FEE';
		}else{
			elementosForm[i].style.backgroundColor='#FFF';
		}
	}
}

function validarCheck(campo){
	var flag=false;
	for (i=0; i<campo.length; i++) {
		if (campo[i].checked==true){
			flag = true;
		}
	}
	return flag;
}


//Função para se somar campos numéricos
function somarCampos(positivos,negativos,campoResult,isNegativo,inteiro,decimal,isMilhar,maskPos,maskAnt) {
	var soma = 0;
	var e = document.form.elements;
	for(z=0; z < e.length; z++) {
		if ( e[z].value != "" && positivos.match(e[z].name) ) {
			var str = e[z].value;
			if(str.match("-")){
				str = RetiraCaracteresInvalidos(str,str.length);
				soma = soma - parseFloat(str);
			}else{
				str = RetiraCaracteresInvalidos(str,str.length);
				soma = soma + parseFloat(str);
			}
		}
	}
	for(z=0; z < e.length; z++) {
		if ( e[z].value != "" && negativos.match(e[z].name) ) {
			var str = e[z].value;
			if(str.match("-")){
				str = RetiraCaracteresInvalidos(str,str.length);
				soma = soma + parseFloat(str);
			}else{
				str = RetiraCaracteresInvalidos(str,str.length);
				soma = soma - parseFloat(str);
			}
		}
	}
	for(z=0; z < e.length; z++) {
		if (campoResult.match(e[z].name) ) {
			e[z].value = String(soma);
			if(e[z].value.match('-') && !isNegativo){
				alert("A soma dos campos resultou em um valor negativo!\nFavor reinformar os valores corrigidos.");
				e[z].value = '';
				for(j=0; j < e.length; j++) {
					if ( e[j].value != "" && positivos.match(e[j].name) ) {
						e[j].value = ''
					}else if ( e[j].value != "" && negativos.match(e[j].name) ) {
						e[j].value = ''
					}
				}
			}else{
				maskNumerico(e[z],isNegativo,inteiro,decimal,isMilhar,maskPos,maskAnt);
			}
			break;
		}
	}
	return true;
}			

function acrescNumero(obj,keycode){
	switch (keycode){
		case 45:obj.value=obj.value + '-';break;
		case 48:obj.value=obj.value + '0';break;
		case 49:obj.value=obj.value + '1';break;
		case 50:obj.value=obj.value + '2';break;
		case 51:obj.value=obj.value + '3';break;
		case 52:obj.value=obj.value + '4';break;
		case 53:obj.value=obj.value + '5';break;
		case 54:obj.value=obj.value + '6';break;
		case 55:obj.value=obj.value + '7';break;
		case 56:obj.value=obj.value + '8';break;
		case 57:obj.value=obj.value + '9';break;
	}
	return true;
}

//Função para acrescentar mascara a campos numéricos
function maskNumerico(obj,isNegativo,inteiro,decimal,isMilhar,maskPos,maskAnt){
	formataNumerico(obj,isNegativo,inteiro,decimal,isMilhar);
	obj.value = maskAnt + obj.value + maskPos;
	return true;
}

//Função para formatar campos numéricos
function formataNumerico(obj,isNegativo,inteiro,decimal,isMilhar){
	acrescNumero(obj,event.keyCode);
	event.keyCode = '';

	var str = obj.value;
	var negativo = false;

	if(str.length > 0){
		if(str.match('-')){
			negativo = true;
		}else{
			negativo = false;
		}
	}

	str = RetiraCaracteresInvalidos(str,str.length);
	rodar = true;
	while(rodar){
		if(str.charAt(0) == '0'){
			str = str.substring(1,str.length);
		}else{
			rodar = false;
		}
	}
	
	if(str.length > (inteiro + decimal)){
		str = str.substring(0,inteiro + decimal);
	}

	if(decimal > 0){
		if(str.length <= decimal){
			for(i = str.length; i < (decimal + 1); i++){
				str = '0' + str;
			}
		}
		str = str.substring(0,(str.length - decimal)) + ',' + str.substring((str.length - decimal),str.length);
		if((str.length > (decimal + 4)) && isMilhar){
			for(i = (str.length - (decimal + 4)); i > 0; i--){
				str = str.substring(0,i) + '.' + str.substring(i,str.length);
				i = i - 2;
			}
		}
	}else if((str.length > 3) && isMilhar){
		for(i = (str.length - 3); i > 0; i--){
			str = str.substring(0,i) + '.' + str.substring(i,str.length);
			i = i - 2;
		}
	}else if(inteiro > 0 && str.length == 0){
		str = 0;
	}

	if(negativo && isNegativo){
		obj.value = '-' + str;
	}else{
		obj.value = str;
	}
	return true;
}

function compararValores(obj,inteiro,decimal,tamanhoMax){
	var str = obj.value;
	var valor;

	str = RetiraCaracteresInvalidos(str,str.length);
	rodar = true;
	while(rodar){
		if(str.charAt(0) == '0'){
			str = str.substring(1,str.length);
		}else{
			rodar = false;
		}
	}
	if(tamanhoMax.indexOf(',')>0){
		valor = tamanhoMax.substring(tamanhoMax.indexOf(',')+1, tamanhoMax.length);
		for(i=valor.length;i<decimal;i++){
			valor = valor + '0';
		}
		valor = tamanhoMax.substring(0,tamanhoMax.indexOf(',')) + valor;
	}else{
		valor = tamanhoMax;
		for(i=0;i<decimal;i++){
			valor = valor + '0';
		}
	}
	valor = RetiraCaracteresInvalidos(valor,valor.length);
	rodar = true;
	while(rodar){
		if(valor.charAt(0) == '0'){
			valor = valor.substring(1,valor.length);
		}else{
			rodar = false;
		}
	}
	
	if(parseFloat(str) > parseFloat(valor)){
		obj.value = '';
		alert("Este campo não pode conter valores acima de " + tamanhoMax);
	}
	return true;
}

//Fun??o de mover lista de acessos para o usu?rio
function F_MoveLista(oObjOrigem,oObjDestino,oObjTodos){
	var TotalElementos=(oObjOrigem.options.length-1);
	var nConta;

	if (TotalElementos>=0) {     
		for (nConta=TotalElementos;nConta>=0;nConta--){
			if (!oObjTodos){
				if (oObjOrigem.options[nConta].selected) {
					oOption=window.document.createElement("OPTION");
					oOption.text = oObjOrigem.options[nConta].text;
					oOption.value = oObjOrigem.options[nConta].value;     
					oObjDestino.add(oOption);
					oObjOrigem.remove(nConta);   
				}   
			}   
			if (oObjTodos){      
				oOption=window.document.createElement("OPTION");
				oOption.text = oObjOrigem.options[nConta].text;
				oOption.value = oObjOrigem.options[nConta].value;     
				oObjDestino.add(oOption);
				oObjOrigem.remove(nConta);               
			}  
		}
	} else {
		alert("Não há opções a ser selecionada...");
	}
	FOrdena(oObjDestino);
}

function FOrdena(oObj){
	var oVetOriginal=new Array(oObj.options.length);
	var oVetOrdenado;
	var oOption;
	var nConta;

	for (nConta=oObj.options.length-1;nConta>=0;nConta--){
		oVetOriginal[nConta]=oObj.options[nConta].text+"/"+oObj.options[nConta].value;
		oObj.remove(nConta);
	}
	oVetOrdenado=oVetOriginal.sort();
      
	for (nConta=0;(nConta<=oVetOrdenado.length-1);nConta++){
		oOption=window.document.createElement("OPTION");
		oOption.text = oVetOrdenado[nConta].substring(0,oVetOrdenado[nConta].indexOf("/",0));
		oOption.value = oVetOrdenado[nConta].substring((oVetOrdenado[nConta].indexOf("/",0)+1),oVetOrdenado[nConta].length);               
		oObj.add(oOption);
	}         
}

function FControle(){
	var qtd
	qtd = window.AdministracaoForm.acesso.length - 1; 
			       
	for (var ponteiro = 0; ponteiro<=qtd;ponteiro++){
		window.AdministracaoForm.acesso.options[ponteiro].selected = true;
	}
}

function validarCaracteres(tipo){
	if (tipo == 'numero' && !(event.keyCode>= 48 && event.keyCode <= 57)){
		event.keyCode = '';
		return;
	}
	else if (tipo == 'letra' && !(event.keyCode < 48 || event.keyCode > 57)){
		event.keyCode = '';
		return;
	}
}

function maskCampo(obj, mask, tipo){
	var str = obj.value;
	//Variaveis para o tipo
	//se tipo = a numero é pq só aceito caracteres do tipo número
	//se tipo = a letra é pq só aceita caracteres do tipo string
	if (tipo == 'numero' && !(event.keyCode>= 48 && event.keyCode <= 57)){
		event.keyCode = '';
		return;
	}
	else if (tipo == 'letra' && !(event.keyCode < 48 || event.keyCode > 57)){
		event.keyCode = '';
		return;
	}
	if(str != ''){
		for(i=0; i < obj.value.length; i++){
			if(mask.length < i){
				alert("Campo muito grande para este tipo de máscara.");
				return false;
			}else if(mask.charAt(i) != "x"){
				if ((str.charAt(i) >= "0") && (str.charAt(i) <= "9")){
					str = str.substring(0,i) + mask.charAt(i) + str.substring(i,str.length);
				}else{
					if(str.length >= i+1){
						str = str.substring(0,i) + mask.charAt(i) + str.substring(i+1,str.length);
					}else{
						str = str.substring(0,i) + mask.charAt(i);
					}
				}
			}
			obj.value = str;
		}
		return true;
	}else{
		return true;
	}
}

//fun??o ? de validar cpf e cnpj
function ValidarCpfCnpj(obj) {
	var campo = obj.value;

	if (campo == ""){
		return true;
	}

	if (campo.length == 14){
		var CPFaux = RetiraCaracteresInvalidos(campo,11);
		NR_CPF = CPFaux.substr(0,9);
		var rcpf2 = CPFaux.substr(9,2);
		if ((NR_CPF == null || NR_CPF == 0)){
			alert("CPF inválido.");
			obj.value='';
			obj.focus();
			return false;
		}
		if( CPFaux == "00000000000" ||
		    CPFaux == "11111111111" || 
		    CPFaux == "22222222222" || 
		    CPFaux == "33333333333" || 
		    CPFaux == "44444444444" || 
		    CPFaux == "55555555555" || 
		    CPFaux == "66666666666" || 
		    CPFaux == "77777777777" || 
		    CPFaux == "88888888888" || 
			CPFaux == "99999999999"){
			alert("CPF inválido.");
			obj.value='';
			obj.focus();
			return false;
		}
		d1 = 0;
		for (i=0;i<9;i++)
			d1 += NR_CPF.charAt(i)*(10-i);
			d1 = 11 - (d1 % 11);
		if (d1>9) d1 = 0;
			if (rcpf2.charAt(0) != d1){
				alert("CPF inválido.");
				obj.value='';
				obj.focus();
				return false;
			}
			d1 *= 2;
		for (i=0;i<9;i++)
			d1 += NR_CPF.charAt(i)*(11-i);
			d1 = 11 - (d1 % 11);
		if (d1>9)
			d1 = 0;
		if (rcpf2.charAt(1) != d1){
			alert("CPF inválido.");
			obj.value='';
			obj.focus();
			return false;
		}
//		obj.value = CPFaux.substr(0, 3) + '.' + CPFaux.substr(3, 3) + '.' + CPFaux.substr(6, 3) + '-' + rcpf2;    
		return true;
	}else if (campo.length == 18){
		var CGC1, CGC2, Matriz; 
		var Soma, Digito;
		var i , j; 
		var ContIni , ContFim;
		var controle;
		campo  = RetiraCaracteresInvalidos(campo,14);
		if  (campo == "00000000000000") {
			alert("CNPJ inválido.");
			obj.value='';
			obj.focus();
			return false;
		}
		CGC1 = campo.substring(0,12);
		CGC2 = campo.substring(12,14);
		controle = "";
		ContIni = 1;
		ContFim = 12;
		K = 0;
		for (j = 1; j <= 2; j++){
			Soma = 0;
			for (i = ContIni; i <=ContFim; i++){
				Mult = (ContFim + 1 + j - i);
				if (Mult > 9) Mult = Mult - 8;
					Soma = Soma + (parseInt(CGC1.substring(i - j, i-K)) * Mult);
			}
			if (j == 2) Soma = Soma + (2 * Digito);
				Digito = (Soma * 10) % 11;
				if (Digito == 10) Digito = 0;
					controle = controle + Digito;
					ContIni = 2;
					K=1;
					ContFim = 13;
		} 
		if (controle != CGC2){
			alert("CNPJ inválido.");
			obj.value='';
			obj.focus();
			return false;
		}
//		obj.value = CGC1.substr(0, 2) + '.' + CGC1.substr(2, 3) + '.' + CGC1.substr(5, 3) + '/' + CGC1.substr(8, 4) + '-' + CGC2;    
		return true;
	}else{
		alert("Valor inválido para este campo.");
		obj.value='';
		obj.focus();
		return false;
	}
}

function RetiraCaracteresInvalidos(strCampo,tam) {
	nTamanho = strCampo.length;
	szCampo = "";
	j=0;
	for (i = nTamanho-1;i>=0;i--){
		if ((strCampo.charAt(i) >= "0") && (strCampo.charAt(i) <= "9")){
			szCampo = strCampo.charAt(i) + szCampo;
			j++;
			if (j > tam) break;
		}
	}
	if (szCampo.length < tam){
		for (i = szCampo.length;i<tam;i++){
			szCampo = "0" + szCampo;
		}
	}
	return szCampo;
}

//Fun??o de valida??o de datas
function isDate(obj){

	var str = obj.value;
	
	if(str == ''){
		return true;
	}

	var tamanho;
	tamanho = str.length;
	
	if (tamanho != 10){
		alert("A data deve ser digitada com\n10 caracteres no formato: DD/MM/AAAA.");
		obj.value = '';
		obj.focus();
		return (false);
	}
	
	for(j=0; j < tamanho; j++){
		if(!(j == 2 || j == 5)){
			if ((str.charAt(j) < "0") || (str.charAt(j) > "9")){ 
				alert("Data inválida.\nEsse campo só aceita números e o caracter '/'.");
				obj.value = '';
				obj.focus();
				return (false);
			}
		}
	}

	var dia = str.charAt(0) == "0"?parseInt(str.substring(1,2)):parseInt(str.substring(0,2));	
	var mes = str.charAt(3) == "0"?parseInt(str.substring(4,5)):parseInt(str.substring(3,5));
	var begin = str.charAt(6) == "0"?(str.charAt(7) == "0"?(str.charAt(8) == "0" ? 9 : 8) : 7) : 6;
	var ano = parseInt(str.substring(begin, 10));

	if (dia == 0){ 
		alert("Dia inválido.")
		obj.value = '';
		obj.focus();
		return false;
	}else if(mes < 1 || mes > 12){ 
		alert("Mês invélido.");
		obj.value = '';
		obj.focus();
		return false;
	}else if(mes == 1 || mes == 3 || mes == 5 || mes == 7 || mes == 8 || mes == 10 || mes == 12){
		if (dia > 31){
			alert("Dia inválido.\nO dia não pode ser maior que 31.");
			obj.value = '';
			obj.focus();
			return false;
		}
	}else if (mes == 4 || mes == 6 || mes == 9 || mes == 11){
		if (dia > 30){
			alert("Dia inválido.\nEsse mês possui apenas 30 dias.");
			obj.value = '';
			obj.focus();
			return false;
		}
	}else if (ano % 4 != 0 && ano % 100 == 0 || ano % 400 != 0){
		if (dia > 28){ 
			alert("Dia inválido.\nO dia não pode ser maior que 28.");
			obj.value = '';
			obj.focus();
			return false;
		}
	}else if (dia > 29){ 
		alert("Dia inválido.\nO dia não pode ser maior que 29.");
		obj.value = '';
		obj.focus();
		return false;
	}else if (ano == 0 || ano < 1800){ 
		alert("Ano inválido.");
		obj.value = '';
		obj.focus();
		return false;
	}
	return true;
}			

//Fun??o de compara??o de datas com a data atual
function compararDataAtual(str){

	Todays = new Date();
	var dia = ''+Todays.getDate();
	var mes = ''+(Todays.getMonth() + 1);
	var ano = ''+Todays.getYear();
	
	dia = dia.length == 1?'0'+dia:dia;
	mes = mes.length == 1?'0'+mes:mes;

	var hoje = dia + '/' + mes + '/' + ano;
	
	return compararData(str,hoje);
}

//Fun??o de compara??o de datas
function compararData(str1,str2){
	var dia1;	
	var mes1;
	var begin;
	var ano1;
	var dia2;	
	var mes2;
	var ano2;

	if(str1 != '' && str2 != ''){
		dia1 = str1.charAt(0) == "0"?parseInt(str1.substring(1,2)):parseInt(str1.substring(0,2));	
		mes1 = str1.charAt(3) == "0"?parseInt(str1.substring(4,5)):parseInt(str1.substring(3,5));
		begin = str1.charAt(6) == "0"?(str1.charAt(7) == "0"?(str1.charAt(8) == "0" ? 9 : 8) : 7) : 6;
		ano1 = parseInt(str1.substring(begin, 10));
		
		dia2 = str2.charAt(0) == "0"?parseInt(str2.substring(1,2)):parseInt(str2.substring(0,2));	
		mes2 = str2.charAt(3) == "0"?parseInt(str2.substring(4,5)):parseInt(str2.substring(3,5));
		begin = str2.charAt(6) == "0"?(str2.charAt(7) == "0"?(str2.charAt(8) == "0" ? 9 : 8) : 7) : 6;
		ano2 = parseInt(str2.substring(begin, 10));
		
		if(ano1 > ano2){
			return 1;
		}else if(ano1 < ano2){
			return -1;
		}else if(mes1 > mes2){
			return 1;
		}else if(mes1 < mes2){
			return -1;
		}else if(dia1 > dia2){
			return 1;
		}else if(dia1 < dia2){
			return -1;
		}else{
			return 0;
		}
	}else{
		return false;
	}
}

//Função para validar os dados dos formularios
function validaDatas(dataMenor,dataMaior){
	if ((compararData(dataMenor.value, dataMaior.value)>0) && (dataMenor.value != '') && (dataMenor.value != '') ){
		alert ('A '+dataMaior.id+' deve ser igual ou maior que a '+dataMenor.id);
		dataMaior.focus();
	}
}			

function diferencaDias(str1,str2){
	var dia1;	
	var mes1;
	var begin;
	var ano1;
	var dia2;	
	var mes2;
	var ano2;
	var diferenca;

	if(str1 != '' && str2 != ''){
		dia1 = str1.charAt(0) == "0"?parseInt(str1.substring(1,2)):parseInt(str1.substring(0,2));	
		mes1 = str1.charAt(3) == "0"?parseInt(str1.substring(4,5)):parseInt(str1.substring(3,5));
		begin = str1.charAt(6) == "0"?(str1.charAt(7) == "0"?(str1.charAt(8) == "0" ? 9 : 8) : 7) : 6;
		ano1 = parseInt(str1.substring(begin, 10));
		
		dia2 = str2.charAt(0) == "0"?parseInt(str2.substring(1,2)):parseInt(str2.substring(0,2));	
		mes2 = str2.charAt(3) == "0"?parseInt(str2.substring(4,5)):parseInt(str2.substring(3,5));
		begin = str2.charAt(6) == "0"?(str2.charAt(7) == "0"?(str2.charAt(8) == "0" ? 9 : 8) : 7) : 6;
		ano2 = parseInt(str2.substring(begin, 10));

		mes1=Math.floor(mes1)-1;
		var data1 = new Date(ano1,mes1,dia1);
		mes2=Math.floor(mes2)-1;
		var data2 = new Date(ano2,mes2,dia2);
		
		i = compararData(str1,str2);
		
		if(i >= 0){
			diferenca = data1.getTime() - data2.getTime();
		}else{
			diferenca = data2.getTime() - data1.getTime();
		}

		diferenca = Math.floor(diferenca / (1000 * 60 * 60 * 24));
		return diferenca;
	}
	return 0;
}

function cargaHiddenCombo(hid, combo){
	hid.value=combo.options[combo.options.selectedIndex].value;
}

function cargaHiddenRadio(valor, hid){
	hid.value=valor;
}

//Valida a extensao do arquivo
function validarFile(campo){
	var flag = false
	var extensao = campo.value.substring(campo.value.length-4,campo.value.length).toUpperCase();
		
	if (extensao.charAt(0) == "."){
		if(extensao == ".DOC" || extensao == ".PDF" || extensao == ".RTF" || extensao == ".XLS"){
			flag = true;
		}
	}
	
	return flag;
}

//Verifica se a extens?o escolhida ? igual a do arquivo selecionado
function validarExtensao(texto1, texto2){
	var extensao = texto1.substring(texto1.length-3,texto1.length).toUpperCase();
	if(extensao == texto2.toUpperCase()){
		return true;
	}
	return false;
}

//Valida CheckBox
function validarCheck(campo){
	var flag=false;
	for (i=0; i<campo.length; i++) {
		if (campo[i].checked==true){
			flag = true;
		}
	}
	return flag;
}
//Fun??o para testar o maximo de caracteres de um text Area
function maxSize(campo,tamanho){
	if (campo.value.length >= tamanho){
		event.keyCode=0;
		if (campo.value.length > tamanho){
			campo.value = campo.value.substring(0,tamanho);
		}
	}
}

function contacampo(campo, tamtxt, tamanho, tipo) {
	if (campo.value.length > tamanho){
		if (campo.value.length > tamanho){
			campo.value = campo.value.substring(0,tamanho);
			if (tipo == 1) { //case seja to tipo onBlur
				alert('Este campo excedeu o limite de caracteres. \nOs caracteres excedentes foram eliminados!');
			}
		}
	}
	tamtxt.value = tamanho-campo.value.length;
}

//Fun??o mostra/esconde(DIV)
function mostra(objeto){
divColl = document.all.tags("DIV");
	for (i=0; i<divColl.length; i++){ 
		whichEl = divColl(i); 
		if ((whichEl.name==objeto)){			
			divColl(i).className = 'mostra';
		}
	}
}
function Esconde(objeto){
divColl = document.all.tags("DIV");
	for (i=0; i<divColl.length; i++){ 
		whichEl = divColl(i); 
		if ((whichEl.name==objeto)){
		     divColl(i).className = 'esconde';
		}
	}
}
function MostraID(nomeID){
	var ch = nomeID;
	obj = document.all[ch];
	obj.style.display = 'block';
}
function EscondeID(nomeID){
	var ch = nomeID;
	obj = document.all[ch];
	obj.style.display = 'none';
}
function mostraEscondeSimples(nome)
{
	var ch = nome;
	obj = document.all[ch];
	if(obj.style.display == 'block' )
		obj.style.display = 'none';
	else
		obj.style.display = 'block';
}

function mostraEsconde(objeto){
divColl = document.all.tags("DIV");
	for (i=0; i<divColl.length; i++){ 
		whichEl = divColl(i); 
		if ((whichEl.name==objeto)){
			divColl(i).className = 'mostra';
		}else{
			divColl(i).className =  'esconde';
		}
	}
}
function validarCNPB(obj){
	numeroPlano = obj.value;
	numeroPlano = RetiraCaracteresInvalidos(numeroPlano,10);
	if((numeroPlano == digitoVerificadorPlano(numeroPlano.substr(0,8))) || (obj.value == '')){
		return true;
	}else{	
		alert('Número de CNPB inválido!');
		obj.value = '';
		obj.focus();
	}
}
function digitoVerificadorPlano(numeroPlano){
	digito = 0;
	if(numeroPlano.length < 10){
		for(i = 1; i < numeroPlano.length+1; i++){
			digito = digito + (11 - i) * parseInt(""+numeroPlano.charAt(i-1));
		}
		digito = 11 - (digito % 11);
		if(digito > 9 ){
			digito = 1;
		}
		return digitoVerificadorPlano(numeroPlano+digito);
	}
	return numeroPlano;
}


