//Alterado em 12/02/2009 as 15:33 - Comprar

   iluminada1 = new Image(39,38)
   iluminada1.src = "img/icone_anuncia_veiculoOff.jpg"
   apagada1 = new Image(39,38)
   apagada1.src = "img/icone_anuncia_veiculo.jpg"
   iluminada2 = new Image(39,38)
   iluminada2.src = "img/icone_alterar_anuncioOff.jpg"
   apagada2 = new Image(39,38)
   apagada2.src = "img/icone_alterar_anuncio.jpg"
   iluminada3 = new Image(39,38)
   iluminada3.src = "img/icone_estatisticaOff.jpg"
   apagada3 = new Image(39,38)
   apagada3.src = "img/icone_estatistica.jpg"
   iluminada4 = new Image(39,38)
   iluminada4.src = "img/icone_situacaoOff.jpg"
   apagada4 = new Image(39,38)
   apagada4.src = "img/icone_situacao.jpg"


//Formulário de Pesquisa Avaçada
	function submeterComprar() {
	var df_pesq     	= document.form_comprar;
	var fabrica 		= df_pesq.fabrica.value;
	var veiculo   		= df_pesq.veiculo.value;
	var ano_inicial		= parseInt(df_pesq.ano_inicial.value);
	var ano_final  		= parseInt(df_pesq.ano_final.value);
	var preco_inicial	= parseInt(df_pesq.preco_inicial.value);
	var preco_final  	= parseInt(df_pesq.preco_final.value);
	var erro_pesq		= "Problema(s) ocorrido(s):";
	var envia_pesq		= true;
	
	if (ano_final < ano_inicial) {
		erro_pesq += "\n- Ano final menor que inicial";
		envia_pesq = false;
	}
	if (ano_final != '' && ano_inicial == '') {
		erro_pesq += "\n- Selecione o ano inicial";
		envia_pesq = false;
	}
	if (preco_final < preco_inicial) {
		erro_pesq += "\n- Preço final menor que inicial";
		envia_pesq = false;
	}
	if (preco_final != '' && preco_inicial == '') {
		erro_pesq += "\n- Selecione o preço inicial";
		envia_pesq = false;
	}
	if (envia_pesq) {
		df_pesq.submit();
	} else {
		alert(erro_pesq);	
	}
}

	//LOGIN
	function submeterLogin() {
	var df            = document.form_login;
	var login_usuario = df.login_usuario.value;
	var login_senha   = df.login_senha.value;
	
	if (login_usuario == "" || login_senha == ""){
		alert('Preencher o campo Usuário e Senha!');
	}
	else{
		df.submit();
	}
}

	//Gera Boleto
	function gerarBoleto() {
		var fm_boleto = document.form_boleto;
		fm_boleto.submit();
	}
	

	//CPF
	function submeterCpf() {
		var fm_cpf 		= document.form_verifica_cpf;
		var erro_cpf	= "Problema(s) ocorrido(s):";
		var envia_cpf	= true;
		
		if (fm_cpf.cpf.value == "" || fm_cpf.cpf.value.length != 11){
			erro_cpf += "\n- Preencher o CPF com 11 digitos\n Sem ponto(.) e traço(-)";
			envia_cpf = false;
		}
		if (fm_cpf.data_nasc.value == ""){
			erro_cpf += "\n- Preencher o campo data nascimento!";
			envia_cpf = false;
		}
		if (envia_cpf){
			var cpf   = fm_cpf.cpf.value;
			var tipo  = fm_cpf.tipo.value;
			var plano = fm_cpf.plano.value;
			fm_cpf.submit();
		}
		else{
			alert(erro_cpf);	
		}
	}


	//ESQUECEU SENHA
	function submeterEsqueceu() {
		var fm_esq 		= document.form_esqueceu;
		var erro_esq	= "Problema(s) ocorrido(s):";
		var envia_esq	= true;
		
		if (fm_esq.cpf.value == "" && fm_esq.email.value == ""){
			erro_esq += "\n- Preencher um dos campos!";
			envia_esq = false;
		}
		
		if (fm_esq.cpf.value != "" && fm_esq.cpf.value.length != 11){
			erro_esq += "\n- Preencher o CPF com 11 digitos\nSem ponto(.) e traço(-)!";
			envia_esq = false;
			fm_esq.cpf.focus()
		}
		if (fm_esq.email.value != ""){
			var tamanho = fm_esq.email.value.length;
			var val 	= '';
			var arroba 	= 0;
			var ponto 	= 0;
			var virgula = 0;
			for(i=0; i < tamanho; i++){
				val = fm_esq.email.value.charAt(i);
				if(val == '@'){
					arroba = 1;
				}
				if(val == '.'){
					ponto = 1;
				}
				if(val == ','){
					virgula = 1;
				}
			}
			if(((arroba == 0 || ponto == 0 || virgula == 1) && fm_esq.email.value != "") || (fm_esq.email.value.length < 7 && fm_esq.email.value != "")){
				erro_esq += "\n- O email deve ser válido!";
				envia_esq = false;
				fm_esq.email.value = "";
				fm_esq.email.focus();
			}
		}
		if (envia_esq) {
			fm_esq.submit();
		} else {
			alert(erro_esq);	
		}
	}


	
	//Cadastro cliente
	function submeterCadastro() {
		var fm_cad 		= document.formulario_dados_pessoais;
		var erro_senha 	= "Problema(s) ocorrido(s):";
		var envia_cad	= true;
		var extensao 	= fm_cad.foto_loja.value.substring(fm_cad.foto_loja.value.length-3,fm_cad.foto_loja.value.length);
		extensao = extensao.toLowerCase();
		
		//alert(extensao);
		
		if (fm_cad.foto_loja.value != "") {
			if (extensao != "jpg") {
				erro_senha += "\n- A foto tem que ser no formato JPG";
				envia_cad = false;
			}
		}
		if (fm_cad.nome.value == "") {
			erro_senha += "\n- Nome vazio";
			envia_cad = false;
		}
		if (fm_cad.fone.value == "") {
			erro_senha += "\n- Fone vazio";
			envia_cad = false;
		}
		if (fm_cad.data_nasc.value == "") {
			erro_senha += "\n- Data nascimento vazio";
			envia_cad = false;
		}
		if (fm_cad.email.value == "") {
			erro_senha += "\n- Email vazio";
			envia_cad = false;
		}
		if (fm_cad.cidade.value == "") {
			erro_senha += "\n- Cidade vazio";
			envia_cad = false;
		}
		if (fm_cad.senha.value == "") {
			erro_senha += "\n- Senha vazio";
			envia_cad = false;
		}
		if (fm_cad.conf_senha.value == "") {
			erro_senha += "\n- Confirmação vazio";
			envia_cad = false;
		}
		if (fm_cad.autorizo.checked == false) {
			erro_senha += "\n- Precisa autorizar receber email";
			envia_cad = false;
		}
		
		if (envia_cad) {
			if (fm_cad.senha.value != fm_cad.conf_senha.value){
					alert('Senha diferente de confirmação!');
					fm_cad.senha.focus()
				}else{
					fm_cad.submit();
					fm_cad.prosseguirCli.disabled = true;
				}
		} else {
			alert(erro_senha);
		}
	}

	//Cadastro Veiculo no Plano diferente de Gratuito
	function submeterCadveic() {
		var fm_veic = document.form_busca_veiculo;
		var alerta 	= "Problema(s) ocorrido(s):";
		var envia_veic = true;
		
			if (fm_veic.fabrica.value == 0){
				alerta = alerta+"\nSelecionar a Fabrica";
				envia_veic = false;
			}
			if (fm_veic.veiculo.value == 0 || fm_veic.veiculo.value == "clique aqui" || fm_veic.veiculo.value == "Clique aqui"){
				alerta = alerta+"\nSelecionar o Veículo";
				envia_veic = false;
			}
			if (fm_veic.motor.value == "Motor"){
				alerta = alerta+"\nMotorização";
				envia_veic = false;
			}
			if (fm_veic.ano.value == "" || fm_veic.ano.value.length != 4){
				alerta = alerta+"\nPreencher o ano com 4 digitos";
				envia_veic = false;
			}
			if (fm_veic.cor_carro.value == 0){
				alerta = alerta+"\nSelecionar a cor";
				envia_veic = false;
			}
			
		if (envia_veic){
			fm_veic.submit();
			fm_veic.prosseguirCar.disabled = true;
		} else {
			alert(alerta);	
		}
	}

	//Cadastro Veiculo no Plano Gratuito
	function submeterCadveicGratuito() {
		var fm_veic = document.form_busca_veiculo;
		var alerta 	= "Problema(s) ocorrido(s):";
		var envia_veic = true;
		
			if (fm_veic.fabrica.value == 0){
				alerta = alerta+"\nSelecionar a Fabrica";
				envia_veic = false;
			}
			if (fm_veic.veiculo.value == 0 || fm_veic.veiculo.value == "clique aqui" || fm_veic.veiculo.value == "Clique aqui"){
				alerta = alerta+"\nSelecionar o Veículo";
				envia_veic = false;
			}
			if (fm_veic.motor.value == "Motor"){
				alerta = alerta+"\nMotorização";
				envia_veic = false;
			}
			if (fm_veic.ano.value == "" || fm_veic.ano.value.length != 4){
				alerta = alerta+"\nPreencher o ano com 4 digitos";
				envia_veic = false;
			}
			if (fm_veic.preco.value == "" || fm_veic.preco.value == 0){
				alerta = alerta+"\nPreencher o campo preço";
				envia_veic = false;
			}
			if (fm_veic.cor_carro.value == 0){
				alerta = alerta+"\nSelecionar a cor";
				envia_veic = false;
			}
			
		if (envia_veic){
			fm_veic.submit();
			fm_veic.prosseguirCar.disabled = true;
		} else {
			alert(alerta);	
		}
	}

	
	//Enviar Proposta
	function submeterProposta() {
		var fm_proposta = document.fm_enviar_proposta;
		
		if (fm_proposta.nome.value == "" || fm_proposta.telefone.value == "" || fm_proposta.celular.value == "" || fm_proposta.cidade.value == "" || fm_proposta.email.value == "" || fm_proposta.observacoes.value == "") {
			alert('Preencher todos os campos!');	
		} else {
			fm_proposta.submit();
			fm_proposta.enviarProposta.disabled = true;
		}
	}

	//Indicar para um amigo
	function submeterAmigo() {
		var fm_indicar = document.form_envia_amigo;
		
		if (fm_indicar.nome.value == "" || fm_indicar.email.value == "" || fm_indicar.email_amigo.value == "") {
			alert('Preencher todos os campos!');	
		} else {
			fm_indicar.submit();
		}
	}


	//Funções da pesquisa pesquisa.php
	function verificaFabricaPesquisa() {
		var tipo_id = document.form_resultado_pesquisa.tipo.value;
		buscaFabrica("buscas.php?ajax=sim&&acao=busca_fabrica&tipo=" + tipo_id);
	}

	function verificaVeiculoPesquisa() {
		var fabrica_id = document.form_resultado_pesquisa.fabrica.value;
		buscaVeiculo("buscas.php?ajax=sim&&acao=busca_veiculo&fabrica_id=" + fabrica_id);
	}

	function verificaModeloPesquisa() {
		var modelo_id = document.form_resultado_pesquisa.veiculo.value;
		buscaModelo('buscas.php?ajax=sim&&acao=busca_modelo&modelo_id=' + modelo_id);
	}
	//Final funções da pesquisa pesquisa.php
	
	//Funções da pesquisa revendedor.php
	function verificaFabricaRevendedor() {
		var tipo_id = document.form_pesquisa_revendedor.tipo.value;
		buscaFabrica("buscas.php?ajax=sim&&acao=busca_fabrica&tipo=" + tipo_id);
	}

	function verificaVeiculoRevendedor() {
		var fabrica_id = document.form_pesquisa_revendedor.fabrica.value;
		buscaVeiculo("buscas.php?ajax=sim&&acao=busca_veiculo&fabrica_id=" + fabrica_id);
	}

	function verificaModeloRevendedor() {
		var modelo_id = document.form_pesquisa_revendedor.veiculo.value;
		buscaModelo('buscas.php?ajax=sim&&acao=busca_modelo&modelo_id=' + modelo_id);
	}
	//Final funções da pesquisa revendedor.php

	function verificaFabrica() {
		var tipo_id = document.form_busca_veiculo.tipo.value;
		buscaFabrica("busca_todas.php?ajax=sim&acao=busca_fabrica&tipo=" + tipo_id);
	}
	
	function verificaVeiculo() {
		var fabrica_id = document.form_busca_veiculo.fabrica.value;
		buscaVeiculo("busca_todas.php?ajax=sim&acao=busca_veiculo&fabrica_id=" + fabrica_id);
	}

	function verificaModelo() {
		var modelo_id = document.form_busca_veiculo.veiculo.value;
		buscaModelo('busca_todas.php?ajax=sim&acao=busca_modelo&modelo_id=' + modelo_id);
	}


	function verificaVeiculo2() {
		var fabrica_id = document.form_comp_veiculo.fabrica.value;
		buscaVeiculo("buscas.php?ajax=sim&acao=busca_veiculo&fabrica_id=" + fabrica_id);
	}

	function verificaModelo2() {
		var modelo_id = document.form_comp_veiculo.veiculo.value;
		buscaModelo('buscas.php?ajax=sim&acao=busca_modelo&modelo_id=' + modelo_id);
	}

	function verificaVeiculo3() {
		var fabrica_id = document.form_cad_veiculo.fabrica.value;
		buscaVeiculo("buscaas.php?ajax=sim&acao=busca_veiculo&fabrica_id=" + fabrica_id);
	}

	function verificaModelo3() {
		var modelo_id = document.form_cad_veiculo.veiculo.value;
		buscaModelo('buscas.php?ajax=sim&acao=busca_modelo&modelo_id=' + modelo_id);
	}


 /**
 * Função Pai: controlaCampos('campo','tipo de campo','teclas permitidas');
 * Versão: 0.1
 */
 
 
  function RadioHab(){
	for(var i=0; i < document.getElementsByName('tipo').length; i++){
		if(document.getElementsByName('tipo')[i].checked == true){
			var result1 = document.getElementsByName('tipo')[i].value;
			break;
		}
	}
  
	    for(var y = 0; y< document.formulario.length; y++){
      if(document.formulario.plano[y].checked){
        var result2 = document.formulario.plano[y].value;
		var resp2 = result2;
        break;
      }
    }
}
 
 
	// Variáveis
	var teclas
	var tecPermitido = new Array();
	
	/* Teclas Permitidas por Padrão*/
	
	tecPermitido[0] 	= 8;  // backspace 
	tecPermitido[1] 	= 46; // delete
	tecPermitido[2] 	= 13; // enter
	tecPermitido[3] 	= 37; // seta esquerda
	tecPermitido[4] 	= 38; // seta direita
	tecPermitido[5] 	= 39; // seta baixo
	tecPermitido[6] 	= 40; // seta cima
	tecPermitido[7]  	= 9;  // tabulação
	tecPermitido[8]  	= 16; // shift
	tecPermitido[9]  	= 17; // ctrl
	tecPermitido[10] 	= 18; // alt
	tecPermitido[11] 	= 33; // page up
	tecPermitido[12] 	= 34; // page down
	tecPermitido[13] 	= 35; // end
	tecPermitido[14] 	= 36; // home

	/**
	* Function
	*  - Nome: controlaCampos(campo,campoTipo,novasTeclas);
	*  - Parâmetros: campo				= campo que será verificado com a função
	*				 tipo 				= tipo de verificação para o campo
	*				 //novasTeclas		= novas teclas permitadas (v 0.2)
	*
	*
	*  Exemplo: // informa que o campo deve conter um cpf válido
	*    onKeyDown="controlaCampo(this,'cpf');"
	*/

	function controlaCampo(campo,evento,tipo)
	{
		// window.alert(campo);
		// Recebe a Tecla Pessionada
		var ie = (typeof window.ActiveXObject != 'undefined');
		if (ie){
		   var tecla 	  = event.keyCode;
		   var teclaShift = evento.shiftKey;
		} else {
		   var tecla 	  = evento.which;
		   var teclaShift = evento.shiftKey;
		}
		
		// Nome do campo
		var nome = campo.name;
		// Valor do campo
		var valor = campo.value;

		// Verifica o tipo de campo para verificação
		switch (tipo)
		{
			////////////////
			case "preco" : // se o campo preco for igual a zero, ---> onBlur
				if (campo.value == "" || campo.value == 0){
					alert('No plano gratuito o preço é obrigatório!');
					campo.value = "";
					campo.focus();
				}
			break;
			////////////////
			case "numero" : // se o campo for número, ---> onKeyDown
				if ((tecla < 45 || tecla > 57) && (tecla < 96 || tecla > 105) && verificaTeclas(tecla) == false){
					if (ie){
					   event.returnValue = false;
					} else {
					   evento.preventDefault();
					}
				}
			break;
			////////////////
			case "texto" : // se o campo for texto, ---> onKeyDown
				if (((tecla > 44 && tecla < 58) || (tecla > 95 && tecla < 106)) && verificaTeclas(tecla) == false){
					if (ie){
					   event.returnValue = false;
					} else {
					   evento.preventDefault();
					}
				}
			break;
			////////////////
			case "email" : // verifica se existe o arroba '@' e um ponto '.', ---> onBlur
					var tamanho 	= campo.value.length;
					var nomeEmail 	= campo.value;
					var dominio 	= nomeEmail.split("@");
					var w			= nomeEmail.substring(0,4);

					var val 	= '';
					var arroba 	= 0;
					var ponto 	= 0;
					var virgula = 0;
					for(i=0; i < tamanho; i++){
						val = campo.value.charAt(i);
						if(val == '@'){
							arroba = 1;
						}
						if(val == '.'){
							ponto = 1;
						}
						if(val == ','){
							virgula = 1;
						}
					}
					if(((arroba == 0 || ponto == 0 || virgula >= 1) && campo.value != "") || (campo.value.length < 7 && campo.value != "") || dominio[1] == "hotmail.com.br" || dominio[1] == "hotmil.com" || dominio[1] == "gmail.com.br" || w == "www."){
						alert('O email deve ser válido!');
						campo.value = "";
						campo.focus();
					}
			break;
			////////////////
			case "semAspas" : // se o campo for texto, ---> onKeyDown
				if (tecla == 39 || tecla == 34){
					if (ie){
					   event.returnValue = false;
					} else {
					   evento.preventDefault();
					}
				}
			break;
			////////////////
			case "cep" : // coloca o traço no cep, ---> onKeyUp
				if((valor.length == 5) && verificaTeclas(tecla) == false){
					campo.value += "-";
				}
			break;
			////////////////
			case "hora" : // coloca os dois pontos na hora, ---> onKeyUp
				if((valor.length == 2) && verificaTeclas(tecla) == false){
					campo.value += ":";
				}
			break;
			////////////////
			case "fone" : // coloca os parenteses no ddd, ---> onKeyDown
				if((valor.length == 2) && verificaTeclas(tecla) == false){
					campo.value = "("+valor+") ";
				}
			break;
			////////////////
			case "data" : // Coloca as barras na data, ---> onKeyUp
				var dataAtual = new Date();
				var anoAtual = dataAtual.getFullYear();
				if(((valor.length == 2) || (valor.length == 5)) && verificaTeclas(tecla) == false){
					campo.value += "/";
				}
				if(valor.length == 10){
					var div    = valor.split("/");
					var mostra = '';
					if(div[0] < 1 || div[0] > 31){
						mostra += "\nDia inválido!";
					}
					if(div[1] < 1 || div[1] > 31){
						mostra += "\nMês inválido!";
					}
					if(div[2] < 1900){
						mostra += "\nAno inválido!";
					}
					if(div[2] > anoAtual){
						mostra += "\nAno inválido!";
					}
					if((div[0] < 1 || div[0] > 31) || (div[1] < 1 || div[1] > 12) || div[2] < 1900 || div[2] > anoAtual){
						alert('Data incorreta: '+campo.value+'\n'+mostra);
						campo.value = "";
					}
				}
			break;
			////////////////
			case "cnpj" : // Formata o campo cnpj, ---> onKeyUp
				if(((valor.length == 2) || (valor.length == 6)) && verificaTeclas(tecla) == false){
					campo.value += ".";
				}
				else if((valor.length == 10) && verificaTeclas(tecla) == false){
					campo.value += "/";
				}
				else if((valor.length == 15) && verificaTeclas(tecla) == false){
					campo.value += "-";
				}
				else if(valor.length > 17 && verificaTeclas(tecla) == false){
					var CNPJ = valor;
					var erro = 0;
					if (CNPJ.length < 18) erro = 1; 
					if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-")){
						if (erro.length == 0) erro = 1;
						}
						//substituir os caracteres que não são números
						if(document.layers && parseInt(navigator.appVersion) == 4){
							x = CNPJ.substring(0,2);
							x += CNPJ. substring (3,6);
							x += CNPJ. substring (7,10);
							x += CNPJ. substring (11,15);
							x += CNPJ. substring (16,18);
							CNPJ = x; 
						} else {
							CNPJ = CNPJ. replace (".","");
							CNPJ = CNPJ. replace (".","");
							CNPJ = CNPJ. replace ("-","");
							CNPJ = CNPJ. replace ("/","");
						}
						var nonNumbers = /\D/;
						if (nonNumbers.test(CNPJ)) erro = 1; 
						var a = [];
						var b = new Number;
						var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
						for (i=0; i<12; i++){
							a[i] = CNPJ.charAt(i);
							b += a[i] * c[i+1];
						}
						if ((x = b % 11) < 2) { a[12] = 0 } else { a[12] = 11-x }
						b = 0;
						for (y=0; y<13; y++) {
							b += (a[y] * c[y]); 
						}
						if ((x = b % 11) < 2) { a[13] = 0; } else { a[13] = 11-x; }
						if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])){
							erro = 1;
						}
						if (erro == 1){
							alert("CNPJ Inválido!");
							campo.value = '';
							campo.focus();
							return false;
					}
					if (ie){
					   event.returnValue = false;
					} else {
					   evento.preventDefault();
					}
				}
			break;
			////////////////
			case "cpf" : // verifica se o cpf é válido, ---> onKeyUp
				if((valor.length == 11) && verificaTeclas(tecla) == false){
					// Recebe o valor digitado no campo
					var valor_cpf = campo.value; 
					var cpf = '';
					for(i=0; i < valor_cpf.length; i++){
						if(valor_cpf.charAt(i) != "-" && valor_cpf.charAt(i) != "."){
							cpf += valor_cpf.charAt(i);
						}
					}
					// aqui começa a checagem do cpf
					var posicao, i, soma, dv, dv_informado;
					var digito = new Array(10);
					// retira os dois últimos dígitos do número informado
					dv_informado = cpf.substr(9, 2); 
					// desemembra o número do cpf na array digito
					for (i=0; i<=8; i++) {
					  digito[i] = cpf.substr( i, 1);
					}
					// calcula o valor do 10º dígito da verificação
					posicao = 10;
					soma = 0;
				   for (i=0; i<=8; i++) {
					  soma = soma + digito[i] * posicao;
					  posicao = posicao - 1;
				   }
					digito[9] = soma % 11;
					if (digito[9] < 2) {
						digito[9] = 0;
					}
					else {
					   digito[9] = 11 - digito[9];
					}
					// calcula o valor do 11º dígito da verificação
					posicao = 11;
					soma = 0;
				   for (i=0; i<=9; i++) {
					  soma = soma + digito[i] * posicao;
					  posicao = posicao - 1;
				   }
				   digito[10] = soma % 11;
				   if (digito[10] < 2) {
						digito[10] = 0;
				   }
				   else {
						digito[10] = 11 - digito[10];
				   }
					// verifica se os valores dos dígitos verificadores conferem
				   dv = digito[9] * 10 + digito[10];
				   
				   if (dv != dv_informado || 
					   cpf == '11111111111' || 
					   cpf == '22222222222' || 
					   cpf == '33333333333' || 
					   cpf == '44444444444' || 
					   cpf == '55555555555' || 
					   cpf == '66666666666' || 
					   cpf == '77777777777' || 
					   cpf == '88888888888' || 
					   cpf == '99999999999' || 
					   cpf == '00000000000') {
					  alert("CPF inválido!");
					  campo.value = '';
					  campo.focus();
					  return false;
				   } 
				}
			break;
		}
	}
	
	
	/**
	* Function
	*  - Nome: verificaTeclas
	*  - Função: -
	*  - Usado pela função: controlaCampos(...)
	*/	
	
	function verificaTeclas(tecla)
	{
		var cg,verifica;

		for (cg = 0; cg < tecPermitido.length; cg++)
		{
			if (tecla == tecPermitido[cg])
				verifica = true;
			else
				if (verifica != true)
					verifica = false;
		}
		
		return verifica;
	}
	
 /**
 * Fim Função Pai
 */
 
 
 //#################################################################################################
 
	/**
	 * Função para submeter formularios com type=button.
	 * Deve-se colocar o id de todos os inputs que se deseja controlar.
	 * Ex: onClick="submeter('this','cnpj=>CNPJ,cpf=>CPF,fone=>Telefone');"
	 * Neste exemplo no formulario chamado 'cadastro' foi 
	 * passado o id cnpj, cpf e o fone para utilizar-se como
	 * campos obrigatórios.
	*/

	function submeter(botao,valores){
		if(valores != ''){
			var vals 		= Array();
			var formulario  = botao.form;
			if(valores.search(',') > 0){
				vals	= valores.split(',');
			} else {
				vals[0]	= valores;
			}
		
			var junta	= 'Campo(s) obrigatório(s) não preenchido(s): ';
			var conta	= 0;
			for(i=0; i < vals.length; i++){
				var campo 		= vals[i];
				var div			= campo.split("=>");
				var nome		= div[0];
				var descricao	= div[1];
				var campoAtual	= document.getElementById(nome);
				if(campoAtual.value == ""){
					junta += '\n- '+descricao; //.toUpperCase();
					conta++;
				}
				
			}
	
			if(conta > 0){
				alert(junta);
			} else {
				document.getElementById(formulario.name).submit();
				//document.getElementById(formulario.name).reset();
			}
		}
	}


	
	
 //#################################################################################################
 
	/**
	 * Função para selecionar varios options num select. (não multiply)
	 * Deve-se colocar o id do formulário.
	 * Ex: <select name='xxx' onClick='marcador(this,"cadastro","usuarios");'>
	 * Neste exemplo o formulario é chamado 'cadastro', também foi 
	 * passado o nome do input que é 'usuarios'.
	*/
	function marcador(objeto,nomeInput){
		var formulario	= objeto.form;
		// pega o indice do option selecionado
		var num	= objeto.selectedIndex;
		if(objeto.value != ""){
			if(objeto.options[num].style.background == "#ffffff" || objeto.options[num].style.background == "" 
				|| objeto.options[num].style.backgroundColor == "rgb(255, 255, 255)"){
				objeto.options[num].style.background = '#ffaaaa';
				// cria o elemento e seta seus atributos
				var elemento = document.createElement("input");
				elemento.setAttribute('type','hidden');
				elemento.setAttribute('name',nomeInput+'[]');
				elemento.setAttribute('value',objeto.value);
				elemento.setAttribute('id','marcador_'+num);
				// adiciona o input no formulario
				formulario.appendChild(elemento);
			} else {
				objeto.options[num].style.background = '#ffffff';
				// remove o input do formulario
				formulario.removeChild(document.getElementById('marcador_'+num));
			}
			var proximo = num+1;
			if(objeto.options[num]){
				objeto.options[num].selected = true;
			}
			// remove a seleção do input
			objeto.selectedIndex = -1;
		}
	}
	
	
	
 //#################################################################################################
 
 	/**
	 * Função para deixar amarelo os campos texto com foco
	 * Ex: <select name='xxx' type='text' onFocus='foco(this);' onBlur='foco(this);'>
	*/
	function foco(t) {
		var cor = t.style.backgroundColor;
		//alert(cor);
		if (cor == "") {
			t.style.backgroundColor="#ffffcc";
		}
		if (cor == "#ffffff" || cor == 'rgb(255, 255, 255)') {
			t.style.backgroundColor="#ffffcc";
		}
		if (cor == "#ffffcc" || cor == 'rgb(255, 255, 204)') {
			t.style.backgroundColor="#ffffff";
		}	
	}