/*--------------------------------------------------------------------------
ESPECIFICAÇÃO DAS FUNÇÕES:		

ex.: Nome_da_Funcao(parametroA, parametroB, ...) ............... Retorno
(-) é o que já está implementado e testado;
(+) ainda nao foi implementado/testado


+ PopUpMenor(pagina) ............................................
+ PopUpMenor1(pagina) ...........................................
+ PopUpMaior(pagina) ............................................
+ ShowModalMenor(pagina) ........................................
+ ShowModalMaior(pagina) ........................................
+ CPF (StrCPF) .................................................. true/false
+ Verifica_campo_cpf(campo)...................................... true/false
+ validaCNPJ .................................................... true/false
+ mascaraCnpj(campo, event) .....................................
+ SNumerico(event) .............................................. numero/null
- soNumero(event) ............................................... nada
- TestaData	..................................................... nada
- ehData ........................................................ nada	

- converteDataUSAFormat(data) ................................... data	
- comparaData(dataMenor, dataMaior) ............................. true/false
- verificaDataMenor(inicio, fim)..................................true/false
+ comparaNumero(numMenor, numMaior) ............................. true/false 
- formataData(Campo,teclapres) .................................. nada
+ formataMoeda(Campo,teclapres) ................................. nada 
+ ValidarTamanho(Campo,Tamanho do Campo)......................... true/false

-------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------
MENSAGENS
--------------------------------------------------------------------------*/
var GSTR_MSGCPFI   = 'CPF inválido!';
var GSTR_MSGCNPJ   = 'CNPJ inválido!';
var GSTR_MSGDATA   = 'Data inválida!';
var GSTR_MSGNUMERO = 'Numero inválido!';
var GSTR_MSGINTERNET = 'Internet Explorer 4.0 ou superior é necessário!';
/*--------------------------------------------------------------------------*/


//========================================================================

//window.defaultStatus="SID - Sistema de Indenização por Danos";

function PopUpMenor (pagina) {

t = 0; //margem do topo da tela
ws = 618; // largura da tela do popup
hs = 514; // altura da tela do popup
w = screen.width;
l=((w-(ws+10))/2);
window.open(pagina,'PopUp',' width='+ws+', height='+hs+', top='+t+', left='+l+', toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, menubar=no');
}

function PopUpMenorN (pagina) {

t = 200; //margem do topo da tela
ws = 400; // largura da tela do popup
hs = 100; // altura da tela do popup
w = screen.width;
l=((w-(ws+10))/2);
window.open(pagina,'PopUp',' width='+ws+', height='+hs+', top='+t+', left='+l+', toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, menubar=no');
}

function PopUpMenorM (pagina) {
t = 200; //margem do topo da tela
ws = 320; // largura da tela do popup
hs = 200; // altura da tela do popup
w = screen.width;
l=((w-(ws+10))/2);
window.open(pagina,'PopUp',' width='+ws+', height='+hs+', top='+t+', left='+l+', toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, menubar=no');
}

function PopUpMenor1 (pagina, ws, hs) {
t = 200; //margem do topo da tela
w = screen.width;
ws = 540; // largura da tela do popup
hs = 300; // altura da tela do popup
l=((w-(ws+10))/2);
window.open(pagina,'PopUp1',' width='+ws+', height='+hs+', top='+t+', left='+l+', toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, menubar=no');
}
function PopUpMenor01 (pagina, ws, hs) {
t = 200; //margem do topo da tela
w = screen.width;
ws = 480; // largura da tela do popup
hs = 220; // altura da tela do popup
l=((w-(ws+10))/2);
window.open(pagina,'PopUp1',' width='+ws+', height='+hs+', top='+t+', left='+l+', toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, menubar=no');
}

function PopUpMaior (pagina) {
t = 0; //margem do topo da tela
ws = 788; // largura da tela do popup
hs = 514; // altura da tela do popup
w = screen.width;
l=((w-(ws+10))/2);
window.open(pagina,'PopUp',' width='+ws+', height='+hs+', top='+t+', left='+l+', toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, menubar=no');
}

function ShowModalMenor (pagina) {
t = 0; //margem do topo da tela
ws = 624; // largura da tela do popup
hs = 514; // altura da tela do popup
w = screen.width;
l=((w-(ws+10))/2);
window.showModalDialog(pagina, 'ShowModal',' dialogWidth:'+ws+'px; dialogHeight:'+hs+'px; dialogTop:'+t+'px; dialogLeft:'+l+'px; center:0; scroll:1; help:0; status:0; resizeble:0;');
}

function ShowModalMaior (pagina) {
t = 0; //margem do topo da tela
ws = 794; // largura da tela do popup
hs = 514; // altura da tela do popup
w = screen.width;
l=((w-(ws+10))/2);
window.showModalDialog(pagina, 'ShowModal',' dialogWidth:'+ws+'px; dialogHeight:'+hs+'px; dialogTop:'+t+'px; dialogLeft:'+l+'px; center:0; scroll:1; help:0; status:0; resizeble:0;');
}

function ativar(id){
    nsm = 1; //número de menus
    for(i=1;i<=nsm;i++) {
		eval('m'+i).className = 'imTopico';
    }
	for(i=1;i<=nsm;i++) {
		if (i=id) {
		 eval('m'+i).className = 'imTopicoSel';
		 }
	return;
	}
}

function sativar(id){
    nsm = 10; //número de sub-menus
    for(i=1;i<=nsm;i++) {
		eval('sm'+i).className = 'imStopico';
    }
	for(i=1;i<=nsm;i++) {
		if (i=id) {
		 eval('sm'+i).className = 'imStopicoSel';
		 }
	return;
	}
}

function NaoMostrarMenu(){
	for(i=1;i<=1;i++)
	{
		eval('menu'+i).style.display = "none";
	}
}

function MostrarMenu(tipo){
	NaoMostrarMenu();
	menuValor = eval('menu'+tipo).style.display;
	if(menuValor == "none"){
		eval('menu'+tipo).style.display = "block";
	}
	else{
		eval('menu'+tipo).style.display  = "none";
	}
}

