function validaForm(form)
{
	var verdade = true;
	var erros = '';

	if (form == "webmail"){
		if (document.webmail.secretkey.value == "") 
		{ 
			erros += '\n- Preencha a senha;';
			document.webmail.secretkey.focus(); 
			verdade = false;
		} 	
		if (document.webmail.login_username.value == "" || document.webmail.login_username.value == "Email Completo" || document.webmail.login_username.value.indexOf('@')==-1 || document.webmail.login_username.value.indexOf('.')==-1 ) 
		{ 
			erros += '\n- Preencha Usuário com um email válido;';
			document.webmail.login_username.focus(); 
			verdade = false;
		} 	
	} else if (form == "newsletter") {
		if (document.newsletter.email.value == "" || document.newsletter.email.value.indexOf('@')==-1 || document.newsletter.email.value.indexOf('.')==-1 ) 
		{ 
			erros += '\n- Preencha com um email válido;';
			document.newsletter.email.focus(); 
			verdade = false;
		} 		
	} else if (form == "contato") {
		if (document.contato.email.value == "" || document.contato.email.value.indexOf('@')==-1 || document.contato.email.value.indexOf('.')==-1 ) 
		{ 
			erros += '\n- Preencha com um email válido;';
			document.contato.email.focus(); 
			verdade = false;
		}
		if (document.contato.nome.value == "") 
		{ 
			erros += '\n- Preencha o campo nome;';
			document.contato.nome.focus(); 
			verdade = false;
		} 		
	} else if (form == "frmdados") {			
		if (document.frmdados.edtsenha.value == '')
		{
			erros += '\n- Informe a senha do usuário SCPC;';
			document.frmdados.edtsenha.focus(); 
			verdade = false;
		}	
		if (document.frmdados.edtcodigo.value == '')
		{
			erros += '\n- Informe o código de usuário SCPC;';
			document.frmdados.edtcodigo.focus(); 
			verdade = false;			
		}
	} else if (form == "juridico") {
		if (document.contato.email.value == "" || document.contato.email.value.indexOf('@')==-1 || document.contato.email.value.indexOf('.')==-1 ) 
		{ 
			erros += '\n- Preencha com um email válido;';
			document.contato.email.focus(); 
			verdade = false;
		}
		if (document.contato.nome.value == "") 
		{ 
			erros += '\n- Preencha o campo nome;';
			document.contato.nome.focus(); 
			verdade = false;
		} 		
	} else if (form == "scpc") {
		if (document.scpc.senha.value == "") 
		{ 
			erros += '\n- Preencha o campo Senha;';
			document.scpc.senha.focus(); 
			verdade = false;
		}
		if (document.scpc.codigo.value == "") 
		{ 
			erros += '\n- Preencha o campo Código;';
			document.scpc.codigo.focus(); 
			verdade = false;
		}
		if (document.scpc.email.value == "" || document.scpc.email.value.indexOf('@')==-1 || document.scpc.email.value.indexOf('.')==-1 ) 
		{ 
			erros += '\n- Preencha com um email válido;';
			document.scpc.email.focus(); 
			verdade = false;
		}		
		if (document.scpc.telefone.value == "") 
		{ 
			erros += '\n- Preencha o Telefone;';
			document.scpc.telefone.focus(); 
			verdade = false;
		}		
		if (document.scpc.empresa.value == "") 
		{ 
			erros += '\n- Preencha o campo Empresa;';
			document.scpc.empresa.focus(); 
			verdade = false;
		}
	} else if (form == "cursos") {
		if ( (document.cursos.funcao[0].checked == false ) && (document.cursos.funcao[1].checked == false ) )
		{ 
			erros += '\n- Informe se é proprietário ou funcionário da empresa;';
			verdade = false;
		}
		if (document.cursos.email.value == "" || document.cursos.email.value.indexOf('@')==-1 || document.cursos.email.value.indexOf('.')==-1 ) 
		{ 
			erros += '\n- Preencha com um email válido;';
			document.cursos.email.focus(); 
			verdade = false;
		}		
		if (document.cursos.telefone.value == "") 
		{ 
			erros += '\n- Preencha o Telefone;';
			document.cursos.telefone.focus(); 
			verdade = false;
		}		
		if (document.cursos.empresa.value == "") 
		{ 
			erros += '\n- Preencha o campo Empresa;';
			document.cursos.empresa.focus(); 
			verdade = false;
		}
		if (document.cursos.nome.value == "") 
		{ 
			erros += '\n- Preencha o campo Nome;';
			document.cursos.nome.focus(); 
			verdade = false;
		}
	} else if (form == "assessorias") {
		if (document.assessorias.email.value == "" || document.assessorias.email.value.indexOf('@')==-1 || document.assessorias.email.value.indexOf('.')==-1 ) 
		{ 
			erros += '\n- Preencha com um email válido;';
			document.assessorias.email.focus(); 
			verdade = false;
		}		
		if (document.assessorias.telefone.value == "") 
		{ 
			erros += '\n- Preencha o Telefone;';
			document.assessorias.telefone.focus(); 
			verdade = false;
		}		
		if (document.assessorias.empresa.value == "") 
		{ 
			erros += '\n- Preencha o campo Empresa;';
			document.assessorias.empresa.focus(); 
			verdade = false;
		}
		if (document.assessorias.nome.value == "") 
		{ 
			erros += '\n- Preencha o campo Nome;';
			document.assessorias.nome.focus(); 
			verdade = false;
		}		
	}	
	if (erros) {
		alert('Corrija o(s) erro(s):\n'+erros);
		verdade = false;
	}
return verdade;
} 

