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;
if (whichCode == 13) return true;
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);
}
return false;
}
// Arquivo que contém todas as funções Javascript genéricas do projeto WEBCRED
function FormataValor(obj,tammax,teclapres) {
var tecla = teclapres.keyCode;
vr = obj.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 (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 <= 2 ){ 
obj.value = vr; }
if ( (tam > 2) && (tam <= 5) ){
obj.value = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 6) && (tam <= 8) ){
obj.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 9) && (tam <= 11) ){
obj.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) ){
obj.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) ){
obj.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 MascTel(obj){
if(obj.value.length == "0"){
 obj.value += "("
 }
if(obj.value.length == "3"){
 obj.value += ")"
 }
if(obj.value.length == "8"){
 obj.value += "-"
 }
}
function MascData(obj){
if(obj.value.length == "2"){
 obj.value += "/"
 }
if(obj.value.length == "5"){
 obj.value += "/"
 }
}

function MascTelSemDDD(obj){
if(obj.value.length == "4"){
 obj.value += "-"
 }
}
function MascData(obj){
if(obj.value.length == "2"){
 obj.value += "/"
 }
if(obj.value.length == "5"){
 obj.value += "/"
 }
}
function validaBuscaCPF(form){
	if(trim(form.CPF.value) == ''){
		alert("Preencha o CPF do cliente");
		form.CPF.select();
		return false;
	}if(!Valida_CampoCPF(form.CPF, "CPF")){
		form.CPF.select();
		return false;
	}else{
		return true;
	}
}


function validaNome(form){
	if(trim(form.Nome.value) == ''){
		alert("Preencha o nome cliente com ao menos 3 letras");
		form.Nome.select();
		return false;
	}if(trim(form.Nome.value).length < 3 ){
		alert("Você deve informar ao menos 3 letras para pesquisar");
		form.Nome.select();
		return false;
	}else{
		return true;
	}
}





//RETIRA TODOS OS ESPAÇOS DO CAMPO
function trim(string) {
	var temp = "";
	string = '' + string;
	splitstring = string.split(" ");
	for(i = 0; i < splitstring.length; i++)
		temp += splitstring[i];
	return temp;
}

//VALIDA SE É CAMPO NUMÉRICO
function Valida_CampoNumerico(campo, string) {
    ok = Valida_CampoObrigatorio(campo,string) ;
    if (ok && isNaN(campo.value)){
 	 alert("O conteúdo do campo " + string + " deve ser numérico!");
///	 campo.focus();
        ok = false;
    }
    return ok     
}

//VALIDA SE CAMPO FOI PREENCHIDO
function Valida_CampoObrigatorio(campo, string) {
	if (campo.value == null || campo.value == "" || trim(campo.value) == "") {
 		alert("O preenchimento do campo " + string + " é obrigatório!");
		campo.focus();
		return false;
	}
	return true;
}   


//VALIDA SE CAMPO  O EMAIL FOI PREENCHIDO CORRETAMENTE
function Valida_CampoEmail(campo) {
		var reg1 = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/; // inválido
		var reg2 = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/; // válido
		if (!reg1.test(campo.value) && reg2.test(campo.value)) {
			return true;
		}else{
			alert("O e-mail informado não é válido!"); 
			campo.focus();
			return false;
		}
}







// VALIDA SE CAMPO CPF FOI PREENCHIDO CORRETAMENTE
function Valida_CampoCPF(campo, string) {
  ok = Valida_CPF(campo.value, string);
  if (!ok){
//    campo.focus();
  }
  return ok;
}

function Valida_CampoCPFSemAlert(campo, string) {
  ok = Valida_CPFSemAlert(campo.value, string);
  if (!ok){
//    campo.focus();
  }
  return ok;
}

function Valida_CPFSemAlert(argumento, string) {
	retorno = false;
	if (argumento.length  == 11)
  		if (trazDVCPF(argumento.substring(0, 9)) == argumento.substring(9, 10))
			retorno = (trazDVCPF(argumento.substring(0, 10)) == argumento.substring(10, 11)); 
	//argumento.focus();
	return retorno;
}

//VALIDA CPF
function Valida_CPF(argumento, string) {
	retorno = false;
	if (argumento.length  == 11)
  		if (trazDVCPF(argumento.substring(0, 9)) == argumento.substring(9, 10))
			retorno = (trazDVCPF(argumento.substring(0, 10)) == argumento.substring(10, 11)); 
	if(!retorno) alert(string + " inválido. Tente novamente!");
	//argumento.focus();
	return retorno;
}

function trazDVCPF(sequencia) {
	soma = 0, resultado = 0;
	x=0, j=0;
	i = 0;
	x = sequencia.length + 1;
	for (i = 0; i < sequencia.length; i++) {
		j = sequencia.substring(i, i + 1) * x;
		x--;
		soma += j;
	}
	resultado = soma % 11;

	if (resultado <= 1)
		resultado = 0;
	else
		resultado = 11 - resultado;
	return resultado;
}

// VALIDA SE CAMPO CNPJ FOI PREENCHIDO CORRETAMENTE
function Valida_CampoCNPJ(campo, string) {
  ok = Valida_CNPJ(campo.value, string);
  if (!ok){
    campo.focus();
  }
  return ok;
}

function Valida_CampoCNPJSemAlert(campo, string) {
  var CNPJ = new String(campo.value);
  CNPJ = CNPJ.replace(".","");
  CNPJ = CNPJ.replace(".","");
  CNPJ = CNPJ.replace("-","");
  CNPJ = CNPJ.replace("/","");
	
  ok = Valida_CNPJSemAlert(CNPJ, string);
  if (!ok){
    campo.focus();
  }
  return ok;
}

//VALIDA CGC ou CNPJ
function Valida_CNPJ(argumento, string) {
	 retorno = false;
	if (argumento.length == 14)
		if (trazDVCGC(argumento.substring(0, 12)) == argumento.substring(12, 13))
			retorno = 
				( trazDVCGC(argumento.substring(0, 13)) == argumento.substring(13, 14)); 
	if(!retorno) alert(string + " inválido. Tente novamente!");
	//argumento.focus();
	return retorno;

}

function Valida_CNPJSemAlert(argumento, string) {
	 retorno = false;
	if (argumento.length == 14)
		if (trazDVCGC(argumento.substring(0, 12)) == argumento.substring(12, 13))
			retorno = 
				( trazDVCGC(argumento.substring(0, 13)) == argumento.substring(13, 14)); 
	//argumento.focus();
	return retorno;

}

function trazDVCGC(sequencia) {
	resultado=0, x=0, j=0, soma = 0;
	x = sequencia.length - 7;
	i = 0;
	for (i = 0; i < sequencia.length; i++) {
		j = sequencia.substring(i, i + 1) * x;
		if (x == 2)
			x = 9;
		else
			x--;

		soma += j;
	}

	resultado = soma % 11;

	if (resultado <= 1)
		resultado = 0;
	else
		resultado = 11 - resultado;

	return resultado;

}

//***** funcao nova com campo
// VALIDA SE CAMPO IE FOI PREENCHIDO CORRETAMENTE
function Valida_CampoInscricao(campo, string) {
  ok = Valida_Inscricao(campo.value, string);
  if (!ok){
    campo.focus();
  }
  return ok;
}

//

/* Valida inscrição estadual retornando true ou false ....*/

//VALIDA INSCRIÇÃO ESTADUAL
function Valida_Inscricao(argumento, string) {
	resultado = false;
	i = 0; 
	j = 0; 
	k = 0; 
	posNum = 0; 
	lenNum = 0; 
	resto = 0; 
	dv = 0; 
	acc = 0; 
	a = 0; 


	numero = argumento;
	lenNum = numero.length;

		if (lenNum == 8) {
			if (!numero == "00000000") {
				j = lenNum - 2;
				for (i = 0; i < lenNum - 1; i++) {
					posNum = numero.substring(j, j + 1);
					if (i > 5)
						k = posNum * (i - 4);
					else
						k = posNum * (i + 2);
					acc += k;
					j--;
				}
				resto = acc % 11;
				if (resto <= 1)
					dv = 0;
				else
					dv = 11 - resto;
				posNum = numero.substring(7);
				if (dv == posNum)
				resultado = true;
			}
		}
	if (!resultado) alert(string + " inválida.");
	return resultado;
}

function soNumeros(c) {
	var chk_str,nsa,nsb;
	var dot=0;
	str= c.value;
	leng=str.length;
	
	for(i=0; i<leng; i++){
		chk_str=str.charAt(i);
		if(chk_str =="0") {}
		else if(chk_str =="1") {}
		else if(chk_str =="2") {}
		else if(chk_str =="3") {}
		else if(chk_str =="4") {}
		else if(chk_str =="5") {}
		else if(chk_str =="6") {}
		else if(chk_str =="7") {}
		else if(chk_str =="8") {}
		else if(chk_str =="9") {}
		else {
				nsa=str.substr(0,i);
				nsb=str.substr(i+1,leng);			
				c.value=nsa+nsb;		
		}
	}
}

function soValor(c) {
	var chk_str,nsa,nsb;
	var dot=0;
	str= c.value;
	leng=str.length;
	for(i=0; i<leng; i++){
		chk_str=str.charAt(i);
		if(chk_str =="0") {}
		else if(chk_str =="1") {}
		else if(chk_str =="2") {}
		else if(chk_str =="3") {}
		else if(chk_str =="4") {}
		else if(chk_str =="5") {}
		else if(chk_str =="6") {}
		else if(chk_str =="7") {}
		else if(chk_str =="8") {}
		else if(chk_str =="9") {}
		else if(chk_str ==".") {}
		else if(chk_str ==",") {}
		else {
				nsa=str.substr(0,i);
				nsb=str.substr(i+1,leng);			
				c.value=nsa+nsb;		
		}
	}
}

function limpaValor(c){
	if(c != null && c != 0){
		if(c.indexOf(',') != -1){
			c = c.replace('.', '');
			c = c.replace(',', '.');
		}else{
			c = c.replace(',', '.');
		}
	}else{
		c = 0.0;
	}
	
	return c;
}

function limpaDouble(c){
	if(c != null && c != 0) 
	{
		c = c.replace(',', '');
		c = c.replace('.', ',');
	}
	else
	{
		c = 0.0;
	}
	return c;
}


function check_date(field){
var checkstr = "0123456789";
var DateField = field;
var Datevalue = "";
var DateTemp = "";
var seperator = ".";
var day;
var month;
var year;
var leap = 0;
var err = 0;
var i;
   err = 0;
   DateValue = DateField.value;
   /* Delete all chars except 0..9 */
   for (i = 0; i < DateValue.length; i++) {
	  if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
	     DateTemp = DateTemp + DateValue.substr(i,1);
	  }
   }
   DateValue = DateTemp;
   /* Always change date to 8 digits - string*/
   /* if year is entered as 2-digit / always assume 20xx */
   if (DateValue.length == 6) {
      DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); }
   if (DateValue.length != 8) {
      err = 19;}
   /* year is wrong if year = 0000 */
   year = DateValue.substr(4,4);
   if (year == 0) {
      err = 20;
   }
   /* Validation of month*/
   month = DateValue.substr(2,2);
   if ((month < 1) || (month > 12)) {
      err = 21;
   }
   /* Validation of day*/
   day = DateValue.substr(0,2);
   if (day < 1) {
     err = 22;
   }
   /* Validation leap-year / february / day */
   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
      leap = 1;
   }
   if ((month == 2) && (leap == 1) && (day > 29)) {
      err = 23;
   }
   if ((month == 2) && (leap != 1) && (day > 28)) {
      err = 24;
   }
   /* Validation of other months */
   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
      err = 25;
   }
   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
      err = 26;
   }
   /* if 00 ist entered, no error, deleting the entry */
   if ((day == 0) && (month == 0) && (year == 00)) {
      err = 0; day = ""; month = ""; year = ""; seperator = "";
   }
   /* if no error, write the completed date to Input-Field (e.g. 13.12.2001) */
   if (err == 0) {
	return true;
   } else {
      DateField.select();
	  DateField.focus();
	  return false;
   }
}
//Formata campo input com a mascara desejada
function formatar(mascara, documento){
  var i = documento.value.length;
  var saida = mascara.substring(0,1);
  var texto = mascara.substring(i)
  
  if (texto.substring(0,1) != saida){
	documento.value += texto.substring(0,1);
  }
  
}

