// -------------------------------------------------------------------------
// Formata numero inteiro

function fNumeroInt(campo, e) {
	try {
		if(window.event) var tecla = e.keyCode;
		else tecla = e.which;
		
		if((tecla > 47 && tecla < 58) || (tecla == 0) || (tecla == 8) || (tecla == 13) || (tecla == 45)) return true;
		else return false;
	}
	catch(err) { return true; }
}

// -------------------------------------------------------------------------
// Formata numero ponto flutuante

function fNumeroFloat(campo, e) {
	try {
		if(window.event) var tecla = e.keyCode;
		else tecla = e.which;
		
		if((tecla > 47 && tecla < 58) || (tecla == 0) || (tecla == 8) || (tecla == 13) || (tecla == 45) || (tecla == 44)) return true;
		else return false;
	}
	catch(err) { return true; }
}

// -------------------------------------------------------------------------
// Formata CPF

function fCpf(campo, e) {
	try {
		var vnum = fNumeroInt(campo, e);
		if(vnum == false) return false;
		
		if(window.event) var tecla = e.keyCode;
		else tecla = e.which;
		
		if(tecla != 8 && tecla != 13) {
			var str = campo.value;
			
			var str = new String(campo.value);
			str = str.replace(/(\||\_|\.|\(|\)|\/|\-| )+/g, '');
		
			var tam = str.length + 1;
			
			if(tam > 3 && tam < 7) campo.value = str.substr(0,3) + '.' + str.substr(3, tam);
			if(tam >= 7 && tam < 10) campo.value = str.substr(0,3) + '.' + str.substr(3,3) + '.' + str.substr(6, tam-6);
			if(tam >= 10 && tam < 12) campo.value = str.substr(0,3) + '.' + str.substr(3,3) + '.' + str.substr(6,3) + '-' + str.substr(9,tam-9);
		}
		
		return true;
	}
	catch(err) { return true; }
}

// -------------------------------------------------------------------------
// Formata CNPJ.

function fCnpj(campo, e) {
	try {
		var vnum = fNumeroInt(campo, e);
		if(vnum == false) return false;
		
		if(window.event) var tecla = e.keyCode;
		else tecla = e.which;
		
		if(tecla != 8 && tecla != 13) {
			var str = campo.value;
			
			var str = new String(campo.value);
			str = str.replace(/(\||\_|\.|\(|\)|\/|\-| )+/g, '');
		
			var tam = str.length + 1;
			
			 if(tam > 2 && tam < 6) campo.value = str.substr(0,2) + '.' + str.substr(2, tam);
			 if(tam >= 6 && tam < 9) campo.value = str.substr(0,2) + '.' + str.substr(2,3) + '.' + str.substr(5,tam-5);
			 if(tam >= 9 && tam < 13) campo.value = str.substr(0,2) + '.' + str.substr(2,3) + '.' + str.substr(5,3) + '/' + str.substr(8,tam-8);
			 if(tam >= 13 && tam < 15) campo.value = str.substr(0,2) + '.' + str.substr(2,3) + '.' + str.substr(5,3) + '/' + str.substr(8,4)+ '-' + str.substr(12,tam-12);
		}
		
		return true;
	}
	catch(err) { return true; }
}

// -------------------------------------------------------------------------
// Formata cep

function fCep(campo, e) {
	try {
		var vnum = fNumeroInt(campo, e);
		if(vnum == false) return false;
		
		if(window.event) var tecla = e.keyCode;
		else tecla = e.which;
		
		if(tecla != 8 && tecla != 13) {
			var str = campo.value;
			
			var str = new String(campo.value);
			str = str.replace(/(\||\_|\.|\(|\)|\/|\-| )+/g, '');
		
			var tam = str.length + 1;
			
			if(tam > 5 && tam < 7) campo.value = str.substr(0,5) + '-' + str.substr(5, tam);
	
		}
		
		return true;
	}
	catch(err) { return true; }
}

// -------------------------------------------------------------------------
// Formata data