function CPF (StrCPF)
{
	x = 0;
	soma = 0;
	dig1 = 0;
	dig2 = 0;
	texto = "";
	StrCPF1="";
	len = StrCPF.length;
	x = len -1;
	for (var i=0; i <= len - 3; i++)
	{
		y = StrCPF.substring(i,i+1);
		soma = soma + ( y * x);
		x = x - 1;
		texto = texto + y;
	}
	dig1 = 11 - (soma % 11);
	if (dig1 == 10) dig1=0 ;
	if (dig1 == 11) dig1=0 ;
	StrCPF1 = StrCPF.substring(0,len - 2) + dig1 ;
	x = 11; soma=0;
	for (var i=0; i <= len - 2; i++)
	{
		soma = soma + (StrCPF1.substring(i,i+1) * x);
		x = x - 1;
	}
	dig2= 11 - (soma % 11);
	if (dig2 == 10) dig2=0;
	if (dig2 == 11) dig2=0;
	if ((dig1 + "" + dig2) == StrCPF.substring(len,len-2)){
		return true;
	}
	return false;
}


function Verifica_campo_cpf(campo) {
if (campo.value!=""){
	if (campo.value.length<14){
		 alert(GSTR_MSGCPFI);
      	campo.value = '';
      	campo.focus();
		return false;
	}
var cpf = campo.value.split("."); // Recebe o valor digitado no campo
var	cpf_2 = cpf[2].split("-")
var	cpf = cpf[0]+cpf[1]+cpf_2[0]+cpf_2[1]

if((cpf=='00000000000')||(cpf=='11111111111')||(cpf=='22222222222')||(cpf=='33333333333')||(cpf=='44444444444')||(cpf=='55555555555')||(cpf=='66666666666')||(cpf=='77777777777')||(cpf=='88888888888')||(cpf=='99999999999')){
  alert(GSTR_MSGCPFI);
      campo.value = '';
      campo.focus();
      return false;
}else{
	// Aqui começa a checagem do cpf
	var posicao, I, soma, dv, dv_informado;
	var digito = new Array(10);
	dv_informado = cpf.substr(9, 2); // Retira os dois últimos dígitos do número informado

	// Desemembra o número do cpf na array digito
	for (I=0; I<=8; I++) {
	  digito[I] = cpf.substr( I, 1);
	}

	// Calcula o valor do 10º dígito da verificação
	posicao = 10;
	soma = 0;
	   for (I=0; I<=8; I++) {
		  soma = soma + digito[I] * posicao;
		  posicao = posicao - 1;
	   }
	digito[9] = soma % 11;
	   if (digito[9] < 2) {
			digito[9] = 0;
	}
	   else{
		   digito[9] = 11 - digito[9];
	}

	// Calcula o valor do 11º dígito da verificação
	posicao = 11;
	soma = 0;
	   for (I=0; I<=9; I++) {
		  soma = soma + digito[I] * posicao;
		  posicao = posicao - 1;
	   }
	digito[10] = soma % 11;
	   if (digito[10] < 2) {
			digito[10] = 0;
	   }
	   else {
			digito[10] = 11 - digito[10];
	   }

	// Verifica se os valores dos dígitos verificadores conferem
	dv = digito[9] * 10 + digito[10];
	   if (dv != dv_informado) {
		  alert(GSTR_MSGCPFI);
		  campo.value = '';
		  campo.focus();
		  return false;
   } 
 }
 }
}
function validaCNPJ(campo) {
     CNPJ = campo.value;
     CNPJ = CNPJ. replace (".","");
     CNPJ = CNPJ. replace (".","");
     CNPJ = CNPJ. replace ("-","");
     CNPJ = CNPJ. replace ("/","");

     var a = [];
     var b = new Number;
     var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
     for (i=0; i<12; i++){
         a[i] = CNPJ.charAt(i);
         b += a[i] * c[i+1];
      }
     if ((x = b % 11) < 2) { 
	 	a[12] = 0 
	 }else{ 
	 	a[12] = 11-x 
	 }
     b = 0;
     for (y=0; y<13; y++) {
       	b += (a[y] * c[y]); 
     }
     if ((x = b % 11) < 2) { 
	 	a[13] = 0; 
	 }else{ 
	 	a[13] = 11-x; 
	 }
     if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])){
     	alert(GSTR_MSGCNPJ);
		campo.value = '';
		campo.focus();
		return false;
     }
     return true;
}
function mascaraCnpj(campo, event){
  if (SNumerico(event)){
	switch(campo.value.length){
		case 2:
			campo.value += ".";
			break;
		case 6:
			campo.value += ".";
			break;
		case 10:
			campo.value += "/";
			break;
		case 15:
			campo.value += "-";
			break;
		default:
			return;
	}
  }
  else{
    return SNumerico(event);
  }
}



function mascaraCpf(campo, event){
  if (SNumerico(event)){
	switch(campo.value.length){
		case 3:
			campo.value += ".";
			break;
		case 7:
			campo.value += ".";
			break;
		case 11:
			campo.value += "-";
			break;
		default:
			return;
	}
  }
  else{
    return SNumerico(event);
  }
}
function mascaraCpfCnpj(campo, event){
  if (SNumerico(event)){
	if (campo.value.length<14){
		switch(campo.value.length){
			
			case 3:
				campo.value += ".";
				break;
			case 7:
				campo.value += ".";
				break;
			case 11:
				campo.value += "-";
				break;
			default:
				return;
			
		}
	}else{
		if (campo.value.length>13 &&campo.value.length<15){
			campo.value=campo.value.substring(0,2)+"."+campo.value.substring(2,3)+campo.value.substring(4,6)+"."+campo.value.substring(6,7)+campo.value.substring(8,10)+"/"+campo.value.substring(10,11)+campo.value.substring(12,14)
		}else{
			switch(campo.value.length){
				case 15:
					campo.value += "-";
					break;
				default:
					return;
			}
		}
	}
  }
  else{
    return SNumerico(event);
  }
}

function mascaraCep(campo, event){
  if (SNumerico(event)){
	switch(campo.value.length){
		case 2:
			campo.value += ".";
			break;
		case 6:
			campo.value += "-";
			break;
		default:
			return;
	}
  }
  else{
    return SNumerico(event);
  }
}
function mascaraRG(campo, event){
  if (SNumerico(event)){
	switch(campo.value.length){
		case 8:
			campo.value += "-";
			break;
		default:
			return;
	}
  }
  else{
    return SNumerico(event);
  }
}