function cpfcnpj(meu_c){ 
    if(document.getElementById(meu_c).value.length == 3){ 
        document.getElementById(meu_c).value = document.getElementById(meu_c).value + '.'; 
        return false; 
    } 
    if(document.getElementById(meu_c).value.length == 7){ 
        document.getElementById(meu_c).value = document.getElementById(meu_c).value + '.'; 
        return false; 
    } 
    if(document.getElementById(meu_c).value.length == 11){ 
        document.getElementById(meu_c).value = document.getElementById(meu_c).value + '-'; 
        return false; 
    } 
    if(document.getElementById(meu_c).value.length == 15){ 
        p0=document.getElementById(meu_c).value.charAt(0); 
        p1=document.getElementById(meu_c).value.charAt(1); 
        p2=document.getElementById(meu_c).value.charAt(2); 
        p3=document.getElementById(meu_c).value.charAt(4); 
        p4=document.getElementById(meu_c).value.charAt(5); 
        p5=document.getElementById(meu_c).value.charAt(6); 
        p6=document.getElementById(meu_c).value.charAt(8); 
        p7=document.getElementById(meu_c).value.charAt(9); 
        p8=document.getElementById(meu_c).value.charAt(10); 
        p9=document.getElementById(meu_c).value.charAt(12); 
        p10=document.getElementById(meu_c).value.charAt(13); 
        p11=document.getElementById(meu_c).value.charAt(14); 
        document.getElementById(meu_c).value = ''; 
        document.getElementById(meu_c).value = p0 + p1 + '.' + p2 + p3 + p4 + '.' + p5 + p6 + p7 + '/' + p8 + p9 + p10 + p11 + '-'; 
        p0=''; 
        p1=''; 
        p2=''; 
        p3=''; 
        p4=''; 
        p5=''; 
        p6=''; 
        p7=''; 
        p8=''; 
        p9=''; 
        p10=''; 
        p11=''; 
        return false; 
    } 
} 


// JavaScript Document 
/*    ********************************************************************     
    #################################################################### 
    Assunto = Validação de CPF e CNPJ 
    Autor = Marcos Regis 
    Data = 24/01/2006 
    Versão = 1.0 
    Compatibilidade = Todos os navegadores. 
    Pode ser usado e distribuído desde que esta linhas sejam mantidas 
    ====------------------------------------------------------------==== 
     
    Funcionamento = O script recebe como parâmetro um objeto por isso  
    deve ser chamado da seguinte forma: 
    E.: no evento onBlur de um campo texto 
    <input name="cpf_cnpj" type="text" size="40" maxlength="18"  
    onBlur="validar(this);"> 
    Ao deixar o campo o evento é disparado e chama validar() com o  
    argumento "this" que representa o próprio objeto com todas as  
    propriedades. 
    A partir daí a função validar() trata a entrada removendo tudo que 
    não for caracter numérico e deixando apenas números, portanto 
    valores escritos só com números ou com separadores como '.' ou mesmo 
    espaços são aceitos 
    ex.: 111222333/44, 111.222.333-44, 111 222 333 44 serão tratadoc como 
    11122233344 (para CPFs) 
    De certa forma até mesmo valores como 111A222B333C44 será aceito mas 
    aconselho a usar a função soNums() que encotra-se aqui mesmo para 
    que o campo só aceite caracteres numéricos. 
    Para usar a função soNums() chame-a no evento onKeyPress desta forma 
    onKeyPress="return soNums(event);" 
    Após limpar o valor verificamos seu tamanho que deve ser ou 11 ou 14 
    Se o tamanho não for aceito a função retorna false e [opcional]  
    mostra uma mensagem de erro. 
    Sugestões e comentários marcos_regis@hotmail.com 
    #################################################################### 
    ********************************************************************    */ 

