/*
Função para formatar os mais diversos valores, datas, horas, telefones, cpf, cnpj.... em fim
	Exemplo de Uso
	Data:<input type="text" size="20" onkeypress="return Formata2(this, '99/99/9999', event);">
	CPF:<input type="text" size="20" onkeypress="return Formata2(this, '999.999.999-99', event);">
	Telefone:<input type="text" size="20" onkeypress="return Formata2(this, '(99)9999-9999', event);">
	Código:<input type="text" size="20" onkeypress="return Formata2(this, '99-999', event);">
*/

function Formata2(objeto, sMask, evtKeyPress) {
    var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

if(document.all) { // Internet Explorer
    nTecla = evtKeyPress.keyCode;
} else if(document.layers) { // Nestcape
    nTecla = evtKeyPress.which;
} else {
   nTecla = evtKeyPress.which;
    if (nTecla == 8) {
        return true;
    }
}

sValue = objeto.value;
// Limpa todos os caracteres de formatação que
// já estiverem no campo.
sValue = sValue.toString().replace( "-", "" );
sValue = sValue.toString().replace( "-", "" );
sValue = sValue.toString().replace( ".", "" );
sValue = sValue.toString().replace( ".", "" );
sValue = sValue.toString().replace( "/", "" );
sValue = sValue.toString().replace( "/", "" );
sValue = sValue.toString().replace( ":", "" );
sValue = sValue.toString().replace( ":", "" );
sValue = sValue.toString().replace( "(", "" );
sValue = sValue.toString().replace( "(", "" );
sValue = sValue.toString().replace( ")", "" );
sValue = sValue.toString().replace( ")", "" );
sValue = sValue.toString().replace( " ", "" );
sValue = sValue.toString().replace( " ", "" );
fldLen = sValue.length;
mskLen = sMask.length;

i = 0;
nCount = 0;
sCod = "";
mskLen = fldLen;

while (i <= mskLen) {
  bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/") || (sMask.charAt(i) == ":"))
  bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

  if (bolMask) {
	sCod += sMask.charAt(i);
	mskLen++; }
  else {
	sCod += sValue.charAt(nCount);
	nCount++;
  }
  i++;
}

objeto.value = sCod;
if (nTecla != 8) { // backspace
  if (sMask.charAt(i-1) == "9") { // apenas números...
	return ((nTecla > 47) && (nTecla < 58)); } 
  else { // qualquer caracter...
	return true;
  } 
}
else {
  return true;
}
}


function foco(campo){
	globalvar = campo;
	setTimeout("globalvar.focus()",250);
}


function changeColor(obj){
	obj.style.backgroundColor = '#58C6EF';
}

//Funcao para caixa alta
	function caixaalta(Wparam){
		Wparam.value = Wparam.value.toUpperCase();
	}

//Funcao para caixa baixa
	function caixabaixa(Wparam){
		Wparam.value = Wparam.value.toLowerCase();
	}
	
function data(wparam) {
	var campo = wparam;
	if (campo.value.length == 2)
			campo.value += "/";
	if (campo.value.length == 5)
			campo.value += "/";		
}	

function mascara_cep(wparam) {
	var campo = wparam;
	if (campo.value.length == 5)
			campo.value += "-";
}	

function datacartao(wparam) {
	var campo = wparam;
	if (campo.value.length == 2)
			campo.value += "/";
}	

function hora(wparam) {
  var campo = wparam;
	if (campo.value.length == 2)
			campo.value += ":";
}	


function isNumberKey(Key)
{
   var charCode = (Key.which) ? Key.which : event.keyCode
   if (charCode < 47 || charCode > 57)
	  return false;
   return true;
}

	

//Função para validar CPF

function validaCPF(campo) {
	erro = 0;
	if (isNaN(campo.value)){
		alert("CPF inválido... tente novamente!");
		campo.select();
		foco(campo);
		return false;
	}

	if(campo.value==""){
		return false;
	}

	if (campo.value.length != 11 || campo.value == "00000000000" || campo.value == "11111111111" ||
		campo.value == "22222222222" || campo.value == "33333333333" || campo.value == "44444444444" ||
		campo.value == "55555555555" || campo.value == "66666666666" || campo.value == "77777777777" ||
		campo.value == "88888888888" || campo.value == "99999999999"){
		alert("O CPF "+campo.value+" não é válido... favor tentar novamente!");	
		campo.select();
		foco(campo);
		return false;
	}

	soma = 0;
	for (i=0; i < 9; i ++)
		soma += parseInt(campo.value.charAt(i)) * (10 - i);
		resto = 11 - (soma % 11);
	if (resto == 10 || resto == 11)
		resto = 0;
	if (resto != parseInt(campo.value.charAt(9)))
		erro = 1;
		soma = 0;
		for (i = 0; i < 10; i ++)
			soma += parseInt(campo.value.charAt(i)) * (11 - i);
		resto = 11 - (soma % 11);
		if (resto == 10 || resto == 11)
			resto = 0;
		if (resto != parseInt(campo.value.charAt(10)))
			erro = 1;
		
	if(erro==1){
		alert('CPF inválido... tente novamente!');
		campo.select();
		foco(campo);
		return false;
	}
}

