var popUpWin=0;

function popUpWindow(URLStr, left, top, width, height, scroll)
{
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }
  popUpWin = open(URLStr, 'popUpWin', 'toolbar=no,location=no,directories=no,menubar=no,scrollbars=+scroll+,resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
}


	/* 
	 * Função para pegar o valor do frete do site do correio
	 * Por: Lucas Vicente em 01/06/2006 
	 */
	function pegaValorFreteCorreios(strcepid,strpesoid) {
		var frmFrete = window.parent.frames[0].document.getElementById("frmFrete");		
		window.parent.frames[0].document.getElementById("cepDestino").value = window.parent.frames[1].document.getElementById(strcepid).value;
		window.parent.frames[0].document.getElementById("peso").value		= window.parent.frames[1].document.getElementById(strpesoid).value;
		frmFrete.submit();
	}


function isNumeric(eventObj, obj){
	var CodTecla;

	if (document.all) 
		CodTecla=eventObj.keyCode;
	else
		CodTecla=eventObj.which;

	var str=obj.value

	if((CodTecla < 48 || CodTecla > 58) && (CodTecla != 46)){ 
		return false;
	}

	return true;
}

/*
	Descrição: Passa valores para os objetos. Essa fução é usada especialmente pela Pop De Busca.
			   O parametro ar deve ser um array com três colunas. 
			   Ex: ar[{int nLinhas}][3]; 
			   Onde a coluna{0} guarda o id(DOM) do objeto, a coluna{2} leva o valor do mesmo e
			   a coluna{3} é um valor boolean (true ou false) que indica se esse campo deve ser 
			   procurado na janela que abriu essa outra janela 
			   entende-se que assim a janela que esta usando essa função é uma Pop.
	Por......: Lucas Henrique Vicente
	Data.....: 17/08/2004
	
*/
function popBuscaPassaValor(ar) {
	var campo;
	var valor;
	for (var i=0; i<ar.length; i++) {
			campo = (ar[i][2] ? window.opener.document.getElementById(ar[i][0]) : document.getElementById(ar[i][0]));
			valor = ar[i][1];
			campo.value = valor;
	}
		
}



/*
	Descrição: Coloca máscara em Telefones ex.: 19-33333333
	Por......: Lucas Henrique Vicente
	Data.....: 17/08/2004
*/
function mascTel(c, e) {
	var appName = window.navigator.appName;
	var txtField = document.getElementById(c);
	var keyCode = null;
	
	txtField.maxLength = 11;
	
	if (document.all) keyCode = e.keyCode;
	else keyCode = e.which;	
	
	if ((keyCode < 48 || keyCode > 58) && keyCode != 8) {
		return false;
	} else {
		if (keyCode != 8) {
			switch(txtField.value.length) {
				case 2 : txtField.value += "-"; break;
			}
		}
		return true;
	}
}

/*
	Descrição: Coloca máscara em CNPJs
	Por......: Lucas Henrique Vicente
	Data.....: 17/08/2004
*/
function mascCEP(c, e) {
	var appName = window.navigator.appName;
	var txtField = document.getElementById(c);
	var keyCode = null;
	
	txtField.maxLength = 9;
	
	if (document.all) keyCode = e.keyCode;
	else keyCode = e.which;	
	
	if ((keyCode < 48 || keyCode > 58) && keyCode != 8) {
		return false;
	} else {
		if (keyCode != 8) {
			switch(txtField.value.length) {
				case 5 : txtField.value += "-"; break;
			}
		}
		return true;
	}
}


/*
	Descrição: Coloca máscara em CNPJs
	Por......: Lucas Henrique Vicente
	Data.....: 17/08/2004
*/
function mascCPF(c, e) {
	var appName = window.navigator.appName;
	var txtField = document.getElementById(c);
	var keyCode = null;
	
	txtField.maxLength = 14;
	
	if (document.all) keyCode = e.keyCode;
	else keyCode = e.which;	
	
	if ((keyCode < 48 || keyCode > 58) && keyCode != 8) {
		return false;
	} else {
		if (keyCode != 8) {
			switch(txtField.value.length) {
				case 3  :
				case 7  : txtField.value += "."; break;
				case 11 : txtField.value += "-"; break;
			}
		}
		return true;
	}
}


/*
	Descrição: Coloca máscara em CNPJs
	Por......: Lucas Henrique Vicente
	Data.....: 17/08/2004
*/
function mascCNPJ(c, e) {
	
	var appName = window.navigator.appName;
	var txtField = document.getElementById(c);
	var keyCode = null;
	
	txtField.maxLength = 19;
	
	if (document.all) keyCode = e.keyCode;
	else keyCode = e.which;
	
	if ((keyCode < 48 || keyCode > 58) && keyCode != 8) {
		return false;
	} else {
		if (keyCode != 8) {
			switch(txtField.value.length) {
				case 3  :
				case 7  : txtField.value += "."; break;
				case 11 : txtField.value += "/"; break;
				case 16 : txtField.value += "-"; break;
			}
		}
		return true;
	}
}



