<!-- Arquivo de Formata es em Javascript -->
<!-- Verso 1.0 -->
<!-- Criado por Alexandre Verta Eiras - alexandre.verta@gmail.com -->
<!-- Data de cria o: 02/07/2006 -->
<!-- Modificado por: -->
<!-- Data de modifica o -->

function FormataData(input,pEvent) {
	var evt = new CrossEvent(pEvent);
	var keyCode = evt.keyCode;
	var charCode = evt.charCode;
	var strBarra = "/"; 
	var strCheck = '0123456789';	
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	if (keyCode != 8 ){ 
		if(input.value.length == 2){input.value = input.value+strBarra}
		else if(input.value.length == 5){input.value = input.value+strBarra}
	}
}

function FormataDataResumida(input,pEvent) {
	var evt = new CrossEvent(pEvent);
	var keyCode = evt.keyCode;
	var charCode = evt.charCode;
	var strBarra = "/"; 
	var strCheck = '0123456789';	
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	if (keyCode != 8 ){ 
		if(input.value.length == 2){input.value = input.value+strBarra}
	}
}

function FormataHora(input, pEvent){
//Ajusta m scara de Hora e s permite digita o de n meros
	var evt = new CrossEvent(pEvent);
	var keyCode = evt.keyCode;
	var charCode = evt.charCode;
	var str = ":"; 
	var strCheck = '0123456789';	
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	if (keyCode != 8 ){ 
		if(input.value.length == 2){
			input.value += str
		}
	}
}


function FormataCep(input,pEvent) {
	var evt = new CrossEvent(pEvent);
	var keyCode = evt.keyCode;
	var charCode = evt.charCode;
	var strTraco = "-"; 
	var strCheck = '0123456789';	
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	if (keyCode != 8 ){ 
		if(input.value.length == 5){input.value = input.value+strTraco}
	}
}


function FormataCPF(input,pEvent) {
	var evt = new CrossEvent(pEvent);
	var keyCode = evt.keyCode;
	var charCode = evt.charCode;
	var strPonto = "."; 
	var strTraco = "-";
	var strCheck = '0123456789';	
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	if (keyCode != 8 ){ 
		if(input.value.length == 3){input.value = input.value+strPonto}
		else if(input.value.length == 7){input.value = input.value+strPonto}
		else if(input.value.length == 11){input.value = input.value+strTraco}
	}
}

function FormataIE(valor)
	{
		switch (valor.length)
		{
			case 3:
				valor+='.';
			break;
			case 7:
				valor+=".";
			break;
			case 11:
				valor+=".";
			break;
		}
		return valor;
	}

function formataStrToCPF(str) {
   var valor = "";
   var teste = str;
   for (var i = 1;i<=teste.length;i++) {
      if (!isNaN(teste.charAt(i-1))) {
         valor += teste.charAt(i-1);
         if (valor.length==3|valor.length==7) {
            valor += ".";
         }
         if (valor.length==11) {
            valor += "-";
         }
      }
   }
   return valor;
} 

function FormataCNPJ(input,pEvent) {
	var evt = new CrossEvent(pEvent);
	var keyCode = evt.keyCode;
	var charCode = evt.charCode;
	var strPonto = "."; 
	var strTraco = "-";
	var strBarra = "/";
	var strCheck = '0123456789';	
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	if (keyCode != 8 ){ 
		if(input.value.length == 2){input.value = input.value+strPonto}
		else if(input.value.length == 6){input.value = input.value+strPonto}
		else if(input.value.length == 10){input.value = input.value+strBarra}
		else if(input.value.length == 15){input.value = input.value+strTraco}
	}
}

function FormataTel(input,pEvent) {
	var evt = new CrossEvent(pEvent);
	var keyCode = evt.keyCode;
	var charCode = evt.charCode;
	var strAbreParent = "("; 
	var strFechaParent = ")"; 					  
	var strTraco = "-";
	var strCheck = '0123456789';	
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	if (keyCode != 8 ){ 
		if(input.value.length == 0){input.value = input.value+strAbreParent}
		else if(input.value.length == 3){input.value = input.value+strFechaParent}
		else if(input.value.length == 8){input.value = input.value+strTraco}
	}
}

function FormataNTel(input,pEvent) {
	var evt = new CrossEvent(pEvent);
	var keyCode = evt.keyCode;
	var charCode = evt.charCode;
	var strTraco = "-";
	var strCheck = '0123456789';	
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	if (keyCode != 8 ){ 
		if(input.value.length == 4){input.value = input.value+strTraco}
	}
}

