function SomenteNumero(e){
    var tecla=(window.event)?event.keyCode:e.which;
    if((tecla > 47 && tecla < 58)) return true;
    else{
    if (tecla != 8) return false;
    else return true;
    }
}


function CheckAll(frm) { 
	cont = 0;
   for (var i=0;i<frm.elements.length;i++) {
		var x = frm.elements[i];
		if (x.checked == true) { 
			x.checked = false;
		}
		else{	
			x.checked = true;
		}
	}
}
function CheckAll_campo(frm,campo) { 
	cont = 0;
   for (var i=0;i<frm.elements.length;i++) {
		var x = frm.elements[i];
		if(x.name==campo){
			if (x.checked == true) { 
				x.checked = false;
			}
			else{	
				x.checked = true;
			}
		}
	}
}

function formataDigito(obj,valor,pos){
	valor	= valor.replace( "-", "");
	tam	= valor.length ;
	obj.value = valor.substr( 0, tam - pos ) + '-' + valor.substr( tam - pos, tam);
}
function campo_obri(frm,arr_campos,arr_linhas){
	for (c=0; c<arr_campos.length; c++){
		campo	= arr_campos[c];
		linha		= arr_linhas[c];
		if ((!eval('frm.'+campo+'.value'))||(eval('frm.'+campo+'.value')==" ")){
			document.getElementById(linha).bgColor="#ff0000";
			eval('frm.'+campo+'.focus()');
			return false;
		}
		else {
			document.getElementById(linha).bgColor="";
		}
	}
}

