///funções em javascript

//apenas números
function isNumberKey(evt) {
    var charCode = (evt.which) ? evt.which : event.keyCode
    if (charCode > 31 && (charCode < 48 || charCode > 57))
        return false;
    return true;
}
//fim de apenas números


//valida cpf/cnpj (função "encadeada")
function isCPFCNPJ(campo, pType) {

    var campo_filtrado = "", valor_1 = " ", valor_2 = " ", ch = "";
    var valido = false;

    for (i = 0; i < campo.length; i++) {
        ch = campo.substring(i, i + 1);
        if (ch >= "0" && ch <= "9") {
            campo_filtrado = campo_filtrado.toString() + ch.toString()
            valor_1 = valor_2;
            valor_2 = ch;
        }
        if ((valor_1 != " ") && (!valido)) valido = !(valor_1 == valor_2);
    }
    if (!valido) campo_filtrado = "12345678912";

    if (campo_filtrado.length < 11) {
        for (i = 1; i <= (11 - campo_filtrado.length); i++) { campo_filtrado = "0" + campo_filtrado; }
    }

    if (pType <= 1) {
        if ((campo_filtrado.substring(9, 11) == checkCPF(campo_filtrado.substring(0, 9))) && (campo_filtrado.substring(11, 12) == "")) { return true; }
    }

    if ((pType == 2) || (pType == 0)) {
        if (campo_filtrado.length >= 14) {
            if (campo_filtrado.substring(12, 14) == checkCNPJ(campo_filtrado.substring(0, 12))) { return true; }
        }
    }

    return false;
}

function checkCNPJ(vCNPJ) {
    var mControle = "";
    var aTabCNPJ = new Array(5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2);
    for (i = 1; i <= 2; i++) {
        mSoma = 0;
        for (j = 0; j < vCNPJ.length; j++)
            mSoma = mSoma + (vCNPJ.substring(j, j + 1) * aTabCNPJ[j]);
        if (i == 2) mSoma = mSoma + (2 * mDigito);
        mDigito = (mSoma * 10) % 11;
        if (mDigito == 10) mDigito = 0;
        mControle1 = mControle;
        mControle = mDigito;
        aTabCNPJ = new Array(6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3);
    }
    return ((mControle1 * 10) + mControle);
}

function checkCPF(vCPF) {
    var mControle = ""
    var mContIni = 2, mContFim = 10, mDigito = 0;
    for (j = 1; j <= 2; j++) {
        mSoma = 0;
        for (i = mContIni; i <= mContFim; i++)
            mSoma = mSoma + (vCPF.substring((i - j - 1), (i - j)) * (mContFim + 1 + j - i));
        if (j == 2) mSoma = mSoma + (2 * mDigito);
        mDigito = (mSoma * 10) % 11;
        if (mDigito == 10) mDigito = 0;
        mControle1 = mControle;
        mControle = mDigito;
        mContIni = 3;
        mContFim = 11;
    }
    return ((mControle1 * 10) + mControle);
}
//fim validação cpf/cnpj


//valida campos do formulário
function validaCampos()
    {

        if (document.cenoDemForm.txtprod.value == '' || document.cenoDemForm.txtprod.value == '0')
         {
            window.alert("Por favor escolha um produto");
            document.cenoDemForm.txtprod.focus();
            return false;
        }
    
     //documento
     if (document.cenoDemForm.txtDocumento.value == '') {
        window.alert('Por favor preencha o CPF.');
        document.cenoDemForm.txtDocumento.focus();
        return false;
     }

     if (document.cenoDemForm.txtDocumento.value.length < 11) {
        window.alert('Por favor preencha com 11 caracteres.');
        document.cenoDemForm.txtDocumento.focus();
        return false;
     }
     //fim de documento

    //nome
    if (document.cenoDemForm.txtNome.value == '') {
        window.alert('Por favor preencha um nome ou razão social.');
        document.cenoDemForm.txtNome.focus();
        return false;
    }

    if (document.cenoDemForm.txtNome.value.length < 3) {
        window.alert('Por favor preencha um nome ou razão social com mais de três caracteres.');
        document.cenoDemForm.txtNome.focus();
        return false;
    }
    //fim de nome

    //email
    var emailID = document.cenoDemForm.txtEmail

    if ((emailID.value == null) || (emailID.value == "")) {
        window.alert("Por favor informe seu e-mail.")
        emailID.focus();
        return false;
    }
    if (echeck(emailID.value) == false) {
        emailID.value = ""
        emailID.focus();
        return false;
    }
    //fim de email
  

    //telefone
    if (document.cenoDemForm.nrDDD.value=='') {
        window.alert('Por favor preencha o ddd.');
        document.cenoDemForm.nrDDD.focus();
        return false;
    }

    if (document.cenoDemForm.nrTelefone.value == '') {
        window.alert('Por favor preencha o número do telefone.');
        document.cenoDemForm.nrTelefone.focus();
        return false;
    }

    if (document.cenoDemForm.txtCidade.value == '') {
        window.alert('Por favor preencha a cidade.');
        document.cenoDemForm.txtCidade.focus();
        return false;
    }



	//cep
	if (document.cenoDemForm.txtCep.value=='') {
	    window.alert("Por favor preencha o CEP")
	    document.cenoDemForm.txtCep.focus();
	    return false;
	}

	if (document.cenoDemForm.txtCep.value.length<8) {
	    window.alert("Por favor preencha o CEP com oito dígitos.")
	    document.cenoDemForm.txtCep.focus();
	    return false;
	}
	
	//fim de cep

}
//fim valida campos formulário



//validação de e-mail
function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(",")!=-1){
		   window.alert("E-mail inválido. Por favor preencha seu e-mail corretamente");
		   return false;
		}
		if (str.indexOf(at)==-1){
		   window.alert("E-mail inválido. Por favor preencha seu e-mail corretamente");
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   window.alert("E-mail inválido. Por favor preencha seu e-mail corretamente");
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    window.alert("E-mail inválido. Por favor preencha seu e-mail corretamente");
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    window.alert("E-mail inválido. Por favor preencha seu e-mail corretamente");
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    window.alert("E-mail inválido. Por favor preencha seu e-mail corretamente");
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    window.alert("E-mail inválido. Por favor preencha seu e-mail corretamente");
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		    window.alert("E-mail inválido. Por favor preencha seu e-mail corretamente");
		    return false;
		 }

 		 return true					
	}
	//fim de validação de e-mail
