function formcadastro(){
	var form = document.form2;
	var erro = 0;
	var msg = "Preencha corretamente os campos:\n";	

	
	if(form.nome.value.length < 3){
		msg+= " - Nome\n";
		erro=1;
	}
	if(form.empresa.value.length < 3){
		msg+= " - Empresa\n";
		erro=1;
	}
	if(form.cnpj.value.length < 11){
		msg+= " - CNPJ\n";
		erro=1;
	} else {
		if(!validaCNPJ(form.cnpj.value)){
			msg+= " - CNPJ\n";
			erro=1;
		}
	}
	if(form.email.value.length < 3){
		msg+= " - E-mail\n";
		erro=1;
	} else {
		if(!/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(form.email.value)){
			msg+= " - E-mail\n";
			erro = 1;
		}
	}

	if(form.senha.value.length < 3){
		msg+= " - Senha\n";
		erro=1;
	}
	if(form.senha2.value.length < 3){
		msg+= " - Senha Confirmação\n";
		erro=1;
	} else {
		if(form.senha.value != form.senha2.value){
			msg+= " - A senha não confirma\n";
			erro=1;
		}
	
	}


	if(form.cargo.value.length < 3){
		msg+= " - Cargo\n";
		erro=1;
	}
	if(erro){
		alert(msg);
		return false;
	} else
		return true;
}
function validaCNPJ(CNPJ) {
	erro = new String;
	if (CNPJ.length < 18) erro += "É necessario preencher corretamente o número do CNPJ! ";
	if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-")){
		if (erro.length == 0) erro += "É necessário preencher corretamente o número do CNPJ! ";
	}
	//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(/\./g,"");
		CNPJ = CNPJ.replace(/\-/g,"");
		CNPJ = CNPJ.replace(/\//g,"");
	}
	var nonNumbers = /\D/;
	if (nonNumbers.test(CNPJ)) erro += "A verificação de CNPJ suporta apenas números! ";
	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 +="Dígito verificador com problema!";
	}
	if (erro.length > 0){
		//alert(erro);
		return false;
	} else {
		//alert("CNPJ valido!");
		return true;
   }
   return true;
}
//formata de forma generica os campos
function formataCampo(campo, mascara, evento) {
    var boleanoMascara;
    
    var digitado = evento.keyCode;
    exp = /\-|\.|\/|\(|\)| /g
    campoSoNumeros = campo.value.toString().replace( exp, "" );
  
    var posicaoCampo = 0;    
    var novoValorCampo="";
    var tamanhoMascara = campoSoNumeros.length;;
    
    if (digitado != 8) { // backspace
        for(i=0; i<= tamanhoMascara; i++) {
            boleanoMascara  = ((mascara.charAt(i) == "-") || (mascara.charAt(i) == ".")
                                || (mascara.charAt(i) == "/"))
            boleanoMascara  = boleanoMascara || ((mascara.charAt(i) == "(")
                                || (mascara.charAt(i) == ")") || (mascara.charAt(i) == " "))
            if (boleanoMascara) {
                novoValorCampo += mascara.charAt(i);
                  tamanhoMascara++;
            }else {
                novoValorCampo += campoSoNumeros.charAt(posicaoCampo);
                posicaoCampo++;
              }           
          }    
        campo.value = novoValorCampo;
        return true;
    }else {
        return true;
    }
}

