// JavaScript Document



//-----> PADRONIZAÇÃO DO JAVASCRIPT



//-----> Funcional em: IE e Firefox



//-----> Autor:David Augustynczyk / 2006



//



//-----> LEGENDA DAS FUNÇÕES:



//



// v_... = validação ...



// m_... = máscara ...















//-----> somente números:



function v_NR(tecla)

{

	if(typeof(tecla) == 'undefined')

	var tecla = window.event;

	var codigo = (tecla.which ? tecla.which : tecla.keyCode ? tecla.keyCode : tecla.charCode);

	

	

	

	// permite números, 8=backspace, 46=del e 9=tab

	if ( (codigo >= 48 && codigo <= 57) || (codigo >= 96 && codigo <= 105) || codigo == 8 || codigo == 46 || codigo == 9 )

	{

	return true;

	}

	else

	{

	//alert("Apenas números são permitidos !"); 

	return false; 

	} 

}















//-----> máscara cnpj:



function m_CNPJ(campo,tammax) {







var vr = campo.value;



vr = vr.replace( "-", "" );



vr = vr.replace( "/", "" );



vr = vr.replace( ".", "" );



vr = vr.replace( ".", "" );



var tam = vr.length;







if (tam < tammax) { tam = vr.length + 1 ; }







tam = tam - 1;



if ( (tam > 2) && (tam <= 5) ) {



vr = vr.substr( 0, tam - 1 ) + '-' + vr.substr( tam - 1, tam ) ; }



if ( (tam >= 6) && (tam <= 8) ) {



vr = vr.substr( 0, tam - 5 ) + '/' + vr.substr( tam - 5, 4 ) + '-' + vr.substr( tam - 1, tam ) ; }



if ( (tam >= 9) && (tam <= 11) ) {



vr = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '/' + vr.substr( tam - 5, 4 ) + '-' + vr.substr( tam - 1, tam ) ; }



if ( (tam >= 12) && (tam < 14) ) {



vr = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '/' + vr.substr( tam - 5, 4 ) + '-' + vr.substr( tam - 1, tam ) ; }







campo.value = vr; 



}















//-----> máscara cpf: 



function m_CPF(campo,tammax) {







var vr = campo.value;



vr = vr.replace( "-", "" );



vr = vr.replace( ".", "" );



vr = vr.replace( ".", "" );



var tam = vr.length;







if (tam < tammax) { tam = vr.length + 1; }







tam = tam - 1;



if ( (tam > 2) && (tam <= 11) ) {



vr = vr.substr( 0, tam - 1 ) + '-' + vr.substr( tam - 1, tam ); }



if ( (tam == 10) ) {



vr = vr.substr( 0, tam - 7 ) + '.' + vr.substr( tam - 7, 3 ) + '.' + vr.substr( tam - 4, tam ); }







campo.value = vr;



}















//-----> máscara cep:



function m_CEP(campo,tammax)

{

	var vr = campo.value;

	

	//vr = vr.replace( "-", "" );

	//vr = vr.replace( ".", "" );

	var tam = vr.length;

	/*

	if (tam < tammax)

	{

		tam = vr.length + 1;

	}

	tam = tam - 1;

	//38400.468

	

	if ( (tam > 2) && (tam <= 8) )

	{

		vr = vr.substr( 0, tam - 2 ) + '-' + vr.substr( tam - 2, tam );

	}

	if ( (tam == 7) )

	{

		//38400.468

		vr = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, tam );

	}

	*/

	if ( (tam == 7) )

	{

		//38.400-468

		//38400468

		vr = vr.substr( 0, 2 ) + '.' + vr.substr( 2, 3 ) + '-' + vr.substr(5,3);

	}

	

campo.value = vr;

}















//-----> máscara data:



function m_DATA(campo,tammax,tecla) {







if(typeof(tecla) == 'undefined')



var tecla = window.event;



var codigo = (tecla.which ? tecla.which : tecla.keyCode ? tecla.keyCode : tecla.charCode);







var vr = campo.value;



vr = vr.replace( "/", "" );



vr = vr.replace( "/", "" );



var tam = vr.length;







if (tam < tammax) { tam = vr.length + 1; }



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







tam = tam - 1;



if ( (tam >= 2) && (tam < 3) ) {



vr = vr.substr( 0, tam - 0 ) + '/' + vr.substr( tam - 0, 2 ); }



if ( (tam >= 3) && (tam < 4) ) {



vr = vr.substr( 0, tam - 1 ) + '/' + vr.substr( tam - 1, 2 ); }



if (tam == 4) {



vr = vr.substr( 0, tam - 2 ) + '/' + vr.substr( tam - 2, 2 ) + '/' + vr.substr( tam - 0, 5 ); }



if (tam == 5) {



vr = vr.substr( 0, tam - 3 ) + '/' + vr.substr( tam - 3, 2 ) + '/' + vr.substr( tam - 1, 6 ); }



if (tam == 6) {



vr = vr.substr( 0, tam - 4 ) + '/' + vr.substr( tam - 4, 2 ) + '/' + vr.substr( tam - 2, 7 ); }



if (tam == 7) {



vr = vr.substr( 0, tam - 5 ) + '/' + vr.substr( tam - 5, 2 ) + '/' + vr.substr( tam - 3, 8 ); }







campo.value = vr;



}















//-----> máscara hora:



function m_HORA(campo,tammax,tecla) {







if(typeof(tecla) == 'undefined')



var tecla = window.event;



var codigo = (tecla.which ? tecla.which : tecla.keyCode ? tecla.keyCode : tecla.charCode);







var vr = campo.value;



vr = vr.replace( ":", "" );



vr = vr.replace( ":", "" );



var tam = vr.length;







if (tam < tammax) { tam = vr.length + 1; }



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







tam = tam - 1;



if ( (tam >= 2) && (tam < 3) ) {



vr = vr.substr( 0, tam - 0 ) + ':' + vr.substr( tam - 0, 2 ); }



if ( (tam >= 3) && (tam < 4) ) {



vr = vr.substr( 0, tam - 1 ) + ':' + vr.substr( tam - 1, 2 ); }



if (tam == 4)

{

	vr = vr.substr( 0, tam - 2 ) + ':' + vr.substr( tam - 2, 2 ) + ':' + vr.substr( tam - 0, 5 );

}



if (tam == 5)

{

	vr = vr.substr( 0, tam - 3 ) + ':' + vr.substr( tam - 3, 2 ) + ':' + vr.substr( tam - 1, 6 );

}







campo.value = vr;



}

function mascTele(campo)
{
	var total = campo.value.length;
	if(total==7)
	{
		var m1 = campo.value.substr(0,4);
		var m2 = campo.value.substr(4,4);
		var mfinal = m1+"-"+m2;
		campo.value = mfinal;
	}
}

function mascHora(campo,event)
{
	var total = campo.value.length;
	var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;

	if(keyCode!=8)
	{
		if(total==2)
		{
			var value = campo.value;
			campo.value = value+":";
		}
	}//fim if(keyCode!=8)

}


//Mascara de data
function mascaraData(data,event)
{
	var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;

	if(keyCode!=8)
	{
		var tel = data.value;
		//20
		if(tel.length==2)
		{
			var fone = tel+"/";
			data.value=fone;
		}
		//20/01
		if(tel.length==5)
		{
			var fone = tel+"/";
			data.value=fone;
		}
	}
}

function focuData(data)
{
	document.getElementById(data).focus();	
}

//Valida data
function validaData(digData) 
{
    var bissexto = 0;
    var data = digData.value; 
    var tam = data.length;
    if (tam == 10) 
    {
        var dia = data.substr(0,2)
        var mes = data.substr(3,2)
        var ano = data.substr(6,4)
        if ((ano > 1900)||(ano < 2100))
        {
            switch (mes) 
            {
                case '01':
                case '03':
                case '05':
                case '07':
                case '08':
                case '10':
                case '12':
                    if  (dia <= 31) 
                    {
                        return true;
                    }
                    break
                
                case '04':        
                case '06':
                case '09':
                case '11':
                    if  (dia <= 30)
                    {
                        return true;
                    }
                    break
                case '02':
                    /* Validando ano Bissexto / fevereiro / dia */
                    if ((ano % 4 == 0) || (ano % 100 == 0) || (ano % 400 == 0))
                    {
                        bissexto = 1;
                    }
                    if ((bissexto == 1) && (dia <= 29))
                    {
                        return true;
                    }
                    if ((bissexto != 1) && (dia <= 28))
                    {
                        return true;
                    }
                    break
            }
        }
    }
	if(data!="")
	{
		alert("A Data "+data+" é inválida!");
		digData.value = "";
		var d = digData.name;
		setTimeout("focuData('"+d+"')",200);
		return false;
	}
}