function abrirPopup(url, largura, altura){
    var left = parseInt((screen.availWidth/2) - (largura/2));
    var top = parseInt((screen.availHeight/2) - (altura/2));
    var windowFeatures = "width=" + largura + ",height=" + altura+ ",left=" + left + ",top=" + top + "screenX=" + left + ",screenY=" + top + ",scrollbars=yes";
    myWindow = window.open(url, "subWind", windowFeatures);	
	myWindow.focus();
	
}

function abrirNovaPopup(url, largura, altura){
    var left = parseInt((screen.availWidth/2) - (largura/2));
    var top = parseInt((screen.availHeight/2) - (altura/2));
    var windowFeatures = "width=" + largura + ",height=" + altura+ ",left=" + left + ",top=" + top + "screenX=" + left + ",screenY=" + top + ",scrollbars=yes";
    myWindow = window.open(url, "", windowFeatures);	
	myWindow.focus();
	
}

function selecionaCorretor(codigoCorretor, nomeCorretorList, totalRegistros){
	var achou = false;
	var codigoCorretorTmp = 0;
	
	if(codigoCorretor.charAt(0) == 0 && codigoCorretor.length > 1){
		codigoCorretor = codigoCorretor.substr(1, codigoCorretor.length);
	}
	

	if(codigoCorretor == ""){
		nomeCorretorList.options[0].selected = true;
	}else{
		var totalCorretores = totalRegistros+1;
		for (i=0;i<totalCorretores;i++) {	
		  if(parseInt(codigoCorretor) == parseInt(nomeCorretorList.options[i].value)){
			nomeCorretorList.options[i].selected = true;
			achou = true;
			break;
		  }
		}
		if(achou == false){
			nomeCorretorList.options[0].selected = true;
		}
	}
}


