function abrir() 
{
	var windowFeatures = "", nomeArquivo = "", nomeJanela = "", erro = null;

	Argumentos = abrir.arguments; 
	noArgumentos = Argumentos.length; 
	nomeArquivo = Argumentos[0];
	
	for (i = 1; i < noArgumentos; i++) 
	{
		valor = Argumentos[i].substring(2, Argumentos[i].length);
	
		switch (Argumentos[i].substring(0, 2)) 
		{
			case "nj" : nomeJanela = valor; break;
			case "to" : windowFeatures += "top=" + valor + ", "; break;
			case "le" : windowFeatures += "left=" + valor + ", "; break;
			case "he" : windowFeatures += "height=" + valor + ", "; break;
			case "wi" : windowFeatures += "width=" + valor + ", "; break;
			case "lb" : windowFeatures += "location=" + valor + ", "; break;
			case "mb" : windowFeatures += "menubar=" + valor + ", "; break;
			case "sc" : windowFeatures += "scrollbars=" + valor + ", "; break;
			case "st" : windowFeatures += "status=" + valor + ", "; break;
			case "tb" : windowFeatures += "toolbar=" + valor + ", "; break;
			case "tt" : windowFeatures += "titlebar=" + valor + ", "; break;
			case "re" : windowFeatures += "resizable=" + valor + ", "; break;
			
			default : erro = '"Código de atributo não informado no '+(i+1)+' º argumento (' +Argumentos[i]+ ')"';
		}
	}
	
	
	windowFeatures = windowFeatures.substring(0,windowFeatures.lastIndexOf(","));
	
	if (erro)
	{
		alert(erro);
	}
	else 
	{ 
		novaJanela = window.open(nomeArquivo, nomeJanela, windowFeatures) 
	}
}


function mostrarPorId(strId)
{
	var obj = document.getElementById(strId);
	obj.style.display = 'block';
}

function ocultarPorId(strId)
{
	var obj = document.getElementById(strId);
	obj.style.display = 'none';
}


function mostraTextoPadrao(objCampo, strTexto)
{
	if ((objCampo.value == null) || (objCampo.value != null && objCampo.value.length == 0))
	{
		objCampo.value = strTexto;
	}
}

function ocultaTextoPadrao(objCampo, strTexto)
{
	if (objCampo.value == strTexto)
	{
		objCampo.value = '';
	}
}





function ExibeFlash(src, larg, alt, vars)
{
	var strHtml = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="'+ larg +'" height="'+ alt +'">';
	strHtml += '<param name="movie" value="'+ src +'" />';
	strHtml += '<param name="flashvars" value="'+ vars +'" />';
	strHtml += '<embed src="'+ src +'" flashvars="'+ vars +'" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="'+ larg +'" height="'+ alt +'"></embed>';
	strHtml += '</object>';
	
	
	document.write(strHtml);
}


function MascaraNumerica(obj, evt, strMascara)
{
	var strNumeros = '';
	var strConteudo = obj.value;
	
	var chrExclusoes = [8, 32, 35, 36, 37, 38, 39, 45, 46];
	var chrUltimaTecla = evt.keyCode;


	if (chrExclusoes.join('|').indexOf(chrUltimaTecla +'|') == -1)
	{
		for (var i=0; i<strConteudo.length; i++)
		{
			var char = parseInt(strConteudo.charCodeAt(i));
	
			if (char >= 48 && char <= 57)
			{
				strNumeros += strConteudo.charAt(i);
			}
		}
		
		
		var i=0;
		var j=0;
	
		var strTexto = '';	
				
		while (j < strNumeros.length)
		{
			var char = strMascara.charAt(i);
	
			if (char == '0' || char == '')
			{
				char = strNumeros.charAt(j);
				j++;
			}
			
			i++;
			
			
			strTexto += char;
		}
	
	
		obj.value = strTexto;
		
		
		return false;
	}
	
	return true;
}

