function ValidaForm(){
  d = document.frmCadastro;
  if(d.raznom.value == ""){
     alert("Favor informar o nome / razão social");
	 d.raznom.focus();
	 return false;
  }
  else if(d.cpfcgc.value == ""){
     alert("Favor informar o cpf / cnpj");
	 d.cpfcgc.focus();
	 return false;
  }
#  else if (!valida_cpf(d.cpfcgc.value) && !valida_cnpj(d.cpfcgc.value)) {
#	 alert("cpf / cnpj inválido");
#	 d.cpfcgc.focus();
#	 return false;
#  }
    else if (d.email.value == ""){
     alert("Favor informar o email");
	 d.email.focus();
	 return false;
  }
  else if (!valida_email(d.email.value)){
	  d.email.focus();
	  return false;  
  }
  else if (d.senha.value.length < 6) {
     alert("A senha deve ter no mínimo 6 caracteres");
	 d.senha.focus();
	 return false;
  }
  else if(d.endereco.value == ""){
     alert("Favor informar o endereço");
	 d.endereco.focus();
	 return false;
  }
  else if (d.cidade.value == ""){
     alert("Favor informar a cidade");
	 d.cidade.focus();
	 return false;
  }
  else if (d.cep.value == ""){
     alert("Favor informar o cep");
	 d.cep.focus();
	 return false;
  }
  else if (d.fone1.value == ""){
     alert("Favor informar o telefone");
	 d.fone1.focus();
	 return false;
  }
  else return true;
}

/* Formatação para qualquer mascara */
function formatar(src, mask) 
{
  var i = src.value.length;
  var saida = mask.substring(0,1);
  var texto = mask.substring(i)
if (texto.substring(0,1) != saida) 
  {
	src.value += texto.substring(0,1);
  }
}

/* 

Exemplos:
CEP
OnKeyPress="formatar(this, '#####-###')"
*/

function Limpar(valor, validos) { 
// retira caracteres invalidos da string 
var result = ""; 
var aux; 
for (var i=0; i < valor.length; i++) { 
aux = validos.indexOf(valor.substring(i, i+1)); 
if (aux>=0) { 
result += aux; 
} 
} 
return result; 
} 

//Formata número tipo moeda usando o evento onKeyDown 
function Formata2(campo,tammax,teclapres,decimal) { 
  var tecla = teclapres.keyCode; 
  vr = Limpar(campo.value,"0123456789"); 
  tam = vr.length; 
  dec=decimal 

  if (tam < tammax && tecla != 8) { tam = vr.length + 1 ; } 

  if (tecla == 8 ) { tam = tam - 1 ; } 

  if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ) { 
      if ( tam <= dec ) { campo.value = vr ; } 
  } 

} 

//Formata número tipo moeda usando o evento onKeyDown 
function Formata(campo,tammax,teclapres,decimal) { 
var tecla = teclapres.keyCode; 
vr = Limpar(campo.value,"0123456789"); 
tam = vr.length; 
dec=decimal 

if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; } 

if (tecla == 8 ) 
{ tam = tam - 1 ; } 

if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ) 
{ 

if ( tam <= dec ) 
{ campo.value = vr ; } 

if ( (tam > dec) && (tam <= 5) ){ 
campo.value = vr.substr( 0, tam - 2 ) + "," + vr.substr( tam - dec, tam ) ; } 
if ( (tam >= 6) && (tam <= 8) ){ 
campo.value = vr.substr( 0, tam - 5 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; 
} 
if ( (tam >= 9) && (tam <= 11) ){ 
campo.value = vr.substr( 0, tam - 8 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; } 
if ( (tam >= 12) && (tam <= 14) ){ 
campo.value = vr.substr( 0, tam - 11 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; } 
if ( (tam >= 15) && (tam <= 17) ){ 
campo.value = vr.substr( 0, tam - 14 ) + "." + vr.substr( tam - 14, 3 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - 2, tam ) ;} 
} 

} 

/***********************************************************
                 Função para validar email
***********************************************************/
function valida_email(email){
    parte1 = email.indexOf("@");
    parte2 = email.indexOf(".");
    parte3 = email.length;
    if (!( parte1 >= 3 && parte2 >= 3 && parte3 >= 9 )) {
        alert ("O campo deve conter um endereço eletrônico!");
        return false;
    }
    return true;
}

/***********************************************************
   Função para validar cpf ou cnpj
***********************************************************/
function valida_cpf(cpf){
      var numeros, digitos, soma, i, resultado, digitos_iguais;
      digitos_iguais = 1;
      if (cpf.length < 11)
            return false;
      for (i = 0; i < cpf.length - 1; i++)
            if (cpf.charAt(i) != cpf.charAt(i + 1))
                  {
                  digitos_iguais = 0;
                  break;
                  }
      if (!digitos_iguais)
            {
            numeros = cpf.substring(0,9);
            digitos = cpf.substring(9);
            soma = 0;
            for (i = 10; i > 1; i--)
                  soma += numeros.charAt(10 - i) * i;
            resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
            if (resultado != digitos.charAt(0))
                  return false;
            numeros = cpf.substring(0,10);
            soma = 0;
            for (i = 11; i > 1; i--)
                  soma += numeros.charAt(11 - i) * i;
            resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
            if (resultado != digitos.charAt(1))
                  return false;
            return true;
            }
      else
            return false;
}

function valida_cnpj(cnpj){
      var numeros, digitos, soma, i, resultado, pos, tamanho, digitos_iguais;
      digitos_iguais = 1;
      if (cnpj.length < 14 && cnpj.length < 15)
            return false;
      for (i = 0; i < cnpj.length - 1; i++)
            if (cnpj.charAt(i) != cnpj.charAt(i + 1))
                  {
                  digitos_iguais = 0;
                  break;
                  }
      if (!digitos_iguais)
            {
            tamanho = cnpj.length - 2
            numeros = cnpj.substring(0,tamanho);
            digitos = cnpj.substring(tamanho);
            soma = 0;
            pos = tamanho - 7;
            for (i = tamanho; i >= 1; i--)
                  {
                  soma += numeros.charAt(tamanho - i) * pos--;
                  if (pos < 2)
                        pos = 9;
                  }
            resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
            if (resultado != digitos.charAt(0))
                  return false;
            tamanho = tamanho + 1;
            numeros = cnpj.substring(0,tamanho);
            soma = 0;
            pos = tamanho - 7;
            for (i = tamanho; i >= 1; i--)
                  {
                  soma += numeros.charAt(tamanho - i) * pos--;
                  if (pos < 2)
                        pos = 9;
                  }
            resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
            if (resultado != digitos.charAt(1))
                  return false;
            return true;
            }
      else
            return false;
} 