/* Funçao só irá permitir escrever numero */
function SNumerico(event){
	var t=event.wich;
	if(t==null){
		t=event.keyCode;
	}
	return eNumerico(String.fromCharCode(t));
}


function NumeroDecimal(event,code) /*aceita numeros, ponto e virgula*/
{
    Tecla = event.which;
    if(Tecla == null)
	Tecla = event.keyCode;
   	//alert(Tecla);
	if((Tecla > 47 && Tecla <= 57)||((code==2)&&(Tecla==47))||((Tecla==44)||(Tecla==46)) ){
		return true;
		}
	else{
		return false;
		}
    return true;
}


function SoNumero(event,code) /*So aceita numeros*/
{
    Tecla = event.which;
    if(Tecla == null)
	Tecla = event.keyCode;
   	
	if((Tecla > 47 && Tecla <= 57)||((code==2)&&(Tecla==47))){
		return true;
		}
	else{
		return false;
		}
    return true;
}

function SoNumeroOpcao(event,code) /*So aceita numeros e o codigo opcional passado no parametro*/
{
    Tecla = event.which;
    if(Tecla == null)
	Tecla = event.keyCode;
   	   	   	
	if((Tecla > 47 && Tecla <= 57)||((code==2)&&(Tecla==47))||(Tecla == code)){
		return true;
		}
	else{
		return false;
		}
	
    return true;
}

function isNumber(field){

   data = field.value;
   datatmp = data;
   datatmp2 = data;
   tam = datatmp.length;
   tam2 = datatmp2.length;
   posicao  = 0
   contador = 0;
   posicao2 = 0;
   
   datatmp2 = replaceTotal(datatmp2,"-","")
   datatmp2 = replaceTotal(datatmp2,".","")
  //Verifica se o número possui mais 13 inteiros.
  if (datatmp2.indexOf(",") != -1){
	 posicao2 = datatmp2.indexOf(",")
	 datatmp2 = datatmp2.substring(0,posicao2);
	 if (datatmp2.length>13){
		 flginteiro = false;
	 }else{
		 flginteiro = true;
	 }
  }else{
	 if (datatmp2.length>13){
		 flginteiro = false;
	 }else{
		 flginteiro = true;
	 }
  }
  
  //Verifica se o número possui mais de 1 sinal.
  while (datatmp.length > 0){
	 if (datatmp.indexOf("-") != -1){
         contador = contador + 1;
		 datatmp = datatmp.substring(posicao+1,datatmp.length);
	 }else{
	    break;
	 }
  }
   //testa infinitos numeros sem virgula
   var r1 = new RegExp("^(\\-)*([0-9]+)$");

   //testa infinitos numeros com virgula
   var r2 = new RegExp("^(\\-)*([0-9]+\\,[0-9]{0,2})$");

   //testa numero com pontos e virgulas
   var r3 = new RegExp("^(\\-)*[0-9]{1,3}(\\.[0-9]{3})*(\\,[0-9]{0,2}){0,1}$");

    if (data != ""){
	   if ( (((r1.test(data)) || (r2.test(data)) || (r3.test(data))) == true) && (contador<=1) && (flginteiro) ){
		  return true;
	   }else{
		  alert(GSTR_MSGNUMERO);
		  field.focus();  
		  return false;	
	   }
    }else{
	  return true;
	}
}


function TestaData(objData,obrig){
	if ((objData.value=="")&&(!(obrig))){
		return true;
	}else{ 
		if (!(ehData(objData.value))){
			objData.focus();
			return false;
		}else{
			return true;
		}
	}
}

function ehData(ObjData){
	var DataP = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/;
	var VData = ObjData.value;
	var matchArray = VData.match(DataP);
	if (matchArray == null){
		alert(GSTR_MSGDATA);
		return false;
	}
	dia = matchArray[1];
	mes = matchArray[3];
	ano = matchArray[4];
	//Validar o mês
	if (mes < 1 || mes > 12) { 
		alert(GSTR_MSGDATA);
		ObjData.focus();
		return false;
	}
	//Validar o dia
	if (dia < 1 || dia > 31){
		alert(GSTR_MSGDATA);
		ObjData.focus();
		return false;
	}
	//Validar dia em relação ao mês
	if ((mes==4 || mes==6 || mes==9 || mes==11) && dia==31){
		alert(GSTR_MSGDATA)
		ObjData.focus();
		return false
	}
	//Validar ano bissexto
	if (mes == 2){ 
		var isleap = (ano % 4 == 0 && (ano % 100 != 0 || ano % 400 == 0));
		if (dia>29 || (dia==29 && !isleap)){
			alert(GSTR_MSGDATA);
			ObjData.focus();
			return false;
		}
	}
	//Data válida - OK!
	return true;  
}

function Converte_Data_USAFormat(dta){
   return dta.substr(3, 3)+dta.substr(0, 3)+dta.substr(6)
}


function convMaiuscula(obj){
  obj.value = obj.value.toUpperCase();
} 

/*function mascaraRamal(campo){
	switch(campo.value.length){
		case 3:
			campo.value += "-";
			break;
		default:
			return;
	}
}

function completaRamal(campo){
	if(campo.value != ""){
		campo.value = campo.value.replace("-","");
		while(campo.value.length < 7){
			campo.value = "0"+campo.value;
		}
		novo = campo.value.substr(0,3)+"-";
		novo = novo+campo.value.substr(3,5);
		campo.value = novo;
	}
}
*/

function Preenchimento(){
	Tecla = event.which;
	if(Tecla == null)
		Tecla = event.keyCode;
	if((Tecla >57) || (Tecla > 32 && Tecla <= 47) && (Tecla != 44 && Tecla != 45 && Tecla != 46)){
 		alert("Esse campo só aceita alfanumérico !")
   		return false;
	}
	return true;
}

function ChekData(dt){
with(dt.data){
var dia
	if (value.length == 7){
		mes = value.charAt(0)
		mes = mes+value.charAt(1)	
			if (mes > 12){ 
				alert("Favor verificar se o campo DATA  está preenchido corretamente (MMAAAA)")	 
	  			return false;
	  		}else{
	  			return true;
	  }			
	}
  }
}