function MascaraTelefone(obj, evt)
{
	return MascaraNumerica(obj, evt, '(00) 0000.0000');
}

function MascaraCPF(obj, evt)
{
	var blRetorno = MascaraNumerica(obj, evt, '000.000.000-00');
	
	if (obj.value.length > 14)
		obj.value = obj.value.substring(0, 14);
	
	return blRetorno;
}

function MascaraCNPJ(obj, evt)
{
	var strMascara = (obj.value.length < 19) ? '00.000.000/0000-00' : '000.000.000/0000-00';
	var blRetorno = MascaraNumerica(obj, evt, strMascara);
	
	if (obj.value.length > 19)
		obj.value = obj.value.substring(0, 19);
	
	return blRetorno;
}

function MascaraCEP(obj, evt)
{
	var blRetorno = MascaraNumerica(obj, evt, '00.000-000');
	
	if (obj.value.length > 10)
		obj.value = obj.value.substring(0, 10);
	
	return blRetorno;
}

function MascaraRG(obj, evt)
{
	return MascaraNumerica(obj, evt, '');
}


function MascaraData(obj, evt)
{
	var strMascara = (obj.value.length < 9) ? '00/00/00' : '00/00/0000';
	var blRetorno = MascaraNumerica(obj, evt, strMascara);
	
	if (obj.value.length > 10)
		obj.value = obj.value.substring(0, 10);
	
	return blRetorno;
}





function LimpaString(str)
{
	var strDigitos = '0123456789';
	var strRetorno = '';
	var strItem = '';

	for (var i=0; i<str.length; i++)
	{
		strItem = str.charAt(i);
		
		if (strDigitos.indexOf(strItem) >=0 )
		{
			strRetorno += strItem;
		}
	}
	

	return strRetorno;
}

function ValidaCpf(strCpf)
{
	var strCpfNumeros = LimpaString(strCpf);

	
	var strComplemento = strCpfNumeros.substr(0,9);
	var strDigito = strCpfNumeros.substr(9,2);


	var i;
	var intValor = 0;

	for (i=0; i<9; i++)
	{
		intValor += strComplemento.charAt(i)*(10-i);
	}

	if (intValor == 0) 
	{
		return false;
	}
	

	intValor = 11 - (intValor % 11);
	if (intValor > 9) intValor = 0;
	
	if (strDigito.charAt(0) != intValor)
	{
		return false;
	}
	

	intValor *= 2;
	
	for (i=0; i<9; i++)
	{
		intValor += strComplemento.charAt(i)*(11-i);
	}
	
	intValor = 11 - (intValor % 11);
	if (intValor > 9) intValor = 0;
	

	if (strDigito.charAt(1) != intValor)
	{
		return false;
	}


	return true;
}

function ValidaCnpj(strCnpj)
{
	var strCnpjNumeros = LimpaString(strCnpj);
	if (strCnpjNumeros.length == 14) strCnpjNumeros = '0'+ strCnpjNumeros;

	var strDigito = strCnpjNumeros.substr(13,2);

	var intMultiplicadores = [7,6,5,4,3,2,9,8,7,6,5,4,3,2];
	

	var i;
	var intValor = 0;

	for (i=0; i<13; i++)
	{
		intValor += strCnpjNumeros.charAt(i) * intMultiplicadores[i+1];
	}

	intValor = 11 - (intValor % 11);
	if (intValor > 9) intValor = 0;
	
	
	if (strDigito.charAt(0) != intValor)
	{
		return false;
	}
	

	intValor = 0;
	
	for (i=0; i<14; i++)
	{
		intValor += strCnpjNumeros.charAt(i) * intMultiplicadores[i];
	}
	
	intValor = 11 - (intValor % 11);
	if (intValor > 9) intValor = 0;
	

	if (strDigito.charAt(1) != intValor)
	{
		return false;
	}


	return true;
}