function blinkIt() {
 if (!document.all) return;
 else {
   for(i=0;i<document.all.tags('blink').length;i++){
      s=document.all.tags('blink')[i];
      s.style.visibility=(s.style.visibility=='visible')?'hidden':'visible';
   }
 }
}

function travaLogin(c) {
	var chk_str,nsa,nsb;
	var dot=0;
	str= c.value;
	leng=str.length;
	for(i=0; i<leng; i++){
		chk_str=str.charAt(i);
		if(" 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@#.".indexOf(chk_str) != -1) {}
		else {
				nsa=str.substr(0,i);
				nsb=str.substr(i+1,leng);			
				c.value=nsa+nsb;		
		}
	}
}


function isValidDate(dateStr) {
// Checks for the following valid date formats:
// MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; // requires 4 digit year

var matchArray = dateStr.match(datePat); // is the format ok?
if (matchArray == null) {
	return false;
}
month = matchArray[1]; // parse date into variables
day = matchArray[3];
year = matchArray[4];
if (month < 1 || month > 12) { // check month range
alert("Month must be between 1 and 12.");
return false;
}
if (day < 1 || day > 31) {
alert("Day must be between 1 and 31.");
return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("Month "+month+" doesn't have 31 days!")
return false;
}
if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day>29 || (day==29 && !isleap)) {
alert("February " + year + " doesn't have " + day + " days!");
return false;
   }
}
return true;
}