/* Funçao para colocar a barra da data : 01/01/2000 */
function barra(obj){
   if(obj.value.length == 2 || obj.value.length == 5)
   		obj.value += "/";
}

/* Funçao para colocar a barra da data : 12/2000 */
function barraMesAno(obj){
   if(obj.value.length == 2)
   		obj.value += "/";
}

function doispontos(obj){
   if(obj.value.length == 2)
   		obj.value += ":";
}

/*Usada internamente*/
function eNumerico(t){
var n="0123456789";
var ret=false;
	for(var j=0;j<t.length;j++){
		ret=false;
		for(var i=0;i<n.length;i++){
			if(n.charAt(i)==t.charAt(j)){
				ret=true;
				break;
			}
		}
		if(!ret){
			break;
		}
	}
return ret;
}

function eData(d){
var d1="0123";
var d2="0123456789";
var m1="01";
var m2="0123456789";
var n31Dias="01;03;05;07;08;10;12";
var v31=n31Dias.split(";");
var a1="12";
var ret=false;
var i=0;
	//Checa o tamanho
	if(d.length!=10){
		return false;
	}

	//Checa as barras
	if(d.charAt(2)!="/"||d.charAt(5)!="/"){
		return false;
	}
	
	//Checa mês
	//Primeiro digito do mes
		for(i=0;i<m1.length;i++){
			if(d.charAt(3)==m1.charAt(i)){
				ret=true;
			}
		}
		if(!ret){return false;}
	//checa 2º digito do mes
		ret=false;
		for(i=0;i<m2.length;i++){
			if(d.charAt(4)==m2.charAt(i)){
				ret=true;
			}
		}
		if(!ret){return false;}
		if(d.charAt(3)=="0"&&d.charAt(4)=="0"){
			return false;
		}
		if(d.charAt(3)=="1"){
			if(d.charAt(4)!="0"
				&& d.charAt(4)!="1"
				&& d.charAt(4)!="2"){
					return false;
			}
		}
	//checa 1º digito do dia
		ret=false;
	
		
		for(i=0;i<d1.length;i++){
			if(d.charAt(0)==d1.charAt(i)){
				ret=true;
			}
		}
		
		if(!ret){return false;}
	//checa 2º digito do dia
		ret=false;
		for(i=0;i<d2.length;i++){
			if(d.charAt(1)==d2.charAt(i)){
				ret=true;
			}
		}
		if(!ret){
			return false;
		}
		
		if(d.charAt(0)=="3"){
			if(d.charAt(1)!="0"&&d.charAt(1)!="1"){
				return false;
			}
			if(d.charAt(1)=="1"){
				var aux0=false;
				for(var j=0;j<v31.length;j++){
					if(v31[j]==d.substring(3,5)){
						aux0=true;
						break;
					}
				}
				if(!aux0){
					return false;
				}
			}
		}
		
		
		if(d.charAt(0)=="3"
			&&d.charAt(3)=="0"
			&&d.charAt(4)=="2"){
			return false;
		}
		
		if(d.charAt(6)!="1"&&d.charAt(6)!="2"){
			return false;
		}
		//checa se ano eh menor que 1800
		if(d.charAt(6)=="1"&&d.charAt(7)<="7"){
			return false;
		}
		
		for(i=7;i<10;i++){
			if(!eNumerico(d.charAt(i))){
				return false;
			}
		}
		return true;
}

function eBissexto(d)
{
    
    dia=d.substring(0,2)
    mes=d.substring(3,5) 	 	
    ano=d.substring(6,10)
  
   		
    if (mes=="02")
    {	
      if (ano % 4 != 0 && dia > 28) {
		  return(false);
      }
      else if (dia > 29) {
		 return(false);
      }	
    }
    return(true);
}

function formata_dec(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	
	tam = vr.length;

	if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
		if ( tam <= 2 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 2) && (tam <= 5) ){
	 		campo.value = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ) ; 

}
	 	if ( (tam >= 6) && (tam <= 8) ){
	 		campo.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + 

',' + vr.substr( tam - 2, tam ) ; }
	 	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 ) ; }
	 	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 ) ; 

}
	 	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 ) ;}
	}		
	
}


function formata_dec_numero(campo) {
var vr
	vr = campo.value;
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	
	tam = vr.length;

//	if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
		if ( tam <= 2 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 3) && (tam <= 5) ){
	 		campo.value = vr.substr( 0, tam - 1 ) + ',' + vr.substr( tam - 2, tam ) ; 
		}

		if ( (tam >= 6) && (tam <= 8) ){
	 		campo.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + 

',' + vr.substr( tam - 2, tam ) ; }
	 	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 ) ; }
	 	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 ) ; 

}
	 	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 ) ;}
//	}		
	
}


function ValorParaBanco(valor){
	valor = replaceTotal(valor,".","");
	return replaceTotal(valor,",",".");
}

function replaceTotal(texto,strI,strF){
	var tam, vet, i;
	vet = texto.split(strI);
	tam = vet.length;
	for(i=0;i<tam;i++){
		texto = texto.replace(strI,strF);
	}
	return texto;
}
/*
function DoCal(elTarget) {
	if (showModalDialog) {
		var sRtn;
	    sRtn = showModalDialog("../_scripts/calendar.htm","","center=yes;dialogWidth=310px;dialogHeight=220px");
		if (sRtn!="") {
			elTarget.value = sRtn;
		}
	} else {
	    alert(GSTR_MSGINTERNET);
	}
} */
function DoCal(elTarget) {
	if (showModalDialog) {
		var sRtn, datapass;
		var d = new Date();
	    var todayInMS = d.getTime();
	    var x = todayInMS + (60*60*24*31*1000);
       //d.now = new Date(x);
	    	
		d.year = d.getYear();
        d.month = d.getMonth()+1;
		//d.month = d.getMonth();
        d.day = d.getDate();
		mesRef = d.month;
		
		
		//alert(d.day+"/"+d.month+"/"+d.year);
		
		      if (elTarget.value != ""){
			      datapass = elTarget.value;
				  }
			  else
				   datapass = mesRef;

		      if (elTarget.value != "")
			       datapass = elTarget.value;
			  else
				   datapass = d.day + "/" + d.month + "/" + d.year;

	    //sRtn = showModalDialog("calendar.htm","","center=yes;dialogWidth=310px;dialogHeight=220px");
		var dtpass = datapass.split("/");
        var diapass = dtpass[0];
        var mespass = dtpass[1];
        var anopass = dtpass[2];
        datapass =  anopass + "/" + mespass + "/" +  diapass;
       	sRtn = showModalDialog("../scripts/calendar.htm?DatePass="+datapass,"","center=yes;dialogWidth=310px;dialogHeight=220px");
		if (sRtn!="") {
			elTarget.value = sRtn;
			elTarget.focus();
		}
		} else {
			alert("Internet Explorer 4.0 ou superior é necessário!");
		}
}