// a função principal de validação 
function validar(obj) { // recebe um objeto 
    var s = (obj.value).replace(/\D/g,''); 
    var tam=(s).length; // removendo os caracteres não numéricos 
    if (!(tam==11 || tam==14)){ // validando o tamanho 
        alert("'"+s+"' Não é um CPF ou um CNPJ válido!" ); // tamanho inválido 
		  obj.value="";
		  obj.focus();
        return false; 
    } 
     
// se for CPF 
    if (tam==11 ){ 
        if (!validaCPF(s)){ // chama a função que valida o CPF 
            alert("'"+s+"' Não é um CPF válido!" ); // se quiser mostrar o erro 
            obj.select();  // se quiser selecionar o campo em questão 
				obj.value="";
		      obj.focus();
            return false; 
        } 
        //alert("'"+s+"' É um CPF válido!" ); // se quiser mostrar que validou         
        obj.value=maskCPF(s);    // se validou o CPF mascaramos corretamente 
        return true; 
    } 
     
// se for CNPJ             
    if (tam==14){ 
        if(!validaCNPJ(s)){ // chama a função que valida o CNPJ 
            alert("'"+s+"' Não é um CNPJ válido!" ); // se quiser mostrar o erro 
            obj.select();    // se quiser selecionar o campo enviado 
				obj.value="";
		      obj.focus();
            return false;             
        } 
        //alert("'"+s+"' É um CNPJ válido!" ); // se quiser mostrar que validou                 
        obj.value=maskCNPJ(s);    // se validou o CNPJ mascaramos corretamente 
        return true; 
    } 
} 
// fim da funcao validar() 

// função que valida CPF 
// O algorítimo de validação de CPF é baseado em cálculos 
// para o dígito verificador (os dois últimos) 
// Não entrarei em detalhes de como funciona 
function validaCPF(s) { 
    var c = s.substr(0,9); 
    var dv = s.substr(9,2); 
    var d1 = 0; 
    for (var i=0; i<9; i++) { 
        d1 += c.charAt(i)*(10-i); 
     } 
    if (d1 == 0) return false; 
    d1 = 11 - (d1 % 11); 
    if (d1 > 9) d1 = 0; 
    if (dv.charAt(0) != d1){ 
        return false; 
    } 
    d1 *= 2; 
    for (var i = 0; i < 9; i++)    { 
         d1 += c.charAt(i)*(11-i); 
    } 
    d1 = 11 - (d1 % 11); 
    if (d1 > 9) d1 = 0; 
    if (dv.charAt(1) != d1){ 
        return false; 
    } 
    return true; 
} 

// Função que valida CNPJ 
// O algorítimo de validação de CNPJ é baseado em cálculos 
// para o dígito verificador (os dois últimos) 
// Não entrarei em detalhes de como funciona 
function validaCNPJ(CNPJ) { 
    var a = new Array(); 
    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])){ 
        return false; 
    } 
    return true; 
} 


// Função que permite apenas teclas numéricas 
// Deve ser chamada no evento onKeyPress desta forma 
// return (soNums(event)); 
function soNums(e) 
{ 
    if (document.all){var evt=event.keyCode;} 
    else{var evt = e.charCode;} 
    if (evt <20 || (evt >47 && evt<58)){return true;} 
    return false; 
} 

//    função que mascara o CPF 
function maskCPF(CPF){ 
    return CPF.substring(0,3)+"."+CPF.substring(3,6)+"."+CPF.substring(6,9)+"-"+CPF.substring(9,11); 
} 

//    função que mascara o CNPJ 
function maskCNPJ(CNPJ){ 
    return CNPJ.substring(0,2)+"."+CNPJ.substring(2,5)+"."+CNPJ.substring(5,8)+"/"+CNPJ.substring(8,12)+"-"+CNPJ.substring(12,14);     
} 