function diasDiff(data1, data2) {
date1 = new Date();
date2 = new Date();
diff  = new Date();

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

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

if (isValidDate(data1)) { // Validates first date
date1temp = new Date(data1);
date1.setTime(date1temp.getTime());
}
else{
	alert('Data Inicial Inválida');
	return -1; // otherwise exits
}
if (isValidDate(data2)) { // Validates second date
date2temp = new Date(data2);
date2.setTime(date2temp.getTime());
}
else{
	alert('Data Final Inválida');
	return -1;
}// otherwise exits

// sets difference date to difference of first date and second date

diff.setTime(Math.abs(date1.getTime() - date2.getTime()));

timediff = diff.getTime();

days = Math.floor(timediff / (1000 * 60 * 60 * 24));
timediff -= days * (1000 * 60 * 60 * 24);
//dateform.difference.value = weeks + " weeks, " + days + " days, " + hours + " hours, " + mins + " minutes, and " + secs + " seconds";
return days; // form should never submit, returns false
}
//  End -->

function imprime(id, pg) {
	var oPrint, oJan;
	oPrint   = window.document.getElementById(id).innerHTML;
	oJan     = window.open(pg);
//	alert(oPrint);
//	alert(oJan.document.getElementById('conteudo').innerHTML);
	oJan.document.getElementById('conteudo').innerHTML = oPrint;
//	alert(oJan.document.getElementById('conteudo').innerHTML);
	oJan.window.print();
}