function veremail(obj, email){
	if (email){
		reemail=/^[\w-]+(\.[\w-]+)*@(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/;
		if (reemail.test(email)) {
			return true;
		}
		else {
			alert(email + " NÃO é um endereço de e-mail válido.");
			obj.focus();
			return false;
		}
	}
}
function mudacor(obj, cor){
	obj.bgColor=cor;
}
function selcampo(obj, cor){
	obj.style.background=cor;
}
function masc_data(objeto,data) 
{ 
    var mydata = ''; 
    mydata = mydata + data; 
    if (mydata.length == 2) { 
        mydata = mydata + '/'; 
		objeto.value = mydata; 
    } 
	if (mydata.length == 5) { 
        mydata = mydata + '/'; 
		objeto.value = mydata; 
    } 
}
function masc_mes(objeto,data) 
{ 
    var mydata = ''; 
    mydata = mydata + data; 
    if (mydata.length == 2) { 
        mydata = mydata + '/'; 
		objeto.value = mydata; 
    } 
	
}
function masc_hora(objeto,hora) 
{ 
    var myhora = ''; 
    myhora = myhora + hora; 
    if (myhora.length == 2) { 
        myhora = myhora + ':'; 
		objeto.value = myhora; 
    } 
}

function masc_mat(objeto,dados) 
{ 
    var mydados = ''; 
    mydados = mydados + dados; 
    if (mydados.length == 6) { 
        mydados = mydados + '-'; 
		objeto.value = mydados; 
    } 
	if (mydados.length == 9) { 
        mydados = mydados + '-'; 
		objeto.value = mydados; 
    } 
}

function masc_cep(objeto,cep) 
{ 
    var mycep = ''; 
    mycep = mycep + cep; 
    if (mycep.length == 5) { 
        mycep = mycep + '-'; 
		objeto.value = mycep; 
    } 
}

function MascaraFone(campo){
	var v = '';
	v = v + campo.value;
	if (v.length == 0){
		v = '(' + v;
		campo.value = v;
	}
	if (v.length == 3){
		v = v + ') ';
		campo.value = v;
	}
	if (v.length == 9){
		v = v + '-';
		campo.value = v;
	}
}

function masc_cpf(objeto,cpf) 
{ 
    var mycpf = ''; 
    mycpf = mycpf + cpf; 
    if (mycpf.length == 3) { 
        mycpf = mycpf + '.'; 
		objeto.value = mycpf; 
    } 
	if (mycpf.length == 7) { 
        mycpf = mycpf + '.'; 
		objeto.value = mycpf; 
    }
	if (mycpf.length == 11) { 
        mycpf = mycpf + '-'; 
		objeto.value = mycpf; 
    }
}

function masc_cnpj(objeto,cnpj) 
{ //22.222.222/0001-11
    var mycnpj = ''; 
    mycnpj = mycnpj + cnpj; 
    if (mycnpj.length == 2) { 
        mycnpj = mycnpj + '.'; 
		objeto.value = mycnpj; 
    } 
	if (mycnpj.length == 6) { 
        mycnpj = mycnpj + '.'; 
		objeto.value = mycnpj; 
    }
	if (mycnpj.length == 10) { 
        mycnpj = mycnpj + '/'; 
		objeto.value = mycnpj; 
    }
	if (mycnpj.length == 15) { 
        mycnpj = mycnpj + '-'; 
		objeto.value = mycnpj; 
    }
}

function masc_rgie(objeto,rgie) 
{ //22.222.222/0001-11
    var myrgie = ''; 
    myrgie = myrgie + rgie; 
    if (myrgie.length == 3) { 
        myrgie = myrgie + '.'; 
		objeto.value = myrgie; 
    } 
	if (myrgie.length == 7) { 
        myrgie = myrgie + '.'; 
		objeto.value = myrgie; 
    }
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function valida_CPF(obj){
	if (obj.value!=''){
		s = obj.value;
		if (isNaN(s)) {
			alert('preencha somente números!');
			obj.focus();
			return false;
		}
		var i;
		var c = s.substr(0,9);
		var dv = s.substr(9,2);
		var d1 = 0;
		for (i = 0; i < 9; i++) {
		d1 += c.charAt(i)*(10-i);
	}
	if (d1 == 0){
		alert('CPF inválido!');
		obj.focus();
		return false;
	}         
    d1 = 11 - (d1 % 11);
    if (d1 > 9) d1 = 0;         
	if (dv.charAt(0) != d1) {
		alert('CPF inválido!');
		obj.focus();
		return false;         
	}
	d1 *= 2;
	for (i = 0; i < 9; i++) {
		d1 += c.charAt(i)*(11-i);
	}
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(1) != d1) {
		alert('CPF inválido!');
		obj.focus();
		return false;
    }
    return true;
	}
	else {
		return true;
	}
}
function confsenha(frm){
	if (frm.senha.value){
		if (frm.senha.value!=frm.csenha.value){
			alert('Confirmação de senha inválida, tente novamente');
			frm.senha.value='';
			frm.csenha.value='';
			frm.senha.focus();
			return false;
		}
	}
}
function elimina_virgula(obj, valor){	
	obj.value = valor.replace(',','.');
}
function valida_CNPJ(obj){
	if (obj.value!=''){
		s = obj.value;
		if (isNaN(s)) {
			alert('Preencha somente números!');
			obj.focus();
			return false;
		}
		var i;
		var c = s.substr(0,12);
		var dv = s.substr(12,2);
		var d1 = 0;
		for (i = 0; i <12; i++){
			d1 += c.charAt(11-i)*(2+(i % 8));
		}
		if (d1 == 0) {
			alert('CNPJ inválido!');
			obj.focus();
			return false;
		}
		d1 = 11 - (d1 % 11);
		if (d1 > 9) d1 = 0;
		if (dv.charAt(0) != d1){
			alert('CNPJ inválido!');
			obj.focus();
			return false;
		}
		d1 *= 2;
		for (i = 0; i < 12; i++){
			d1 += c.charAt(11-i)*(2+((i+1) % 8));
		}
		d1 = 11 - (d1 % 11);
		if (d1 > 9) 
			d1 = 0;
			if (dv.charAt(1) != d1){
				alert('CNPJ inválido!');
				obj.focus();
				return false;
			}
			return true;
	}
	else {
		return true;
	}
}
function formatnumber(num) {
	if (isNaN(num)) 	{ 
		num = "0"; 
	} 
	sign = (num == (num = Math.abs(num))); 
	num = Math.floor(num*100+0.50000000001); 
	cents = num%100; 
	num = Math.floor(num/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 (((sign)?'':'-') + num + '.' + cents); 
} 
/**
  * Formata telefone (Mascara)
  * @param $campo Int id
  * @param $event Evento
  * @return String telefone formatado
  **/
function formataTelefone(campo, e) {
	t = typeof window.event != "undefined" ? window.event.keyCode : e.which;
	if((isNaN(String.fromCharCode(t)) || (t == 32)) && (t != 8 && t != 0)){
		return false;
	}
	campo = typeof(campo) == "object" ? campo : document.getElementById(campo);
	if(campo.value.charAt(0) != "(" && !isNaN(String.fromCharCode(t)))
		campo.value = "("+campo.value;
	if( typeof window.event != "undefined" ) {
		if(window.event.keyCode != 40) {
			if(campo.value.length == 0) {
				campo.value += '(';
			}
		}
		if(window.event.keyCode != 41) {
			if(campo.value.length == 3) {
				campo.value += ')';
			}
		}
		if(window.event.keyCode != 45) {
			if(campo.value.length == 8) {
				campo.value += '-';
			}
		}
	} else {
		if (e.which != 8) {
			if(e.which != 0) {
				if(e.which != 40) {
					if(campo.value.length == 0) {
						campo.value += '(';
					}
				}
			}
			if(e.which != 41) {
				if(campo.value.length == 3) {
					campo.value += ')';
				}
			}
			if(e.which != 45) {
				if(campo.value.length == 8) {
					campo.value += '-';
				}
			}
		}
	}
}

/**
  * Formata a digitação do CEP
  * @param campo String campo que será atualizado
  * @param e event evento
  * @return void
  **/
function formataCep(campo, e) {
	t = typeof window.event != "undefined" ? window.event.keyCode : e.which;
	if((isNaN(String.fromCharCode(t)) || (t == 32)) && (t != 8 && t != 0)) {
		return false;
	}
	if( typeof window.event != "undefined" ) {
		if (window.event.keyCode != 45) {
			if (campo.value.length == 5) {
				campo.value += '-';
			}
		}
	} else {
		if (e.which != 8) {
			if (e.which != 45) {
				if (campo.value.length == 5) {
					campo.value += '-';
				}
			}
		}
	}
}

/**
  * Formata a número decimal máscara
  * @param obj String campo que será atualizado  
  * @return void
  **/
function mascara_num(obj) {
	valida_num(obj)
	valor = obj.value.replace("-","");
	valor = valor.replace(",","");
	if (valor.length >= 3) {
		valor = poe_ponto_num(valor.substring(0,valor.length-2))+","+valor.substring(valor.length-2, valor.length);
	}
	obj.value = valor;
}

/**
  * Formata a número decimal colocando os pontos
  * @param valor String campo que será atualizado  
  * @return void
  **/
function poe_ponto_num(valor) {
	valor = valor.replace(/\./g,"");
	if (valor.length > 3) {
		valores = "";
		while (valor.length > 3) {
			valores = "."+valor.substring(valor.length-3,valor.length)+""+valores;
			valor = valor.substring(0,valor.length-3);
		}
		return valor+""+valores;
	} else {
		return valor;
	}
}

/**
  * Formata a número decimal valida número
  * @param obj String campo que será atualizado  
  * @return void
  **/
function valida_num(obj) {
	numeros = new RegExp("[0-9]");
	while (!obj.value.charAt(obj.value.length-1).match(numeros)) {
		if(obj.value.length == 1 && obj.value == "-") {
			return true;
		}
		if(obj.value.length >= 1) {
			obj.value = obj.value.substring(0,obj.value.length-1);
		} else {
			return false;
		}
	}
}