//<!--
function FormataDado(nform,campo,tammax,pos,teclapres){
        var tecla = teclapres.keyCode;
        vr = document.forms[nform].elements[campo].value;
        vr = vr.replace( "-", "" );
        vr = vr.replace( ".", "" );
        vr = vr.replace( "/", "" );
        tam = vr.length ;

        if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

        if (tecla == 8 ){ tam = tam - 1 ; }

        if ( tecla == 8 || tecla == 88 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
                if ( tam <= 2 ){
                         document.forms[nform].elements[campo].value = vr ;}
                if ( tam > pos && tam <= tammax ){
                        document.forms[nform].elements[campo].value = vr.substr( 0, tam - pos ) + '-' + vr.substr( tam - pos, tam );}
        }
}

function SaltaCampo(nform,prox,teclapres) {
    var tecla = teclapres.keyCode;

    if ( tecla == 13 ){
        document.forms[nform].elements[prox].focus();
    }
}

function FormataValor(nform,campo,tammax,teclapres) {
        var tecla = teclapres.keyCode;

        vr = document.forms[nform].elements[campo].value;
        vr = vr.replace( "/", "" );
        vr = vr.replace( "/", "" );
        vr = vr.replace( ",", "" );
        vr = vr.replace( ".", "" );
        vr = vr.replace( ".", "" );
        vr = vr.replace( ".", "" );
        vr = vr.replace( ".", "" );
        tam = vr.length;

        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 <= 2 ){
                         document.forms[nform].elements[campo].value = vr ; }
                 if ( (tam > 2) && (tam <= 5) ){
                         document.forms[nform].elements[campo].value = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ) ; }
                 if ( (tam >= 6) && (tam <= 8) ){
                         document.forms[nform].elements[campo].value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
                 if ( (tam >= 9) && (tam <= 11) ){
                         document.forms[nform].elements[campo].value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
                 if ( (tam >= 12) && (tam <= 14) ){
                         document.forms[nform].elements[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 - 2, tam ) ; }
                 if ( (tam >= 15) && (tam <= 17) ){
                     document.forms[nform].elements[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 ) ;}
        }
    if( tecla == 109 || tecla == 188 || tecla == 110 || tecla == 111 || tecla == 223 || tecla == 108 ){
                document.forms[nform].elements[campo].value = vr.substr( 0, vr.length  ); }
        else{
                 vr = vr.replace( "-", "" );
                 vr = vr.replace( "/", "" );
                 vr = vr.replace( "/", "" );
                 vr = vr.replace( ",", "" );
                 vr = vr.replace( ".", "" );
                 vr = vr.replace( ".", "" );
                 vr = vr.replace( ".", "" );
                 vr = vr.replace( ".", "" );
                 tam = vr.length;
    }
}

function ValidaFormatoData( data )
{
        // Variáveis da função
        var dia , mes , ano , seculo , resto , diaMax , anoBissexto , mErro;

        // Redefinir data
        dia = data.substr( 0, 2 );
        mes = data.substr( 3, 2 );
        ano = data.substr( 6, 4 );

        // Obter o último dia do mês para a data informada
        if(mes=="01" || mes=="03" || mes=="05" || mes=="07" || mes=="08" || mes=="10" || mes=="12")
                diaMax = 31
        else
        if(mes=="04" || mes=="06" || mes=="09" || mes=="11")
                diaMax = 30
        else
        // Tratamento especial para o mês de fevereiro,
        if(mes=="02") {
                seculo = data.substr( 8, 2 );
                resto = ano % 4;

                if ((seculo==0) && (ano != 2000))
                        anoBissexto = false
                else
                if (resto==0)
                        anoBissexto = true;

                if (anoBissexto == true)
                        diaMax = 29
                else
                        diaMax = 28
                }
        else
                mErro = true;

        if (  ((dia > diaMax) || (dia < "00")) || ((dia < "0") || (dia > "31"))  )
                mErro = true;

        if ( (ano < 1900) || (ano > 2100) )
                mErro = true;

        if (mErro == true)
                return false;
        else
                return true;
}