function DoCalMais3(elTarget) {
	if (showModalDialog) {
		var sRtn, datapass;
		var d = new Date();
	    var todayInMS = d.getTime();
	    var x = todayInMS + (60*60*24*31*1000);
       //d.now = new Date(x);
	    	
		d.year = d.getYear();
        d.month = d.getMonth()+1;
		//d.month = d.getMonth();
        d.day = d.getDate();
		mesRef = d.month;
		
		
		//alert(d.day+"/"+d.month+"/"+d.year);
		
		      if (elTarget.value != ""){
			      datapass = elTarget.value;
				  }
			  else
				   datapass = mesRef;

		      if (elTarget.value != "")
			       datapass = elTarget.value;
			  else
				   datapass = d.day + "/" + d.month + "/" + d.year;

	    //sRtn = showModalDialog("calendar.htm","","center=yes;dialogWidth=310px;dialogHeight=220px");
		var dtpass = datapass.split("/");
        var diapass = dtpass[0];
        var mespass = dtpass[1];
        var anopass = dtpass[2];
        datapass =  anopass + "/" + mespass + "/" +  diapass;
       	sRtn = showModalDialog("../scripts/calendar_AnoMais3.htm?DatePass="+datapass,"","center=yes;dialogWidth=310px;dialogHeight=220px");
		if (sRtn!="") {
			elTarget.value = sRtn;
			elTarget.focus();
		}
		} else {
			alert("Internet Explorer 4.0 ou superior é necessário!");
		}
}

function DoCalMenos80(elTarget) {
	if (showModalDialog) {
		var sRtn, datapass;
		var d = new Date();
	    var todayInMS = d.getTime();
	    var x = todayInMS + (60*60*24*31*1000);
       //d.now = new Date(x);
	    	
		d.year = d.getYear();
        d.month = d.getMonth()+1;
		//d.month = d.getMonth();
        d.day = d.getDate();
		mesRef = d.month;
		
		
		//alert(d.day+"/"+d.month+"/"+d.year);
		
		      if (elTarget.value != ""){
			      datapass = elTarget.value;
				  }
			  else
				   datapass = mesRef;

		      if (elTarget.value != "")
			       datapass = elTarget.value;
			  else
				   datapass = d.day + "/" + d.month + "/" + d.year;

	    //sRtn = showModalDialog("calendar.htm","","center=yes;dialogWidth=310px;dialogHeight=220px");
		var dtpass = datapass.split("/");
        var diapass = dtpass[0];
        var mespass = dtpass[1];
        var anopass = dtpass[2];
        datapass =  anopass + "/" + mespass + "/" +  diapass;
       	sRtn = showModalDialog("../scripts/calendar_AnoMenos80.htm?DatePass="+datapass,"","center=yes;dialogWidth=310px;dialogHeight=220px");
		if (sRtn!="") {
			elTarget.value = sRtn;
			elTarget.focus();
		}
		} else {
			alert("Internet Explorer 4.0 ou superior é necessário!");
		}
}

function dataMaior(data1, data2){
   if(trim(data1) == "" || trim(data2) == ""){
	   return true;
   }

   var dia1 = data1.substring(0,2);
   var mes1 = data1.substring(3,5);
   var ano1 = data1.substring(6,10);

   var dia2 = data2.substring(0,2);
   var mes2 = data2.substring(3,5);
   var ano2 = data2.substring(6,10);

   var data1 = ano1+mes1+dia1
   var data2 = ano2+mes2+dia2

   if(data1 > data2){
		return true;
   }else{
		return false;
   }
}
function dataMaior3(data1, data2){
   if(trim(data1) == "" || trim(data2) == ""){
	   return true;
   }

   var dia1 = data1.substring(0,2);
   var mes1 = data1.substring(3,5);
   var ano1 = data1.substring(6,10);

   var dia2 = data2.substring(0,2);
   var mes2 = data2.substring(3,5);
   var ano2 = data2.substring(6,10);

   var data1 = ano1+mes1+dia1
   var data2 = ano2+mes2+dia2

   if(data1 >= data2){
		return true;
   }else{
		return false;
   }
}
function dataMaior4(data1, data2){
   if(trim(data1) == "" || trim(data2) == ""){
	   return true;
   }

   var dia1 = data1.substring(0,2);
   var mes1 = data1.substring(3,5);
   var ano1 = data1.substring(6,10);

   var dia2 = data2.substring(0,2);
   var mes2 = data2.substring(3,5);
   var ano2 = data2.substring(6,10);

   var data1 = ano1+mes1+dia1
   var data2 = ano2+mes2+dia2
   if((data1 < data2)||(data1==data2)){
		return false;
   }else{
		return true;
   }
}

function dataMenorIgual(data1, data2){
   if(trim(data1) == "" || trim(data2) == ""){
	   return true;
   }

   var dia1 = data1.substring(0,2);
   var mes1 = data1.substring(3,5);
   var ano1 = data1.substring(6,10);

   var dia2 = data2.substring(0,2);
   var mes2 = data2.substring(3,5);
   var ano2 = data2.substring(6,10);

   var data1 = ano1+mes1+dia1
   var data2 = ano2+mes2+dia2
   if((data1 <data2)||(data1==data2)){
		return false;
   }else{
		return true;
   }
}