//Funcao para validação de email

function validaEmail(wparam){
	if (wparam.value==""){
	return false;
	}

	parte1 = wparam.value.indexOf("@");
	parte2 = wparam.value.indexOf(".");
	parte3 = wparam.value.length;
	if (wparam.value != ""){
		if (!(parte1 >= 2  && parte3 >= 9)) {
				alert ("O campo E-mail deve conter um endereço eletrônico válido!");
				foco(wparam);
				return false;
		}
	}
}	

//Função para validar Data no formato dd/mm/aaaa
function validaData(wparam){
	 if (wparam.value ==""){
	 	return false;
	 }
	 erro=0;
	 hoje = new Date();
	 anoAtual = hoje.getFullYear();
	 barras = wparam.value.split("/");
	 if (barras.length == 3){
	           dia = barras[0];
	           mes = barras[1];
	           ano = barras[2];
	           resultado = (!isNaN(dia) && (dia > 0) && 
	           			   (dia < 32)) && (!isNaN(mes) && 
	           			   (mes > 0) && (mes < 13)) && 
	           			   (!isNaN(ano) && (ano.length == 4) && 
	           			   (ano <= anoAtual && ano >= 1920));
	           if (!resultado) {
	                     alert("Formato de data invalido!");
	                     foco(wparam);
	                     return false;
	          }
	 } else {
	           alert("Formato de data invalido!");
	           foco(wparam);
	           return false;
	 }
}

function valida(){		
		f = document.indique;
		var erro = 0;
		var msg  = '';
		var campos = '';
				
		msg = 'Campos obrigatórios não preenchidos!\n\n';
	
		if (f.indica_nome_1.value==""){
			campos = campos + '-Favor Informar o Nome do 1º Indicado!\n';
			f.indica_nome_1.focus() ;
			erro = 1;
		}

		if (f.indica_email_1.value==""){
			campos = campos + '-Favor Informar o E-mail do 1º Indicado!\n';
			f.indica_email_1.focus() ;
			erro = 1;
		}
		
		if (f.indica_telres_1.value=="" || f.indica_telres_1.value=="Residencial"){
			campos = campos + '-Favor Informar Telefone Residencial do 1º Indicado!\n';
			f.indica_telres_1.focus() ;
			erro = 1;
		}
		/*VALIDANDO OS DADOS DO SEGUNDO INDICADO*/
	if (f.indica_telres_2.value != "Residencial" ||
		f.indica_telcom_2.value	!= "Comercial"   ||
		f.indica_telcel_2.value	!= "Celular"	 ||
		f.indica_cpf_2.value	!= ""			 ||
		f.indica_sexo_2.value   != ""			 ){
			if (f.indica_nome_2.value==""){
				campos = campos + '-Favor Informar o Nome do 2º Indicado!\n';
				f.indica_nome_2.focus() ;
				erro = 1;
			}
			
			if (f.indica_email_2.value==""){
				campos = campos + '-Favor Informar o E-mail do 2º Indicado!\n';
				f.indica_email_2.focus() ;
				erro = 1;
			}

			if (f.indica_telres_2.value=="Residencial"){
				campos = campos + '-Favor Informar Telefone Residencial do 2º Indicado!\n';
				f.indica_telres_2.focus() ;
				erro = 1;
			}
		}

		if (erro > 0){
			alert(msg+campos+"\n\nPreencha os campos corretamente!");
			return(false);
		}
		f.submit();
	}


	function validaUsuario(){		
		f = document.form_usuario;
		var erro = 0;
		var msg  = '';
		var campos = '';
				
		msg = 'Campos obrigatórios não preenchidos!\n\n';
	
		if (f.ass_cod.value==""){
			campos = campos + '-Favor Informar o Código do Assinante!\n';
			f.ass_cod.focus() ;
			erro = 1;
		}

		if (f.ass_cpf.value==""){
			campos = campos + '-Favor Informar o CPF do Assinante!\n';
			f.ass_cpf.focus() ;
			erro = 1;
		}

		
		if (erro > 0){
			alert(msg+campos+"\n\nPreencha os campos corretamente!");
			return(false);
		}
		f.submit();
	}
		

function showText(ob, txt){
	if (ob.value == "") {
		ob.value = txt;
		}
}

function clearText(ob, txt){
	if (ob.value == txt) {
		ob.value = "";
		}
	}		