function FormataMesAno(nform,campo,teclapres) {
        var tecla = teclapres.keyCode;
        vr = document.forms[nform].elements[campo].value;
        vr = vr.replace( ".", "" );
        vr = vr.replace( "/", "" );
        vr = vr.replace( "/", "" );
        tam = vr.length + 1;

        if ( tecla != 9 && tecla != 8 ){
                if ( tam > 2 && tam < 7 )
                        document.forms[nform].elements[campo].value = vr.substr( 0, 2 ) + '/' + vr.substr( 2, tam ); }
}

function FormataData(nform,campo,teclapres) {
        var tecla = teclapres.keyCode;
        vr = document.forms[nform].elements[campo].value;
        vr = vr.replace( ".", "" );
        vr = vr.replace( "/", "" );
        vr = vr.replace( "/", "" );
        tam = vr.length + 1;

        if ( tecla != 9 && tecla != 8 ){
                if ( tam > 2 && tam < 5 )
                        document.forms[nform].elements[campo].value = vr.substr( 0, tam - 2  ) + '/' + vr.substr( tam - 2, tam );
                if ( tam >= 5 && tam <= 10 )
                        document.forms[nform].elements[campo].value = vr.substr( 0, 2 ) + '/' + vr.substr( 2, 2 ) + '/' + vr.substr( 4, 4 ); }
}

function FormataCpf(nform,campo,tammax,teclapres) {
        var tecla = teclapres.keyCode;
        vr = document.forms[nform].elements[campo].value;
        vr = vr.replace( "/", "" );
        vr = vr.replace( "/", "" );
        vr = vr.replace( ",", "" );
        vr = vr.replace( ".", "" );
        vr = vr.replace( ".", "" );
        vr = vr.replace( ".", "" );
        vr = vr.replace( ".", "" );
        vr = vr.replace( "-", "" );
        vr = vr.replace( "-", "" );
        vr = vr.replace( "-", "" );
        vr = vr.replace( "-", "" );
        vr = vr.replace( "-", "" );
        tam = vr.length;

        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 <= 2 ){
                         document.forms[nform].elements[campo].value = vr ; }
                 if ( (tam > 2) && (tam <= 5) ){
                         document.forms[nform].elements[campo].value = vr.substr( 0, tam - 2 ) + '-' + vr.substr( tam - 2, tam ) ; }
                 if ( (tam >= 6) && (tam <= 8) ){
                         document.forms[nform].elements[campo].value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ; }
                 if ( (tam >= 9) && (tam <= 11) ){
                         document.forms[nform].elements[campo].value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ; }
                 if ( (tam >= 12) && (tam <= 14) ){
                         document.forms[nform].elements[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 - 2, tam ) ; }
                 if ( (tam >= 15) && (tam <= 17) ){
                         document.forms[nform].elements[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 ) ;}
        }
}

function ChecarPreenchimento( codigo )
{
        if ( (codigo == "0") || (codigo == "") || (codigo == 0) || (codigo == null))
                return false;
        else
                return true;
}

function ChecarNumerico (digitado)
{
    var validos = '0123456789,.';
    for (i=0; i<digitado.length; i++)
    {
        tempChar = digitado.substring(i, i+1);
        if (validos.indexOf(tempChar, 0)==-1)
        {
            return false;
        }
    }
    return true;
}

