/*
vForm()
	Valida os campos do formulário.
*/
function vForm(vfields){
	for(var i = 0; i < vfields.length;i++){
		var field = document.getElementById(vfields[i]);
	}
}
/*
fDate()
	Valida os campos de data do formulário
*/
function fDate(obj){
	var d = retNum(obj.value);
	d = d.substr(0,2) + '/' + d.substr(2,2) + '/' + d.substr(4,4);
	obj.value=d;
}
function vDate(id) {
	var obj = document.getElementById(id);
	hoje = new Date();
	anoAtual = hoje.getFullYear();
	barras = obj.value.split("/");
	if (barras.length == 3){
		dia = barras[0];
		mes = barras[1];
		ano = barras[2];
		resultado = (!isNaN(dia) && (dia > 0) && (dia < 32)) && (!isNaN(mes) && (mes > 0) && (mes < 13)) && (!isNaN(ano) && (ano.length == 4) && (ano <= anoAtual && ano >= 1900));
		if (!resultado) {
			return (false);
		}
	} else {
		return (false);
		}
		return (true);
}
/*
fFone()
	Valida os campos de telefone do formulário
*/
function fFone(obj){
	var fone=retNum(obj.value);
	var len = fone.length;
	var format = '';
	switch(len){
		case(10): format = '(99)9999-9999';	break;
		case( 9): format = '(99)999-9999' ;	break;
		case( 8): format = '9999-9999'; 	break;
		case( 7): format = '999-9999';		break;
	}
	var ctr=0;
	var txt='';
	for(var i = 0; i<len;i++){
		var chr = fone.charAt(i);
		var fmt = format.charAt(i+ctr);
		if(fmt != '9'){
			txt+=fmt;
			ctr++;
		}
		txt+=chr;
	}
	obj.value=txt;
}
function vFone(id){
	var obj = document.getElementById(id);
	var fone=retNum(obj.value);
	var len = fone.length;
	if(len < 7){
		return (false);
	}
	return (true);
}
/*
vCpf()
	Valida o CPF no formulário
*/
function vCpf(obj){
	var cpf  = retNum(obj.value);
	var dig  = cpf.substr(9,11);
	var key  ="098765432";
	var soma = 0;
	var dkey, dcpf;
	for(var i=0;i<9;i++){
		dkey = key.charAt(i);
		dcpf = cpf.charAt(i);
		dkey = i==0 && dkey==0 ? 10 : dkey;
		soma+=dkey * dcpf;
	}
	resultado = soma % 11;
	dv1 = resultado == 0 || resultado == 1 ? 0 : 11 - resultado;
	var key = "1098765432";
	var cpf = cpf.toString() + dv1.toString();
	soma=0;
	for(var i=0;i<10;i++){
		dkey = key.charAt(i);
		dcpf = cpf.charAt(i);
		dkey = i==1 && dkey==0 ? 10 : dkey;
		dkey = i==0 && dkey==1 ? 11 : dkey;
		soma += dkey * dcpf;
	}
	resultado = soma % 11;
	dv2 = resultado == 0 || resultado == 1 ? 0 : 11 - resultado;
	newdig = dv1.toString() + dv2.toString();
	cpf = cpf.substr(0,9);
	cpf = cpf.substr(0,3)+'.'+cpf.substr(3,3)+'.'+cpf.substr(6,3)+'-'+newdig;
	return(dig == newdig ? cpf: false);
}
/*
fCep()
	Valida os campos de CEP no formulário.
*/
function fCep(obj){
	var cep = retNum(obj.value);
	cep = cep.substr(0,2) + '.' + cep.substr(2,3) + '-' + cep.substr(5,3);
	obj.value = cep;
}

function vCep(obj){
	var obj = document.getElementById(id);
	var cep=retNum(obj.value);
	var len = cep.length;
	if(len < 8){
		return (false);
	}
	return (true);
}
/*
retNum()
	Retorna apenas os números de uma string.
*/
function retNum(t){
	var validchars = "0123456789";
	var newt="";
	for(var i = 0; i<t.length;i++){
		if(validchars.indexOf(t.charAt(i))!= -1){
			newt+=t.charAt(i);
		}
	}
	return(newt);
}
/*
vNum()
	Valida os campos numéricos do formuário
	Verifica se foram digitados apenas números.
*/
function vNum(){
}
/*
vMoney()
	Valida os campos de currency no formulário.
*/
/*
function formatAsMoney(mnt) {
    mnt -= 0;
    mnt = (Math.round(mnt*100))/100;
    return (mnt == Math.floor(mnt)) ? mnt + '.00' 
              : ( (mnt*10 == Math.floor(mnt*10)) ? 
                       mnt + '0' : mnt);
}
*/
function vMoney(){
}
/*
vCnpj()
	Valida o CNPJ no formulário
*/
function vCnpj(obj){
	var key = "543298765432";
	var cnpj = retNum(obj.value);
	var dig  = cnpj.substr(12,14);
	var soma = 0;
	var dkey, dcpf;
	for(var i=0;i<9;i++){
		dkey = key.charAt(i);
		dcpf = cpf.charAt(i);
		dkey = i==0 && dkey==0 ? 10 : dkey;
		soma+=dkey * dcpf;
	}
	resultado = soma % 11;
	dv1 = resultado == 0 || resultado == 1 ? 0 : 11 - resultado;
	var key = "1098765432";
	var cpf = cpf.toString() + dv1.toString();
	soma=0;
	for(var i=0;i<10;i++){
		dkey = key.charAt(i);
		dcpf = cpf.charAt(i);
		dkey = i==1 && dkey==0 ? 10 : dkey;
		dkey = i==0 && dkey==1 ? 11 : dkey;
		soma += dkey * dcpf;
	}
	resultado = soma % 11;
	dv2 = resultado == 0 || resultado == 1 ? 0 : 11 - resultado;
	newdig = dv1.toString() + dv2.toString();
	cpf = cpf.substr(0,9);
	cpf = cpf.substr(0,3)+'.'+cpf.substr(3,3)+'.'+cpf.substr(6,3)+'-'+newdig;
	return(dig == newdig ? cpf: false);
}

function vNome(id) {
	var obj = document.getElementById(id);
	var len = obj.value.length;
	if(len < 7){
		return (false);
	}
	return (true);
}

function vEmail(id) {
	var obj = document.getElementById(id);
	parte1 = obj.value.indexOf("@");
	parte2 = obj.value.indexOf(".");
	parte3 = obj.value.length;
	if (!(parte1 >= 3 && parte2 >= 6 && parte3 >= 9)) {
		return (false);
	}
	return (true);
}