function dataMenorIgual(data1, data2){
   if(trim(data1) == "" || trim(data2) == ""){
	   return true;
   }

   var dia1 = data1.substring(0,2);
   var mes1 = data1.substring(3,5);
   var ano1 = data1.substring(6,10);

   var dia2 = data2.substring(0,2);
   var mes2 = data2.substring(3,5);
   var ano2 = data2.substring(6,10);

   var data1 = ano1+mes1+dia1
   var data2 = ano2+mes2+dia2
   if((data1 <data2)||(data1==data2)){
		return false;
   }else{
		return true;
   }
}

function dataMaiorIgual(data1, data2){
   if(trim(data1) == "" || trim(data2) == ""){
	   return false;
   }

   var dia1 = data1.substring(0,2);
   var mes1 = data1.substring(3,5);
   var ano1 = data1.substring(6,10);

   var dia2 = data2.substring(0,2);
   var mes2 = data2.substring(3,5);
   var ano2 = data2.substring(6,10);

   var data1 = ano1+mes1+dia1;
   var data2 = ano2+mes2+dia2;

   if(data1 >= data2){
		return true;
   }else{
		return false;
   }
}

function ltrim(palavra){
   for(i=0;i<palavra.length;i++){
      letra=palavra.charAt(i);
      if(letra!=' '){
         return(palavra.substring(i,palavra.length));
      }
   }
   return("");
}

function rtrim(palavra){
   for(i=palavra.length-1;i>=0;i--){
      letra=palavra.charAt(i);
      if(letra!=' '){
         return(palavra.substring(0,i+1));
      }
   }
   return("");
}

function trim(palavra){
   return(ltrim(rtrim(palavra)));
}

function isdate(dia,mes,ano){
   if(!isdigit(dia) || !isdigit(mes) || !isdigit(ano)){
      return(0);
   }
   if(mes<1 || mes>12){
      return(0);
   }
   if(dia<1 || dia>31){
      return(0);
   }
   if(dia==31){
      if(mes==2 || mes==4 || mes==6 || mes==9 || mes==11){
         return(0);
      }
   }
   if(mes==2 && dia>28){
      if(ano%4==0){
         if(dia>29){
            return(0);
         }
      }
      else{
         return(0);
      }
   }
   return(1);
}


function eBissexto(d)
{
    
    dia=d.substring(0,2)
    mes=d.substring(3,5) 	 	
    ano=d.substring(6,10)
  
   		
    if (mes=="02")
    {	
      if (ano % 4 != 0 && dia > 28) {
		  return(false);
      }
      else if (dia > 29) {
		 return(false);
      }	
    }
    return(true);
}

function isdigit(palavra){
   for(i=0;i<palavra.length;i++){
      letra=palavra.charAt(i);
      if(letra<'0'||letra>'9'){
         return(0);
      }
   }
   if(palavra==""){
      return(0);      
   }
   else{
      return(1);
   }
}


/*Valida oo cnpj */
function ehCnpj(pcgc){
	if(pcgc.value != ""){
		if (pcgc.value.length != 18) {
				alert (GSTR_MSGCNPJ);
				pcgc.value = '';
				pcgc.focus();
				return false;
		}
		else{
		return true;
		}
	} 
}

function ehCpf(pcgc){
if (pcgc.value.length != 14) {
		alert (GSTR_MSGCPFI);
		pcgc.value = '';
		pcgc.focus();
	 }
}
 
function mascaraCnpj2(campo){
	var novo;
	if(campo.value != ""){

		campo.value = campo.value.replace(".","");
		campo.value = campo.value.replace(".","");
		campo.value = campo.value.replace("/","");
		campo.value = campo.value.replace("-","");

		while(campo.value.length < 14){
			campo.value = "0"+campo.value
		}
		
		novo = campo.value.substr(0,2)+".";
		novo = novo+campo.value.substr(2,3)+".";
		novo = novo+campo.value.substr(5,3)+"/";
		novo = novo+campo.value.substr(8,4)+"-";
		novo = novo+campo.value.substr(12,2);
		campo.value = novo;

	}
}

function janelaComp(){
	return 	"toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=yes,copyhistory=no,width=650,height=450,top=30,left=30"; 
}

function exportar(rel){
	if ( rel == 2 ) {			 
		window.open ("atge_mn1_rel_resumo_Excel.asp?"+"<%=request.querystring%>","Detalhe",
				 "toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=yes,copyhistory=no,width=770,height=490,top=10,left=10");   
	}
	if ( rel == 3 ) {
		window.open ("atge_mn1_rel_contr_Excel.asp?"+"<%=request.querystring%>","Detalhe", janelaComp());
    }
	if ( rel == 4 ) {
		window.open ("atge_mn1_rel_adit_Excel.asp?"+"<%=request.querystring%>","Detalhe",	janelaComp());
    }
	if ( rel == 5 ) {
		window.open ("atge_mn1_rel_contrDis_excel.asp?"+"<%=request.querystring%>","Detalhe",janelaComp());
	}
	if ( rel == 6 ) {
		window.open ("atge_mn1_rel_outros_excel.asp?"+"<%=request.querystring%>","Detalhe",janelaComp());
    }
	if ((rel == 18)||(rel == 19)||(rel == 20)) {
		window.open ("atge_mn1_rel_CompraMat_Excel.asp?"+"<%=request.querystring%>","Detalhe",janelaComp());
    }	
	if (rel == 21) {
		window.open ("atge_mn1_rel_totais_por_faixa_excel.asp?"+"<%=request.querystring%>","Detalhe",janelaComp());
    }	
}