function disableSelection(target){
	if (typeof target.onselectstart!="undefined") //IE route
		target.onselectstart=function(){return false}
	else if (typeof target.style.MozUserSelect!="undefined") //Firefox route
		target.style.MozUserSelect="none"
	else //All other route (ie: Opera)
		target.onmousedown=function(){return false}
	target.style.cursor = "default"
}


// Variaveis utilizadas para a funcao timer 

function pageScroll() {
	window.scroll(0,20); // horizontal and vertical scroll increments
}

function replaceAll(str, de, para){
    var pos = str.indexOf(de);
    while (pos > -1){
		str = str.replace(de, para);
		pos = str.indexOf(de);
	}
    return (str);
}
function MM_formtCep(e,src,mask) {
    if(window.event) { _TXT = e.keyCode; } 
    else if(e.which) { _TXT = e.which; }
    if(_TXT > 47 && _TXT < 58) { 
 var i = src.value.length; var saida = mask.substring(0,1); var texto = mask.substring(i)
 if (texto.substring(0,1) != saida) { src.value += texto.substring(0,1); } 
    return true; } else { if (_TXT != 8) { return false; } 
 else { return true; }
    }
}

function obrigaSenha(senha){
	var numeros = new Array("0","1","2","3","4","5","6","7","8","9");
	var letras = new Array("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z");
	var achou = 0;
	
	for(i =0; i < numeros.length; i++){
		if(senha.indexOf(numeros[i]) != -1){
			achou++;
			break;
		}
	}
	for(i =0; i < letras.length; i++){
		if(senha.indexOf(letras[i]) != -1){
			achou++;
			break;
		}
	}
	
	if(achou == 2){
		return true;
	}else{
		return false;
	}
}

function formataValor(valor) {
	var posPonto = valor.indexOf(".");
	var valorFormatado = 0;
	if(posPonto != -1){
		var inteiro = valor.substr(0, posPonto);
		var centavos = valor.substr(posPonto+1,3);
		valorFormatado = inteiro + ',' + centavos;
	}else{
		valorFormatado = valor.replace(",", ".");
	}
	return valorFormatado;
}

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 verUsuarios(){
	window.open('verUsuarios.php', 'Usuarios On-Line', 'height=400, width=400, left=50, top=50, toolbar=no,location=no,status=no,menubar=no, directories=no');
}

function mostraVlLiquidoObrigatorio(calculoLiquido){
	if(calculoLiquido == 0){
		document.getElementById('vlLiqNaoObrigatorio').style.display = 'inline';
		document.getElementById('vlLiqObrigatorio').style.display = 'none';
	}else{
		document.getElementById('vlLiqObrigatorio').style.display = 'inline';
		document.getElementById('vlLiqNaoObrigatorio').style.display = 'none';
	}
	
}

function verificaListaCheckBox(form, objetoMsg){
	val = 0;
	for (i=0;i<form.elements.length;i++) {
	  if(form.elements[i].type == "checkbox") {
		 if(form.elements[i].checked == true){
			val = val +1;
			break;
		 }
	  }
	}
	if(val == 0){
		alert("Por favor, selecione " + objetoMsg + " da lista!");
		return false; 
	}else{
		return true;
	}
	
}