
// Permite apenas a entrada de dados numéricos, 
// ou de mais dois caracteres especial (Argumento caracter1 e caracter2, no JavaScript)
// Usado no evento OnKeyPress
function SomenteNumero(caracter1, caracter2) { 
	var charCode = (navigator.appName == "Netscape") ? event.which : event.keyCode; 
	if (charCode == 13) {return true;} 
	var var_caracter = String.fromCharCode(charCode); 
	if ((var_caracter==caracter1) || (var_caracter==caracter2) || ((var_caracter>="0") && (var_caracter<="9"))) {return true;} 
	else {return false;} 
} 


// Máscara de Data para um TextBox DD/MM/YYYY
// Usado com o evento OnKeyPress
function MascaraData(objeto){ 
	if (objeto.value.length == 2){ objeto.value +="/"; } 
	if (objeto.value.length == 5){ objeto.value +="/"; }   
}


// Máscara para Moeda [999].[999],[99]
// Usado com o evento OnKeyUp
function MascaraMoeda(campo) { 
	var teclapres = event; 
	var tecla = (navigator.appName == 'Netscape') ? event.which : event.keyCode; 
	vr = campo.value; 
	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 MascaraCEP(objeto){ 
	if (objeto.value.length == 5){ objeto.value +="-"; }  
} 


// Máscara de Telefone Nacional para um TextBox
// Usado com o Evento OnKeyPress
function MascaraTelefoneNacional(objeto){ 
	if (objeto.value.length < 1){ objeto.value +="("; }  
	if (objeto.value.length == 3){ objeto.value +=")"; }  
	if (objeto.value.length == 8){ objeto.value +="-"; }  
} 


// Máscara de Telefone Internacional para um TextBox
// Usado com o Evento OnKeyPress
function MascaraTelefoneInternacional(objeto){ 
	if (objeto.value.length < 1){ objeto.value +="+"; }  
	if (objeto.value.length == 3){ objeto.value +=" "; }  
} 


// Máscara de CPF para um TextBox
// Usado com o Evento OnKeyPress
function MascaraCPF(cpf) 
{ 
	var mycpf = ''; 
	mycpf = mycpf + cpf.value; 
	if (mycpf.length == 3) { 
		mycpf = mycpf + '.'; 
	   cpf.value = mycpf; 
	} 
	if (mycpf.length == 7) { 
		mycpf = mycpf + '.'; 
		cpf.value = mycpf; 
	} 
	if (mycpf.length == 11) { 
		mycpf = mycpf + '-'; 
		cpf.value = mycpf; 
	} 
	if (mycpf.length == 14) { 
	} 
} 


// Máscara de CNPJ
function MascaraCNPJ(Campo, teclapres){ 
	var tecla = teclapres.keyCode; 
	var vr = new String(Campo.value); 
	vr = vr.replace(".", ""); 
	vr = vr.replace(".", ""); 
	vr = vr.replace("/", ""); 
	vr = vr.replace("-", ""); 
	tam = vr.length + 1 ; 
 
	if (tecla != 9 && tecla != 8){ 
		if (tam > 2 && tam < 6) 
			Campo.value = vr.substr(0, 2) + '.' + vr.substr(2, tam); 
		if (tam >= 6 && tam < 9) 
			Campo.value = vr.substr(0,2) + '.' + vr.substr(2,3) + '.' + vr.substr(5,tam-5); 
		if (tam >= 9 && tam < 13) 
			Campo.value = vr.substr(0,2) + '.' + vr.substr(2,3) + '.' + vr.substr(5,3) + '/' + vr.substr(8,tam-8); 
		if (tam >= 13 && tam < 15) 
			Campo.value = vr.substr(0,2) + '.' + vr.substr(2,3) + '.' + vr.substr(5,3) + '/' + vr.substr(8,4)+ '-' + vr.substr(12,tam-12); 
	}
}


// Máscara HoraMinuto HH24:MI
// Usado com o Evento OnKeyPress
function MascaraHoraMinuto(objeto){ 
	if (objeto.value.length == 2){ objeto.value +=":"; }  
} 


// Valida CPF. Pode receber valor somente numérico ou mascarado
// Vailda a string "s" é ou não um CPF. s deverá conter 11 números
function ValidaCPF(s) 
{ 
	var i; 

	// Limpa String 
	var Digitos = "0123456789"; 
	var temp = ""; 
	var digito = ""; 
		for (var i=0; i<s.length; i++){ 
		digito = s.charAt(i); 
		if (Digitos.indexOf(digito)>=0){temp=temp+digito} 
		} 
	s = temp; 

	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) return false; 
	d1 = 11 - (d1 % 11); 
	if (d1 > 9) d1 = 0; 
	if (dv.charAt(0) != d1) 
	{ 
		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) 
	{ 
		return false; 
	} 
		return true; 
} 