function exportar_det(rel) {
	if ( rel == "sev" ) {			 
		window.open ("atge_mn1_rel_det_ConsServDet_Excel.asp?"+"<%=request.querystring%>","Detalhe2",
		"toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,copyhistory=no,width=710,height=300,top=170,left=30");
	}
	else if ( rel == "adi" ) {
		window.open ("atge_mn1_rel_det_ConsAditDet_Excel.asp?"+"<%=request.querystring%>","Detalhe2",
		"toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,copyhistory=no,width=710,height=300,top=170,left=30");
	}
	else if ( rel == "comnac" ) {
		window.open ("atge_mn1_rel_det_ConsMatNac_det_Excel.asp?"+"<%=request.querystring%>","Detalhe2",		"toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,copyhistory=no,width=710,height=300,top=170,left=30");
	}
	else if ( rel == "comest" ) {
		window.open ("atge_mn1_rel_det_ConsMatEst_det_Excel.asp?"+"<%=request.querystring%>","Detalhe2",	"toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,copyhistory=no,width=710,height=300,top=170,left=30");		
	}
	else if ( rel == "comdis" ) {
		window.open ("atge_mn1_rel_det_ConsMatDis_det_Excel.asp?"+"<%=request.querystring%>","Detalhe2",		"toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,copyhistory=no,width=710,height=300,top=170,left=30");
	}
	else if ( rel == "sevdis" ) {
		window.open ("atge_mn1_rel_det_ConsServDis_det_Excel.asp?"+"<%=request.querystring%>","Detalhe2",		"toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,copyhistory=no,width=710,height=300,top=170,left=30");
	}
	else if ( rel == "gen" ) {
		window.open ("atge_mn1_rel_det_ConsGenerico_Excel.asp?"+"<%=request.querystring%>","Detalhe2",		"toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,copyhistory=no,width=710,height=300,top=170,left=30");
	}
}	

function validaData(objdata) {

	if (objdata.value!=''){
		if (objdata.value.length < 10){
			alert('Data Incompleta!O formato válido é dd/mm/aaaa!');
			objdata.value='';
			objdata.focus();
			return -1;
			
		}
		else if (!eData(objdata.value)){
			alert('Data Inválida!');
			objdata.focus();
			objdata.value='';
		}else if(!eBissexto(objdata.value)){
			alert('Data Inválida!');
			objdata.focus();
			objdata.value='';
		}else if (objdata.value.charAt(0)+objdata.value.charAt(1)=="00"){
			alert('Data Inválida!');
			objdata.focus();
			objdata.value='';
		}
	}		
}

function printit(){ // função que imprime a página html, já utilizando a impressora padrão
var NS = (navigator.appName == "Netscape");
var VERSION = parseInt(navigator.appVersion);
	if (NS) { 
		window.print() ; 
	} else { 
		var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>'; 
		document.body.insertAdjacentHTML('beforeEnd', WebBrowser); 
		WebBrowser1.ExecWB(6,11);//Use a 1 vs. a 2 for a prompting dialog box WebBrowser1.outerHTML = ""; 
	} 
} 

function ValidarTamanho(campo,tamanho,label) {

 var numCaracteres = tamanho -(campo.value.length );

 if(numCaracteres<0){
    campo.value = campo.value.substring(0,campo.value.length + numCaracteres);
    numCaracteres=0;
     alert('Limite máximo de ' + tamanho + ' caracteres!');
     return false;
  }

  document.getElementById(label).innerHTML = numCaracteres;



  return true;
}
function Limpar(valor, validos) {
	// retira caracteres invalidos da string
	var result = "";
	var aux;
	for (var i=0; i < valor.length; i++) {
	aux = validos.indexOf(valor.substring(i, i+1));
	if (aux>=0) {
		result += aux;
	}
}
return result;
}

function Formata_Decimal(campo,tammax,teclapres,decimal) {

var tecla ;
	if (teclapres==null){
		tecla = 0;
	}
	else{
		tecla = teclapres.keyCode;
	}
	
	vr = Limpar(campo.value,"0123456789");
	tam = vr.length;
	dec=decimal
	
	if (tam < tammax && tecla != 8){
		 tam = vr.length + 1 ; 
	}
	
	if (tecla == 8 ){ 
		tam = tam - 1 ; 
	}
	
	if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
	
		if ( tam <= dec ){
			campo.value = vr ; 
		}
		
		if ( (tam > dec) && (tam <= 5) ){
			campo.value = vr.substr( 0, tam - 2 ) + "," + vr.substr( tam - dec, tam ) ; 
		}
		if ( (tam >= 6) && (tam <= 8) ){
			campo.value = vr.substr( 0, tam - 5 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; 
		}
		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 - dec, tam ) ; 
		}
		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 - dec, tam ) ; 
		}
		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 ) ;
		}
	} 

}

function Formata_Decimal2(campo, teclapres) {
	if (SNumerico(event)){
		var tecla ;

		if (teclapres==null){
			tecla = 0;
		}
		else{
			tecla = teclapres.keyCode;
		}
		vr = campo.value.replace(".","");
		vr = vr.replace(".","");
		vr = vr.replace("/","");
		vr = vr.replace("-","");

		tam = vr.length;

			if (tam >= 3 && tam<6){
			 campo.value = vr.substr(0,3)+'.'+vr.substr(3,3); 
				return true;
			}
			if (tam >= 6 && tam<9){
			 campo.value = vr.substr(0,3)+'.'+vr.substr(3,3)+'.'+vr.substr(6,tam-6); 
				return true;
			}
			if ((tam >= 9 && tam<=10)){
			 campo.value = vr.substr(0,3)+'.'+vr.substr(3,3)+'.'+vr.substr(6,3)+'-'+vr.substr(9,2); 
			 return true;
			}
			if (tam >= 11 && tam<=14){
			  campo.value = vr.substr(0,2)+'.'+vr.substr(2,3)+'.'+vr.substr(5,3)+'/'+vr.substr(8,4)+'-'+vr.substr(12,2); 
			  return true;
			}
			if(tam==10){
			 campo.value = vr.substr(0,3)+'.'+vr.substr(3,3)+'.'+vr.substr(6,3)+'-'+vr.substr(9,2); 
			 return true;
			}
	}else{
		return SNumerico(event);
	}		

}
/* Funçao para colocar os parênteses e traço no telefone: (71)9999-9999 */
function tel(obj){
   if(obj.value.length == 2)
   		obj.value = "("+ obj.value +")";
   if(obj.value.length == 8)
   		obj.value += "-";
}
function validateEmail( obj ) {//campo opcional
 var emaiStr = obj.value;
 if (obj.value.length > 0){
	 var reg1 = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/; // not valid
	 var reg2 = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/; // valid
	 if ( !reg1.test( emaiStr ) && reg2.test( emaiStr ) ) {
		 return true;
	 } else {
	 	 alert("E-mail inválido!");
		 obj.focus();
	 	 return false;
	 }
 }else{
 		return true;
 }
 
}