function validaData(data) {
	var strData = new String(data);
	var d		= strData.split("/");
	if (d.length > 0) {
		var dia = d[0];
		var mes = d[1];
		var ano = d[2];
		
		if (mes >= 1 && mes <= 12) {
			var mesDiaIni = 1;
			var mesDiaFim = 0;
			if (mes == 1 || mes == 3 || mes == 5 || mes == 7|
				mes == 8 || mes == 10 || mes == 12) {
				mesDiaFim = 31;
			} else if (mes == 4 || mes == 6 || mes == 9 || mes == 11) {
				mesDiaFim = 30;
			} else if (mes == 2) {
				if ((ano%4) == 0) {
					mesDiaFim = 29;
				} else {
					mesDiaFim = 28;
				}
			}
			if (dia >= mesDiaIni && dia <= mesDiaFim) {
				return true;
			} 
		} else {
			return false;
		}		
	} else {
		return false;
	}
}


/* 
	Máscara de para datas
	Por..: Lucas Henrique Vicente
	Data.: 26/07/2004
*/
function mascData(fieldid, nextfieldid, e) {
	var appName = window.navigator.appName;
	var txtField = document.getElementById(fieldid);
	var keyCode = null;
	
	txtField.maxLength = 18;
	
	if (document.all) keyCode = e.keyCode;
	else keyCode = e.which;
	
	if ((keyCode < 48 || keyCode > 58) && keyCode != 8) {
		return false;
	} else {
		if (keyCode != 8) {
			var field = document.getElementById(fieldid);
			field.maxLength = 10;
			if (nextfieldid != "")
				var next  = document.getElementById(nextfieldid);
			
			var reg1 = /^[0-9]{2}$/;
			var reg2 = /^[0-9]{2}\/[0-9]{2}$/;
			var reg3 = /^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/;
			
			if (reg1.test(field.value) || reg2.test(field.value)) {
				field.value += "/";
			} else if (reg3.test(field.value)) {
				if (nextfieldid != "") {
					next.focus();
					//next.select();
				}
			}
		}
		return true;
	} 
}


/*
	Descrição: Trava caracteres só premite digitar números
	Por......: Lucas Henrique Vicente
	Data.....: 26/07/2004
	ex.: campoNumerico(this, event)
*/
function campoNumerico(obj, evt) {
	var CodTecla;

	if (document.all){ CodTecla = evt.keyCode; } 
	else { CodTecla = evt.which; }
			
	var str = obj.value;
	
	if((CodTecla >= 48 && CodTecla <= 57)	|| 
	   (CodTecla == 46)						||
	   (CodTecla == 8)						||
	   (CodTecla == 9)						||
	   (CodTecla == 0)						||
	   (CodTecla == 45)) { 
		return true;
	}

	return false;
}

/* 
	Máscara de valor monetário
	Por..: Lucas Henrique Vicente
	Data.: 26/07/2004
*/
function valorMonetario(id, e) {
	var txtBox   = document.getElementById(id);	
	if (!campoNumerico(id, e)) {
		return false;
	} else {
		valorDecimal(id, e);
		
		var aux		 = txtBox.value.replace(".", "");
		for (var j=0; j<20; j++) aux = aux.replace(".", "");
		
		var parteInt = aux.split(",");		
		
		if (parteInt.length == 2) {
			var i, start;
			var strMilhar = new String(parteInt[0]);
			var milhar    = new Array();
			var nPontos   = Math.floor(parteInt[0].length / 3);	
			
			for (i=0; i<nPontos; i++) {
				start = strMilhar.length - ((i + 1) * 3);
				milhar[i] = strMilhar.substr(start, 3);					
			}
			
			if (start > 0) milhar[milhar.length] = strMilhar.substr(0, start);				
			
			if (milhar.length > 0) {
				txtBox.value = "";
				for (i=(milhar.length-1); i>=0; i--) {
					txtBox.value += milhar[i] + (i == 0 ? "" : ".");
				}
				
				txtBox.value += "," + parteInt[1];
			}
		}
		return true;
	}
}