FormataInputValor = function(n, c, d, t){
    var m = (c = Math.abs(c) + 1 ? c : 2, d = d || ",", t = t || ".",
        /(\d+)(?:(\.\d+)|)/.exec(n + "")), x = m[1].length > 3 ? m[1].length % 3 : 0;
    return (x ? m[1].substr(0, x) + t : "") + m[1].substr(x).replace(/(\d{3})(?=\d)/g,
        "$1" + t) + (c ? d + (+m[2] || 0).toFixed(c).substr(2) : "");
};

function FormataValor(fld, milSep, decSep, pEvent) {
	var sep = 0;
	var key = '';
	var i = j = 0;
	var len = len2 = 0;
	var strCheck = '0123456789';
	var aux = aux2 = '';
	var evt = new CrossEvent(pEvent);
	var keyCode = evt.keyCode;
	var charCode = evt.charCode;
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	len = fld.value.length;
	for(i = 0; i < len; i++)
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;
	aux = '';
	for(; i < len; i++)
		if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
	aux += key;
	len = aux.length;
	if (len == 0) fld.value = '';
	if (len == 1) fld.value = '0'+ decSep + '0' + aux;
	if (len == 2) fld.value = '0'+ decSep + aux;
	if (len > 2) {
		aux2 = '';
		for (j = 0, i = len - 3; i >= 0; i--) {
			if (j == 3) {
				aux2 += milSep;
				j = 0;
			}
			aux2 += aux.charAt(i);
			j++;
		}
		fld.value = '';
		len2 = aux2.length;
		for (i = len2 - 1; i >= 0; i--)
			fld.value += aux2.charAt(i);
		fld.value += decSep + aux.substr(len - 2, len);
	}
	return false;
}

function FormataValorPrint(fld, milSep, decSep) {
	var sep = 0;
	var key = '';
	var i = j = 0;
	var len = len2 = 0;
	var strCheck = '0123456789';
	var aux = aux2 = '';
	//var evt = new CrossEvent(pEvent);
	//var keyCode = evt.keyCode;
	//var charCode = evt.charCode;
	if (keyCode == 8 || keyCode == 9) return true;
	key = String.fromCharCode(charCode);
	if (strCheck.indexOf(key) == -1) return false;
	len = fld.value.length;
	for(i = 0; i < len; i++)
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;
	aux = '';
	for(; i < len; i++)
		if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
	aux += key;
	len = aux.length;
	if (len == 0) fld.value = '';
	if (len == 1) fld.value = '0'+ decSep + '0' + aux;
	if (len == 2) fld.value = '0'+ decSep + aux;
	if (len > 2) {
		aux2 = '';
		for (j = 0, i = len - 3; i >= 0; i--) {
			if (j == 3) {
				aux2 += milSep;
				j = 0;
			}
			aux2 += aux.charAt(i);
			j++;
		}
		fld.value = '';
		len2 = aux2.length;
		for (i = len2 - 1; i >= 0; i--)
			fld.value += aux2.charAt(i);
		fld.value += decSep + aux.substr(len - 2, len);
	}
	return false;
}

function formataNumero(numero,dec,thou,pnt,curr1,curr2,n1,n2) {
	if(numero==0){
		return '0,00';
	}
	var x = Math.round(numero * Math.pow(10,dec));
	if (x >= 0) n1=n2='';
	var y = (''+Math.abs(x)).split('');
	var z = y.length - dec;
	y.splice(z, 0, pnt);
	while (z > 3) {
		z-=3; 
		y.splice(z,0,thou);
	}
	var r = curr1+n1+y.join('')+n2+curr2;
	return r;
}
fmtMoney = function(n, c, d, t){
    var m = (c = Math.abs(c) + 1 ? c : 2, d = d || ",", t = t || ".",
        /(\d+)(?:(\.\d+)|)/.exec(n + "")), x = m[1].length > 3 ? m[1].length % 3 : 0;
    return (x ? m[1].substr(0, x) + t : "") + m[1].substr(x).replace(/(\d{3})(?=\d)/g,
        "$1" + t) + (c ? d + (+m[2] || 0).toFixed(c).substr(2) : "");
};

function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g,'');
if(isNaN(num)) num = "0";
cents = Math.floor((num*100+0.5)%100);
num = Math.floor((num*100+0.5)/100).toString();
if(cents < 10) cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3));
return ("R$ " + num + "." + cents);
}

function float2moeda(num) {

   x = 0;

   if(num<0) {
      num = Math.abs(num);
      x = 1;
   }

   if(isNaN(num)) num = "0";
      cents = Math.floor((num*100+0.5)%100);

   num = Math.floor((num*100+0.5)/100).toString();

   if(cents < 10) cents = "0" + cents;
      for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
         num = num.substring(0,num.length-(4*i+3))+'.'
               +num.substring(num.length-(4*i+3));

   ret = num + ',' + cents;

   if (x == 1) ret = ' - ' + ret;return ret;

}