function Verifica_campo_cpfCnpj(campo){
		if (campo.value.length<=14){	
		return Verifica_campo_cpf(campo)
		}
		else{
		return validaCNPJ(campo);
		}  
   
   }
   
function FormataReais2(fld, milSep, decSep, e) { 

	var sep = 0; 
	var key = ''; 
	var i = j = 0; 
	var len = len2 = 0; 
	var strCheck = '0123456789'; 
	var aux = aux2 = ''; 
	var whichCode = (window.Event) ? e.which : e.keyCode; 
	fld.value = fld.value.replace("R$ ","");
	var z = fld.value.length;


	if (z > 11){
		fld.value = "R$ "+fld.value;
		return false;
	}

	if (z > 2){
		if (whichCode == 13) return SNumerico(e);  
			key = String.fromCharCode(whichCode);// Valor para o código da Chave 
		if (strCheck.indexOf(key) == -1) return false; // Chave inválida 
			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); 

	} 
}
else{
	fld.value = "R$ "+fld.value;
	return SNumerico(e);
}

fld.value = "R$ "+fld.value;
return false; 
} 

// detecta se foi pressionado ENTER
function enter(e){ //e is event object passed from function invocation
	try{
		var characterCode; //literal character code will be stored in this variable
		if(e && e.which){ //if which property of event object is supported (NN4)
			e = e;
			characterCode = e.which; //character code is contained in NN4's which property
		}else if(e){
			e = event;
			characterCode = e.keyCode; //character code is contained in IE's keyCode property
		}else if (window.event){
			characterCode = window.event.keyCode;
		}
		if(characterCode == 13){
			return true;
		}else{
			return false;
		}
	}catch(er){}
}


function FormataReais(fld, milSep, decSep, e) { 

var sep = 0; 

var key = ''; 

var i = j = 0; 

var len = len2 = 0; 

var strCheck = '0123456789'; 

var aux = aux2 = ''; 

var whichCode = (window.Event) ? e.which : e.keyCode; 

var z = fld.value.length;

if (z > 11){
	return false;
}

if (z > 2){
if (whichCode == 13) return SNumerico(e);  

key = String.fromCharCode(whichCode);// Valor para o código da Chave 

if (strCheck.indexOf(key) == -1) return false; // Chave inválida 

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); 

} 
}
else{
	return SNumerico(e);
}
return false; 
} 

// detecta se foi pressionado ENTER
function enter(e){ //e is event object passed from function invocation
	try{
		var characterCode; //literal character code will be stored in this variable
		if(e && e.which){ //if which property of event object is supported (NN4)
			e = e;
			characterCode = e.which; //character code is contained in NN4's which property
		}else if(e){
			e = event;
			characterCode = e.keyCode; //character code is contained in IE's keyCode property
		}else if (window.event){
			characterCode = window.event.keyCode;
		}
		if(characterCode == 13){
			return true;
		}else{
			return false;
		}
	}catch(er){}
}

//FUNÇÃO PARA RETORNAR A DIFERENÇA DA DATA.
function DateAdd(p_Interval, p_Number, p_Date, p_Destino){
	//return dateAdd(p_Interval, p_Number, p_Date);
	p_Destino.value = dateAdd(p_Interval, p_Number, p_Date); 
}
function IsDate(p_Expression){
	return isDate(p_Expression);
}

// REQUIRES: isDate()
/*
		yyyy (year)
		q (quarter)
		m (month)
		y (day of year)
		d (day)
		w (weekday)
		ww (week of year)
		h (hour)
		n (minute)
		s (seconds)
*/
function dateAdd(p_Interval, p_Number, p_Date){
	if(!isDate(p_Date)){
		return "invalid date: '" + p_Date + "'";
	}
	if(isNaN(p_Number)){
		return "invalid number: '" + p_Number + "'";
	}	

	p_Number = new Number(p_Number);
	var dt = new Date(p_Date);
	switch(p_Interval.toLowerCase()){
		case "yyyy": {// year
			dt.setFullYear(dt.getFullYear() + p_Number);
			break;
		}
		case "q": {		// quarter
			dt.setMonth(dt.getMonth() + (p_Number*3));
			break;
		}
		case "m": {		// month

			dt.setMonth(dt.getMonth() + p_Number);
			
		
			if(dt.getMonth() > 12)
			{
				dt.setMonth(dt.getMonth() - 12);
				dt.setYear(dt.getYear() + 1);
			}
			
			break;
		}
		case "y":		// day of year
		case "d":		// day
		case "w": {		// weekday
			dt.setDate(dt.getDate() + p_Number);
			break;
		}
		case "ww": {	// week of year
			dt.setDate(dt.getDate() + (p_Number*7));
			break;
		}
		case "h": {		// hour
			dt.setHours(dt.getHours() + p_Number);
			break;
		}
		case "n": {		// minute
			dt.setMinutes(dt.getMinutes() + p_Number);
			break;
		}
		case "s": {		// second
			dt.setSeconds(dt.getSeconds() + p_Number);
			break;
		}
		case "ms": {		// second
			dt.setMilliseconds(dt.getMilliseconds() + p_Number);
			break;
		}
		default: {
			return "invalid interval: '" + p_Interval + "'";
		}
	}
	
	var dia = dt.getDay()
	var mes = dt.getMonth()
	
	if(dia<10){
		dia = "0"+dia
	}
	if(mes<10){
		mes = "0"+mes
	}
	
	
	var DataFinal = dia + "/" + mes + "/" + dt.getYear();
	
	
	
	
	return DataFinal;
}
function isDate(p_Expression){
	return !isNaN(new Date(p_Expression));		// <<--- this needs checking
}


function  mascaraTelefone(campo, event){
if (SNumerico(event)){
	switch(campo.value.length){
		case 7:
			campo.value = campo.value.substr(0,4)+'-'+campo.value.substr(4,7);
			break;
		case 10:
			campo.value = campo.value.replace("-","")
			campo.value = "("+campo.value.substr(0,2)+')'+campo.value.substr(2,4)+'-'+campo.value.substr(6,9);
			break;
		default:
			return;
	}
  }else{
    return SNumerico(event);
  }
}