function fData(campo, e) {
	try {
		var vnum = fNumeroInt(campo, e);
		if(vnum == false) return false;
		
		if(window.event) var tecla = e.keyCode;
		else tecla = e.which;
		
		if(tecla != 8 && tecla != 13) {
			var str = campo.value;
			alert(campo.value);
			alert(str);
			var str = new String(campo.value);
			str = str.replace(/(\||\_|\.|\(|\)|\/|\-| )+/g, '');
		
			var tam = str.length + 1;
			
			if(str.substr(0,2) > 31) return false;
			if(str.substr(2,2) > 12) return false;
			
			if(tam > 2 && tam < 4) campo.value = str.substr(0,2) + '/' + str.substr(2, tam);
			if(tam > 4 && tam < 11) campo.value = str.substr(0,2) + '/' + str.substr(2,2) + '/' + str.substr(4, tam-4);
			
		}
		
		return true;
	}
	catch(err) { return true; }
}

// -------------------------------------------------------------------------
// Formata data / hora

function fDataHora(campo, e) {
	try {
		var vnum = fNumeroInt(campo, e);
		if(vnum == false) return false;
		
		if(window.event) var tecla = e.keyCode;
		else tecla = e.which;
		
		if(tecla != 8 && tecla != 13) {
			var str = campo.value;
			
			var str = new String(campo.value);
			str = str.replace(/(\||\_|\.|\(|\)|\/|\-| )+/g, '');
		
			var tam = str.length + 1;
			
			if(str.substr(0,2) > 31) return false;
			if(str.substr(2,2) > 12) return false;
			
			if(tam > 2 && tam < 4) campo.value = str.substr(0,2) + '/' + str.substr(2, tam);
			if(tam > 4 && tam < 11) campo.value = str.substr(0,2) + '/' + str.substr(2,2) + '/' + str.substr(4, tam-4);
			if(tam > 11 && tam < 17) campo.value = str.substr(0,2) + '/' + str.substr(2,2) + '/' + str.substr(4, 4) + ' ' + str.substr(10, tam-10);
		}
		
		return true;
	}
	catch(err) { return true; }
}

// -------------------------------------------------------------------------
// Formata data - formato americano (mm/dd/aaaa)

function fDataEUA(campo, e) {
	try {
		var vnum = fNumeroInt(campo, e);
		if(vnum == false) return false;
		
		if(window.event) var tecla = e.keyCode;
		else tecla = e.which;
		
		if(tecla != 8 && tecla != 13) {
			var str = campo.value;
			
			var str = new String(campo.value);
			str = str.replace(/(\||\_|\.|\(|\)|\/|\-| )+/g, '');
		
			var tam = str.length + 1;
			
			if(str.substr(0,2) > 12) return false;
			if(str.substr(2,2) > 31) return false;
			
			if(tam > 2 && tam < 4) campo.value = str.substr(0,2) + '/' + str.substr(2, tam);
			if(tam > 4 && tam < 11) campo.value = str.substr(0,2) + '/' + str.substr(2,2) + '/' + str.substr(4, tam-4);
		}
		
		return true;
	}
	catch(err) { return true; }
}

// -------------------------------------------------------------------------
// Formata data / hora - formato americano (mm/dd/aaaa)

function fDataHoraEUA(campo, e) {
	try {
		var vnum = fNumeroInt(campo, e);
		if(vnum == false) return false;
		
		if(window.event) var tecla = e.keyCode;
		else tecla = e.which;
		
		if(tecla != 8 && tecla != 13) {
			var str = campo.value;
			
			var str = new String(campo.value);
			str = str.replace(/(\||\_|\.|\(|\)|\/|\-| )+/g, '');
		
			var tam = str.length + 1;
			
			if(str.substr(0,2) > 12) return false;
			if(str.substr(2,2) > 31) return false;
			
			if(tam > 2 && tam < 4) campo.value = str.substr(0,2) + '/' + str.substr(2, tam);
			if(tam > 4 && tam < 11) campo.value = str.substr(0,2) + '/' + str.substr(2,2) + '/' + str.substr(4, tam-4);
			if(tam > 11 && tam < 17) campo.value = str.substr(0,2) + '/' + str.substr(2,2) + '/' + str.substr(4, 4) + ' ' + str.substr(10, tam-10);
		}
		
		return true;
	}
	catch(err) { return true; }
}