// Valida CNPJ
// Vailda a string "s" é ou não um CNPJ 
// s deverá conter 14 números 
function ValidaCNPJ(s) 
{ 
	var i; 

	// Deixa so' os digitos no numero 
	var Digitos = "0123456789"; 
	var temp = ""; 
	var digito = ""; 
		for (var i=0; i<s.length; i++){ 
		digito = s.charAt(i); 
		if (Digitos.indexOf(digito)>=0){temp=temp+digito} 
		} 

	s = temp; 
	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) return false; 
		d1 = 11 - (d1 % 11); 
	if (d1 > 9) d1 = 0; 
	if (dv.charAt(0) != d1) 
	{ 
		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) 
	{ 
		return false; 
	} 
		return true; 
} 


// Valida uma Data, no formato DD/MM/YYYY
// Normalmente colocado no evento OnBlur do TextBox
function ValidaData(data) 
{ 
	var dia = data.substr(0,2); 
	var mes = data.substr(3,2); 
	var ano = data.substr(6,4); 
	if (dia < 1 || dia > 31) 
	{ 
		alert("O Dia desta data é inválido!"); 
		return false; 
	} 
	if (mes < 1 || mes > 12) 
	{ 
		alert("O Mês desta data é inválido!"); 
		return false; 
	}  
	else  
	{ 
		if ((mes == 4 || mes == 6 || mes == 9 || mes == 11) && (dia >30)) 
		{ 
			alert("O Dia desta data é inválido!"); 
			return false; 
		 }  
		else 
		{ 
			if (mes == 2) 
			{ 
				var resto = (ano % 4) 
					if ((resto == 0) && (dia > 29)) 
					{ 
						alert("O Dia desta data é inválido!"); 
						return false; 
					} 
					else 
					{ 
						if ((resto != 0 ) && (dia > 28)) 
						{ 
							alert("O Dia desta data é inválido!"); 
							return false; 
						} 
					} 
			} 
		} 
	} 
	if (ano.length < 4) 
	{ 
		alert("O Ano precisa ter 4 dígitos"); 
		return false; 
	}  
	else 
	{ 
		if (ano < 1900 || ano > 2100) 
		{ 
			alert("O Ano desta data é inválido!"); 
			return false; 
		} 
	} 
	return true; 
} 


// Valida HoraMinuto HH24:MI
function ValidaHoraMinuto(data){ 
	var Hora = data.substr(0,2); 
	var minuto = data.substr(3,2); 
	if (Hora < 0 || Hora > 24){ 
		alert("Valor de Hora inválido!"); 
		return false; 
	} 
	if (minuto < 0 || minuto > 59){ 
		alert("Valor de minuto inválido!"); 
		return false; 
	} 
	if ( (Hora.length+minuto.length) < 4){ 
		alert("Horário inválida"); 
		return false; 
	} 
	return true; 
} 


// Valida String. Código q implementa a função TRIM em JavaScript:
// TRIM para JavaScript
String.prototype.trim = function()
{
    // Usando expressões regulares para simular a função TRIM
    return this.replace(/(^\s*)|(\s*$)/g, "");
}



//Pop up information box II (Mike McGrath (mike_mcgrath@lineone.net,  http://website.lineone.net/~mike_mcgrath))
//Permission granted to Dynamicdrive.com to include script in archive
//For this and 100's more DHTML scripts, visit http://dynamicdrive.com
function JanelaOnMouseOver(msg){
	var content = "<table  WIDTH='200' BORDER='2' BORDERCOLOR='#0066CC' CELLPADDING='5' CELLSPACING='0' " +
					"BGCOLOR='FFFEF'><td ALIGN='left'><font color=\\'#000066' size='1' face='Verdana, Arial, Helvetica, sans-serif'>" + msg + "</font></td></table>";
	yyy=Yoffset;
	if(ns4)
	{
		skn.document.write(content);
		skn.document.close();
		skn.visibility="visible";
	}
	if(ns6)
	{
		document.getElementById("dek").innerHTML = content;skn.display='';
	}
	if(ie4)
	{
		document.all("dek").innerHTML = content;skn.display='';
	}
}

function JanelaOnMouseOver_get_mouse(e){
	var x = (ns4||ns6)?e.pageX:event.x + document.body.scrollLeft;
	skn.left = x + Xoffset;
	var y = (ns4||ns6)?e.pageY:event.y + document.body.scrollTop;
	skn.top = y + yyy;
}

function KillJanelaOnMouseOver(){
	yyy = -1000;
	if (ns4)
	{
		skn.visibility = "hidden";
	}
	else if (ns6||ie4)
	{
		skn.display = "none";
	}
}
// Fim do método JanelaOnMouseOver()


// Função para abrir uma janela PopUp
function Abre(URL,TamanhoHorizontal,TamanhoVertical,ScrollBar){
	window.open(URL,"_blank","location=no,directories=no,copyhistory=yes,status=no,resizable=yes,menubar=no,toolbar=no,status=no,scrollbars="+ScrollBar+",menubar=no,width="+TamanhoHorizontal+",height="+TamanhoVertical);
}

// Imprimir Alvo
function ImprimirAlvo()
{
	parent.Alvo.focus();
	print();
}