/* funções:
	formatar(src, mask) -> utilizada para mascarar campos	
	TelefoneFormat(campo, e) -> formata números de telefones, pelo campo passado e pelo event da tecla
	FormataValor(campo,tammax,teclapres) -> formata campos que são numéricos
*/
function date_db(date){
	var arrDate = date.split('/');
	return arrDate[2]+'/'+arrDate[1]+'/'+arrDate[0];
}


function formatar(src, mask){
 	var i = src.value.length;
  	var saida = mask.substring(0,1);
  	var texto = mask.substring(i)
	if (texto.substring(0,1) != saida)
    	src.value += texto.substring(0,1);
}

function TelefoneFormat(campo, e) { 
    var tecla = e.keyCode; 
	if (tecla != 8){ 
		if((tecla !=37)&&(tecla !=38)&&(tecla !=39)&&(tecla !=40)&&(tecla !=13)&&(tecla !=9)){
			if ((tecla <48)||((tecla >57)&&(tecla <96))||(tecla >105)) {
				return false;
			}
		}
	}    
	
	if (tecla == 8){
		return true;
	}
	
	if ((campo.value.length >= 0) && (campo.value.length <= 2) ){
		campo.value = campo.value.replace( "(", "" );
        campo.value = '(' + campo.value.substr( 0, campo.value.length ); 
	}
	
	if ((campo.value.length > 2) && (campo.value.length <= 3) ){
		campo.value = campo.value.replace( ")", "" );
        campo.value = campo.value.substr( 0, 3) +')' + campo.value.substr( 3, campo.value.length); 
	}
	
	if ((campo.value.length > 3) && (campo.value.length <= 4) ){
		campo.value = campo.value.replace( " ", "" );    
        campo.value = campo.value.substr( 0, 4) +' ' + campo.value.substr( 4, campo.value.length); 
	}
	
	if (campo.value.length == 9){ 
		campo.value = campo.value.replace( "-", "" );
        campo.value = campo.value.substr( 0, 8) +'-' + campo.value.substr( 8, campo.value.length); 
	}
	
	if (campo.value.length >= 10){ 
		campo.value = campo.value.replace( "-", "" );
        campo.value = campo.value.substr( 0, 9) +'-' + campo.value.substr( 9, campo.value.length); 
	}
			 	
    return true; 
}

function FormataValor(campo,tammax,teclapres){
	var tecla = teclapres.keyCode; 
	if((tecla >= 48 && tecla <= 57) || (tecla >= 96 && tecla <= 105) || (tecla >= 37 && tecla <= 40) ||(tecla == 8) || (tecla == 46)) {
	
	}
	else{
		campo.value	=	campo.value.substring(0,campo.value.length-1)
		return false;
	}
	
	
		
	vr 	= campo.value;
    vr 	= vr.replace( ".", "" );
    tam = vr.length;    	
	
    if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
        if ( tam <= 2 ){ 
             campo.value = vr; 
		}
        else if ( (tam >= 2) && (tam <= 5) ){
             campo.value = vr.substr( 0, tam - 2 ) + '' + vr.substr( tam - 2, tam ); 
		}
        else if ( (tam >= 6) && (tam <= 8) ){
             campo.value = vr.substr( 0, tam - 5 ) + '' + vr.substr( tam - 5, 3 ) + '' + vr.substr( tam - 2, tam ); 
		}
        else if ( (tam >= 9) && (tam <= 11) ){
             campo.value = vr.substr( 0, tam - 8 ) + '' + vr.substr( tam - 8, 3 ) + '' + vr.substr( tam - 5, 3 ) + '' + vr.substr( tam - 2, tam ); 
		}
        else if ( (tam >= 12) && (tam <= 14) ){
             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 ); 
		}
        else if ( (tam >= 15) && (tam < 17) ){
             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 );
		}
    	else if (tam	==	17){
		 	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, 2 ) + '' + vr.substr( tam - 2, tam );
		}
	
	
	}      
	return true;      
}

/*
	Função para formatar moeda
	Parametros:
		obj  	= campo
		sepMil  = separador de milhar ex: (. ou ,)
		sepDec  = separador de decimal ex: (. ou ,)
		tecla	= tecla que foi pressionada
	Retorno : True para teclas válidas e False para teclas inválidas
	Chamada : onkeydown = formataMoeda(this,'.',',',event)
*/
function formataMoeda(obj,sepMil,sepDec,tecla) {
	var strValidar = '0123456789'; // variavel que será usada para validar somente números	
	var codTecla = (window.Event) ?  tecla.which : tecla.keyCode;	
	if (codTecla == 13) // verifica tecla enter
		return true; 
	if (codTecla == 8) // verifica tecla delete
		return true;
	tecPress = String.fromCharCode(codTecla);
	if (strValidar.indexOf(tecPress) == -1) // verifca se é um valor válido (inteiro) / retorna false se for não inteiro 
		return false; 
	strTam = obj.value.length;
	// Verifica se strTam é menor que o valor de maxlength do objeto
	if(strTam < 8){
		for(i = 0; i < strTam; i++)
			if ((obj.value.charAt(i) != '0') && (obj.value.charAt(i) != sepDec)) 
				break;
		strAux = '';
		for(; i < strTam; i++)
			if (strValidar.indexOf(obj.value.charAt(i))!=-1) 
				strAux += obj.value.charAt(i);
		strAux += tecPress;
		strTam = strAux.length;
		if (strTam == 0) 
			obj.value = '';
		if (strTam == 1) 
			obj.value = '0'+ sepDec + '0' + strAux;
		if (strTam == 2) 
			obj.value = '0'+ sepDec + strAux;
		if (strTam > 2) {
			strAux2 = '';
			for (j = 0, i = strTam - 3; i >= 0; i--) {
				if (j == 3) {
					strAux2 += sepMil;
					j = 0;
				}
				strAux2 += strAux.charAt(i);
				j++;
			}
			obj.value = '';
			strTam2 = strAux2.length;
			for (i = strTam2 - 1; i >= 0; i--)
				obj.value += strAux2.charAt(i);
			obj.value += sepDec + strAux. substr(strTam - 2, strTam);
		}
		return false;
	}
}