function validaFormulario(obj)
{

    if (!ChecarPreenchimento(obj.form.elements[0].options[obj.form.elements[0].options.selectedIndex].value))
    {
        alert( "O estado de origem deve ser informado." );
        obj.form.elements[0].focus();
        return false;
    }
    if (!ChecarPreenchimento(obj.form.elements[1].options[obj.form.elements[1].options.selectedIndex].value))
    {
        alert( "A cidade de origem deve ser informada." );
        obj.form.elements[1].focus();
        return false;
    }
    if (!ChecarPreenchimento(obj.form.elements[2].options[obj.form.elements[2].options.selectedIndex].value))
    {
        alert( "O estado de destino deve ser informado." );
        obj.form.elements[2].focus();
        return false;
    }
    if (!ChecarPreenchimento(obj.form.elements[3].options[obj.form.elements[3].options.selectedIndex].value))
    {
        alert( "A cidade de destino deve ser informada." );
        obj.form.elements[3].focus();
        return false;
    }

    /*if (obj.form.elements[6].disabled==false)
    {
        if (!ChecarPreenchimento(obj.form.elements[6].options[obj.form.elements[6].options.selectedIndex].value))
        {
            alert("A tabela deve ser informada.");
            obj.form.elements[6].focus();
            return false;
        }
    }*/


    if (obj.form.elements[6].disabled==false)
    {
        if (!ChecarPreenchimento(obj.form.elements[6].value))
        {
            alert( "O valor deve ser informado." );
            obj.form.elements[6].focus();
            return false;
        }
        if (!ChecarNumerico(obj.form.elements[6].value))
        {
            alert( "O valor deve ser numérico." );
            obj.form.elements[6].focus();
            return false;
        }
    }

    var i,j,k,m;

    if (((!ChecarPreenchimento(obj.form.elements[9].value))||(!ChecarPreenchimento(obj.form.elements[10].value))||(!ChecarPreenchimento(obj.form.elements[11].value))||(!ChecarPreenchimento(obj.form.elements[12].value)))&&((!ChecarPreenchimento(obj.form.elements[13].value))||(!ChecarPreenchimento(obj.form.elements[14].value))||(!ChecarPreenchimento(obj.form.elements[15].value))||(!ChecarPreenchimento(obj.form.elements[16].value)))&&((!ChecarPreenchimento(obj.form.elements[17].value))||(!ChecarPreenchimento(obj.form.elements[18].value))||(!ChecarPreenchimento(obj.form.elements[19].value))||(!ChecarPreenchimento(obj.form.elements[20].value)))&&((!ChecarPreenchimento(obj.form.elements[21].value))||(!ChecarPreenchimento(obj.form.elements[22].value))||(!ChecarPreenchimento(obj.form.elements[23].value))||(!ChecarPreenchimento(obj.form.elements[24].value)))&&((!ChecarPreenchimento(obj.form.elements[25].value))||(!ChecarPreenchimento(obj.form.elements[26].value))||(!ChecarPreenchimento(obj.form.elements[27].value))||(!ChecarPreenchimento(obj.form.elements[28].value))))
    {
        if (obj.form.elements[7].disabled==false)
        {
            if (!ChecarPreenchimento(obj.form.elements[7].value))
            {
                alert ("O peso ou a cubagem devem ser informados.");
                return false;
            }else if (!ChecarNumerico(obj.form.elements[7].value))
                  {
                        alert( "O peso deve ser numérico." );
                        obj.form.elements[7].focus();
                        return false;
                  }
        }
    }
    else
    {

        for (i=9;i<26;i+=4)
        {
          if (!ChecarNumerico(obj.form.elements[i].value))
          {
              alert( "O comprimento deve ser numérico." );
              obj.form.elements[i].focus();
              return false;
          }
        }

        for(j=10;j<27;j+=4)
        {
          if (!ChecarNumerico(obj.form.elements[j].value))
          {
              alert( "A largura deve ser numérica." );
              obj.form.elements[j].focus();
              return false;
          }
        }

        for (k=11;k<28;k+=4)
        {
          if (!ChecarNumerico(obj.form.elements[k].value))
          {
              alert( "A altura deve ser numérica." );
              obj.form.elements[k].focus();
              return false;
          }
        }

        for (m=12;m<29;m+=4)
        {
          if (!ChecarNumerico(obj.form.elements[m].value))
          {
              alert( "A Qtde. deve ser numérica." );
              obj.form.elements[m].focus();
              return false;
          }
        }

    }

    if ((obj.form.elements[30].checked==true)&&(obj.form.elements[31].checked==false))
    {
         alert ("Frete FOB somente para contribuinte.");
         obj.form.elements[31].focus();
         return false;
    }

    if (obj.form.elements[8].disabled==false)
    {
        if ((!ChecarPreenchimento(obj.form.elements[8].value))&&(!ChecarPreenchimento(obj.form.elements[12].value))&&(!ChecarPreenchimento(obj.form.elements[16].value))&&(!ChecarPreenchimento(obj.form.elements[20].value))&&(!ChecarPreenchimento(obj.form.elements[24].value))&&(!ChecarPreenchimento(obj.form.elements[28].value)))
        {
            alert ("O volume deve ser informado.");
            obj.form.elements[8].focus();
            return false;
        }
        if (!ChecarNumerico(obj.form.elements[8].value))
        {
            alert ("O volume deve ser numérico.");
            obj.form.elements[8].focus();
            return false;
        }
    }

    return true;
}

//-->