/* 
	Máscara de valor decimal
	Por..: Lucas Henrique Vicente
	Data.: 26/07/2004
*/
function valorDecimal(id, e) {
	var txtBox   = document.getElementById(id);
	var offSet;
	var keyCode = null;
	
	if (document.all) keyCode = e.keyCode;
	else keyCode = e.which;	
	
	if (!campoNumerico(id, e)) {
		return false;
	} else {
		if (txtBox.value.length >= 2) {
			if (txtBox.value.length == 4 && 
				txtBox.value.substr((txtBox.value.length - 3), 1) == "," &&
				e.keyCode == 8) 
				txtBox.value = txtBox.value.replace(",", "");
			else if (txtBox.value.length >= 2 && e.keyCode != 8)
				putComma(txtBox, 1);
			else if (txtBox.value.length >= 2 && e.keyCode == 8)
				putComma(txtBox, 3);
		}
	}	
}

/* 
	Máscara de valor decimal com 4 casas
	Por..: Lucas Henrique Vicente
	Data.: 23/02/2006
*/
function valorDecimal(id, e) {
	var txtBox   = document.getElementById(id);
	var offSet;
	var keyCode = null;
	
	if (document.all) keyCode = e.keyCode;
	else keyCode = e.which;	
	
	if (!campoNumerico(id, e)) {
		return false;
	} else {
		if (txtBox.value.length >= 2) {
			if (txtBox.value.length == 4 && 
				txtBox.value.substr((txtBox.value.length - 3), 1) == "," &&
				e.keyCode == 8) 
				txtBox.value = txtBox.value.replace(",", "");
			else if (txtBox.value.length >= 2 && e.keyCode != 8)
				putComma(txtBox, 1);
			else if (txtBox.value.length >= 2 && e.keyCode == 8)
				putComma(txtBox, 5);
		}
	}	
}

/* 
	Coloca vírgula
	Por..: Lucas Henrique Vicente
	Data.: 26/07/2004
*/
function putComma(ctl, precision) {
	ctl.value = ctl.value.replace(",", "");
	var begin = (ctl.value.length - precision);
	var end   = begin;
	
	if (begin >= 0) {
		var parteDec = ctl.value.substr(begin, precision);
		var parteInt = ctl.value.substr(0, end);
		ctl.value	 = parteInt + "," + parteDec;
	}
}


/* 
	Função que determina o foco a um controle dentro do formulário corrente
	Por..: Danilo Lima
	Data.: 16/11/2004
*/

function Foco(strControle)
{
	document.all('strControle').focus();
}


function checaCPF(c) {
	var ctr = document.getElementById(c);
	CPF = ctr.value.replace('.', '').replace('.', '').replace('-', '');
	if (CPF.length != 11 || CPF == "00000000000" || CPF == "11111111111" ||
		CPF == "22222222222" ||	CPF == "33333333333" || CPF == "44444444444" ||
		CPF == "55555555555" || CPF == "66666666666" || CPF == "77777777777" ||
		CPF == "88888888888" || CPF == "99999999999")
		return false;
	soma = 0;
	for (i=0; i < 9; i ++)
		soma += parseInt(CPF.charAt(i)) * (10 - i);
	resto = 11 - (soma % 11);
	if (resto == 10 || resto == 11)
		resto = 0;
	if (resto != parseInt(CPF.charAt(9))) {
		ctr.focus();
		alert('CPF inválido!');
	}
	soma = 0;
	for (i = 0; i < 10; i ++)
		soma += parseInt(CPF.charAt(i)) * (11 - i);
	resto = 11 - (soma % 11);
	if (resto == 10 || resto == 11)
		resto = 0;
	if (resto != parseInt(CPF.charAt(10))) {
		ctr.focus();
		alert('CPF inválido!');
	}
 }


function closeBanner(banner) {
	var b = document.getElementById(banner);
	b.style.visibility = "hidden"
}

function posBanner(refer, banner) {
	var r = document.getElementById(refer);
	var b = document.getElementById(banner);
	b.style.top = findPosY(r);
	b.style.left = findPosX(r);
	//document.getElementById("divInfo").innerHTML = b.style.top + " , " + b.style.left;
	//alert(b.style.top + " , " + b.style.left);
}

function findPosX(obj) {
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft;
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x; //525

	return curleft;
}

function findPosY(obj) {
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop;
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
		
	return curtop;
}


//Não deixar clicar com o botão direito 
function right(e) {

	var caractercopy = unescape('%A9');
	
	if	(! document.all  && 
		(e.which == 3 || e.which == 2)){
			alert('Copyright ' + caractercopy + ' 2006 Disk Games. Todos os direitos reservados.');
			return false;
	}	
	else {
		if (event.button == 2 || event.button == 3) {
			alert('Copyright ' + caractercopy + ' 2006 Disk Games. Todos os direitos reservados.');
			return false;
		}
	}
	return true;
}

