function HabilitaCartao()
{
	document.getElementById("TabelaCartao").disabled = false;
	document.getElementById("optCartao").disabled = false;
	document.getElementById("txtNumeroDoCartao").disabled = false;
	document.getElementById("txtCodigoDeSegurancaDoCartao").disabled = false;
	document.getElementById("txtNomeDoTitularDoCartao").disabled = false;
	document.getElementById("txtMesValidadeDoCartao").disabled = false;
	document.getElementById("txtAnoValidadeDoCartao").disabled = false;
	
	document.getElementById("bandeiravisa").src = "/imagens/bandeiravisa.gif";
	document.getElementById("bandeiramastercard").src = "/imagens/bandeiramastercard.gif";
	document.getElementById("bandeiradiners").src = "/imagens/bandeiradiners.gif";
	document.getElementById("codigodeseguranca").src = "/imagens/codigodeseguranca.gif";
}
function DesabilitaCartao()
{
	document.getElementById("TabelaCartao").disabled = true;
	document.getElementById("optCartao").disabled = true;
	document.getElementById("txtNumeroDoCartao").disabled = true;
	document.getElementById("txtCodigoDeSegurancaDoCartao").disabled = true;
	document.getElementById("txtNomeDoTitularDoCartao").disabled = true;
	document.getElementById("txtMesValidadeDoCartao").disabled = true;
	document.getElementById("txtAnoValidadeDoCartao").disabled = true;

	document.getElementById("bandeiravisa").src = "/imagens/bandeiravisapb.gif";
	document.getElementById("bandeiramastercard").src = "/imagens/bandeiramastercardpb.gif";
	document.getElementById("bandeiradiners").src = "/imagens/bandeiradinerspb.gif";
	document.getElementById("codigodeseguranca").src = "/imagens/codigodesegurancapb.gif";
}
function MudaEstilo(IdObjeto,NovoEstilo)
{
	document.getElementById(""+IdObjeto+"").className = NovoEstilo;
}
function ReservaDeProdutos(Id)
{
	var Largura = 400;
	var Altura = 400;
	
	var PosicaoLeft = ((screen.width) - (Largura)) / 2;
	var PosicaoTop = ((screen.height) - (Altura)) / 2;
	
	var PropriedadesDaJanela = "width="+Largura+",height="+Altura+",top="+PosicaoTop+",left="+PosicaoLeft+",fullscreen=no,resizable=no,scrollbars=yes,toolbar=no,location=no,menubar=no,status=no";
	window.open("formreserva.php?Id="+Id, "RESERVA", PropriedadesDaJanela);
}
function MarcaTudoBuscaAvancada()
{
	document.getElementById("chkId").checked = true;
	document.getElementById("chkNome").checked = true;
	document.getElementById("chkCpf").checked = true;
	document.getElementById("chkRg").checked = true;
	document.getElementById("chkDataDeNascimento").checked = true;
	document.getElementById("chkNomeFantasia").checked = true;
	document.getElementById("chkPessoaDeContato").checked = true;
	document.getElementById("chkCnpj").checked = true;
	document.getElementById("chkEndereco").checked = true;
	document.getElementById("chkCidade").checked = true;
	document.getElementById("chkEmail").checked = true;
	document.getElementById("chkTelefone").checked = true;
}
function DesmarcaTudoBuscaAvancada()
{
	document.getElementById("chkId").checked = false;
	document.getElementById("chkNome").checked = false;
	document.getElementById("chkCpf").checked = false;
	document.getElementById("chkRg").checked = false;
	document.getElementById("chkDataDeNascimento").checked = false;
	document.getElementById("chkNomeFantasia").checked = false;
	document.getElementById("chkPessoaDeContato").checked = false;
	document.getElementById("chkCnpj").checked = false;
	document.getElementById("chkEndereco").checked = false;
	document.getElementById("chkCidade").checked = false;
	document.getElementById("chkEmail").checked = false;
	document.getElementById("chkTelefone").checked = false;
}
function MarcaTudo()
{
	CheckboxsDoFormulario = document.getElementsByTagName("input");			
	for (i=0; i < CheckboxsDoFormulario.length; i++)
	{
		if ( (CheckboxsDoFormulario[i].type == "checkbox") && (CheckboxsDoFormulario[i].name.substring(0,19) == "chkLinhaDeResultado") )
		{
			CheckboxsDoFormulario[i].checked = true;
		}
	}
}
function MarcaIndividualmente(IdDaLinha)
{
	if ( document.getElementById("chkLinhaDeResultado"+IdDaLinha).checked == false )
	{
		document.getElementById("chkLinhaDeResultado"+IdDaLinha).checked = true;
	}
	else
	{
		document.getElementById("chkLinhaDeResultado"+IdDaLinha).checked = false;
	}
}
function DesmarcaTudo()
{
	CheckboxsDoFormulario = document.getElementsByTagName("input");			
	for (i=0; i < CheckboxsDoFormulario.length; i++)
	{
		if ( (CheckboxsDoFormulario[i].type == "checkbox") && (CheckboxsDoFormulario[i].name.substring(0,19) == "chkLinhaDeResultado") )
		{
			CheckboxsDoFormulario[i].checked = false;
		}
	}
}
function DeletarClientes()
{
	CheckboxsDoFormulario = document.getElementsByTagName("input");			
	for (i=0; i < CheckboxsDoFormulario.length; i++)
	{
		if ( (CheckboxsDoFormulario[i].checked == true) && (CheckboxsDoFormulario[i].type == "checkbox") && (CheckboxsDoFormulario[i].name.substring(0,19) == "chkLinhaDeResultado") )
		{
			if (confirm("Você realmente deseja excluir este(s) registros(s)?             "))
			{
				i = 1000000;
			}
			else
			{
				i = 1000000;
			}
		}
	}
}
function PulaCampo(CampoAtual,CampoAlmejado,MaximoDeDigitos)
{
	if ( document.getElementById(CampoAtual).value.length ==  MaximoDeDigitos)
	{
		document.getElementById(CampoAlmejado).focus();
	}
}
function ValidaCaracteresEmail(Email)
{ 
	var parsed = true; 
	var i = 0; 
	var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-_";
	
	for (i=0; i < Email.length; i++)
	{
		var letter = Email.charAt(i).toLowerCase(); 
		
			if (validchars.indexOf(letter) != -1)
			continue; 
			parsed = false; 
			break;
	} 
	return parsed;
}
function CadastraCliente()
{
	if ( (frmCadastro.cboTipoPessoa.value == "pj") )
	{
		var Email = frmCadastro.txtEmail.value;
		
		if ( !ValidaCaracteresEmail(Email) )   // Verifica se todos os caracteres são validos. 
		{
			alert ("Favor preencher o campo 'email'");
			frmCadastro.txtEmail.focus();
			return false; 
		}
		
		if (Email.indexOf("@") < 1)  //  Verifica se @ existe, e se não é o primeiro caracter. 
		{
			alert ("Favor preencher o campo 'email'");
			frmCadastro.txtEmail.focus();
			return false; 
		}
		else if (Email.lastIndexOf(".") <= Email.indexOf("@"))  // O ponto de estar depois da @. 
		{
			alert ("Favor preencher o campo 'email'");
			frmCadastro.txtEmail.focus();
			return false;
		}
		else if (Email.indexOf("@") == Email.length) // @ não deve ser o ultimo caracter. 
		{
			alert ("Favor preencher o campo 'email'");
			frmCadastro.txtEmail.focus();
			return false; 
		}
		//################################################################################
		//################################################################################
		//################################################################################
		else if ( (frmCadastro.txtPessoaDeContato.value == null) || (frmCadastro.txtPessoaDeContato.value.length < 1) )
		{
			alert ("Favor preencher o campo 'pessoa de contato'");
			frmCadastro.txtPessoaDeContato.focus();
			return false;
		}
		else if ( (frmCadastro.txtNomeFantasia.value == null) || (frmCadastro.txtNomeFantasia.value.length < 1) )
		{
			alert ("Favor preencher o campo 'nome fantasia'");
			frmCadastro.txtNomeFantasia.focus();
			return false;
		}
		else if ( (frmCadastro.txtCnpj.value == null) || (frmCadastro.txtCnpj.value.length<1) )
		{
			alert ("Favor preencher o campo 'cnpj'");
			frmCadastro.txtCnpj.focus();
			return false;
		}
		else if ( (frmCadastro.txtIe.value == null) || (frmCadastro.txtIe.value.length<1) )
		{
			alert ("Favor preencher o campo 'IE'");
			frmCadastro.txtIe.focus();
			return false;
		}
		else if ( (frmCadastro.txtEndereco.value == null) || (frmCadastro.txtEndereco.value.length<1) )
		{
			alert ("Favor preencher o campo 'endereço'");
			frmCadastro.txtEndereco.focus();
			return false;
		}
		else if ( (frmCadastro.txtNumero.value == null) || (frmCadastro.txtNumero.value.length<1) )
		{
			alert ("Favor preencher o campo 'numero'");
			frmCadastro.txtNumero.focus();
			return false;
		}
		else if ( (frmCadastro.txtBairro.value == null) || (frmCadastro.txtBairro.value.length<1) )
		{
			alert ("Favor preencher o campo 'bairro'");
			frmCadastro.txtBairro.focus();
			return false;
		}
		else if ( (frmCadastro.txtCidade.value == null) || (frmCadastro.txtCidade.value.length<1) )
		{
			alert ("Favor preencher o campo 'cidade'");
			frmCadastro.txtCidade.focus();
			return false;
		}
		else if ( (frmCadastro.txtCep.value == null) || (frmCadastro.txtCep.value.length<1) )
		{
			alert ("Favor preencher o campo 'cep'");
			frmCadastro.txtCep.focus();
			return false;
		}
		else if ( (frmCadastro.txtTelefone1.value == null) || (frmCadastro.txtTelefone1.value.length<1) )
		{
			alert ("Favor preencher o campo 'telefone 1'");
			frmCadastro.txtTelefone1.focus();
			return false;
		}
		else if ( (frmCadastro.txtSenha.value == null) || (frmCadastro.txtSenha.value.length<1) )
		{
			alert ("Favor preencher o campo 'senha'");
			frmCadastro.txtSenha.focus();
			return false;
		}
		/*else if ( (frmCadastro.txtRepetirSenha.value == null) || (frmCadastro.txtRepetirSenha.value.length<1) )
		{
			alert ("Favor preencher o campo 'repetir senha'");
			frmCadastro.txtRepetirSenha.focus();
			return false;
		}
		else if ( frmCadastro.txtSenha.value != frmCadastro.txtRepetirSenha.value )
		{
			alert ("o campo 'senha' e 'repetir senha' não conferem");
			frmCadastro.txtSenha.focus();
			return false;
		}*/
		
		return true;
	}
	else if ( (frmCadastro.cboTipoPessoa.value == "pf") )
	{
		var Email = frmCadastro.txtEmail.value;
		
		if ( !ValidaCaracteresEmail(Email) )   // Verifica se todos os caracteres são validos. 
		{
			alert ("Favor preencher o campo 'email' corretamente");
			frmCadastro.txtEmail.focus();
			return false; 
		}
		
		if (Email.indexOf("@") < 1)  //  Verifica se @ existe, e se não é o primeiro caracter. 
		{
			alert ("Favor preencher o campo 'email' corretamente");
			frmCadastro.txtEmail.focus();
			return false; 
		}
		else if (Email.lastIndexOf(".") <= Email.indexOf("@"))  // O ponto de estar depois da @. 
		{
			alert ("Favor preencher o campo 'email' corretamente");
			frmCadastro.txtEmail.focus();
			return false;
		}
		else if (Email.indexOf("@") == Email.length) // @ não deve ser o ultimo caracter. 
		{
			alert ("Favor preencher o campo 'email' corretamente");
			frmCadastro.txtEmail.focus();
			return false; 
		}
		//################################################################################
		//################################################################################
		//################################################################################
		else if ( (frmCadastro.txtNome.value == null) || (frmCadastro.txtNome.value.length < 1) )
		{
			alert ("Favor preencher o campo 'nome'");
			frmCadastro.txtNome.focus();
			return false;
		}
		else if ( (frmCadastro.txtCpf.value == null) || (frmCadastro.txtCpf.value.length<1) )
		{
			alert ("Favor preencher o campo 'cpf'");
			frmCadastro.txtCpf.focus();
			return false;
		}
		else if ( (frmCadastro.txtDataNascimento.value == null) || (frmCadastro.txtDataNascimento.value.length<1) )
		{
			alert ("Favor preencher o campo 'data nascimento'");
			frmCadastro.txtDataNascimento.focus();
			return false;
		}
		else if ( (frmCadastro.cboSexo.value == null) || (frmCadastro.cboSexo.value.length<1) )
		{
			alert ("Favor preencher o campo 'sexo'");
			frmCadastro.cboSexo.focus();
			return false;
		}
		else if ( (frmCadastro.txtEndereco.value == null) || (frmCadastro.txtEndereco.value.length<1) )
		{
			alert ("Favor preencher o campo 'endereço'");
			frmCadastro.txtEndereco.focus();
			return false;
		}
		else if ( (frmCadastro.txtNumero.value == null) || (frmCadastro.txtNumero.value.length<1) )
		{
			alert ("Favor preencher o campo 'numero'");
			frmCadastro.txtNumero.focus();
			return false;
		}
		else if ( (frmCadastro.txtBairro.value == null) || (frmCadastro.txtBairro.value.length<1) )
		{
			alert ("Favor preencher o campo 'bairro'");
			frmCadastro.txtBairro.focus();
			return false;
		}
		else if ( (frmCadastro.txtCidade.value == null) || (frmCadastro.txtCidade.value.length<1) )
		{
			alert ("Favor preencher o campo 'cidade'");
			frmCadastro.txtCidade.focus();
			return false;
		}
		else if ( (frmCadastro.txtCep.value == null) || (frmCadastro.txtCep.value.length<1) )
		{
			alert ("Favor preencher o campo 'cep'");
			frmCadastro.txtCep.focus();
			return false;
		}
		else if ( (frmCadastro.txtTelefone1.value == null) || (frmCadastro.txtTelefone1.value.length<1) )
		{
			alert ("Favor preencher o campo 'telefone 1'");
			frmCadastro.txtTelefone1.focus();
			return false;
		}
		else if ( (frmCadastro.txtSenha.value == null) || (frmCadastro.txtSenha.value.length<1) )
		{
			alert ("Favor preencher o campo 'senha'");
			frmCadastro.txtSenha.focus();
			return false;
		}
		return true;
	}
}
/*##################################################
###################################################
									PARA FORMULÁRIOS
###################################################
##################################################*/
function formataMoeda(objTextBox, SeparadorMilesimo, SeparadorDecimal, 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;    
    // 13=enter, 8=backspace as demais retornam 0(zero)
    // whichCode==0 faz com que seja possivel usar todas as teclas como delete, setas, etc    
	//if (objTextBox.value.length >= tamanho) whichCode = 1;
    if ((whichCode == 13) || (whichCode == 0) || (whichCode == 8))
    	return true;
    key = String.fromCharCode(whichCode); // Valor para o código da Chave
 
 
    if (strCheck.indexOf(key) == -1) 
    	return false; // Chave inválida
    len = objTextBox.value.length;
    for(i = 0; i < len; i++)
        if ((objTextBox.value.charAt(i) != '0') && (objTextBox.value.charAt(i) != SeparadorDecimal)) 
        	break;
    aux = '';
    for(; i < len; i++)
        if (strCheck.indexOf(objTextBox.value.charAt(i))!=-1) 
        	aux += objTextBox.value.charAt(i);
    aux += key;
    len = aux.length;
    if (len == 0) 
    	objTextBox.value = '';
    if (len == 1) 
    	objTextBox.value = '0'+ SeparadorDecimal + '0' + aux;
    if (len == 2) 
    	objTextBox.value = '0'+ SeparadorDecimal + aux;
    if (len > 2) {
        aux2 = '';
        for (j = 0, i = len - 3; i >= 0; i--) {
            if (j == 3) {
                aux2 += SeparadorMilesimo;
                j = 0;
            }
            aux2 += aux.charAt(i);
            j++;
        }
        objTextBox.value = '';
        len2 = aux2.length;
        for (i = len2 - 1; i >= 0; i--)
        	objTextBox.value += aux2.charAt(i);
        objTextBox.value += SeparadorDecimal + aux.substr(len - 2, len);
    }
    return false;
}
//#################################################################################
function Newsletter()
{
	var Filtro=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	
	if ( (document.getElementById("txtEmailNewsletter").value == null) || (document.getElementById("txtEmailNewsletter").value.length < 1) )
	{
		alert ("Informe o campo 'e-Mail'");
		document.getElementById("txtEmailNewsletter").focus(); 
		return false;
	}
	else if ( !Filtro.test(document.getElementById("txtEmailNewsletter").value) )
	{
		alert ("Informe um 'e-Mail' válido");
		document.getElementById("txtEmailNewsletter").focus();
		return false;
	}
	else if ( document.getElementById("txtEmailNewsletter").value != "email@seudominio.com.br" )
	{	
		AbrePopup("newsletter.php?Acao="+document.getElementById('cboAcaoNewsletter').value+"&Email="+document.getElementById("txtEmailNewsletter").value+"","NEWSLETTERS",300,100,0);
	}
}
function ValidaLogin()
{
	if ( (frmLogin.txtUsuario.value == null) || (frmLogin.txtUsuario.value.length < 1) )
	{
		alert ("Favor preencher o campo 'usuário'");
		frmLogin.txtUsuario.focus();
		return false;
	}
	else if ( (frmLogin.txtSenha.value == null) || (frmLogin.txtSenha.value.length<1) )
	{
		alert ("Favor preencher o campo 'senha'");
		frmLogin.txtSenha.focus();
		return false;
	}
	else
	{
		frmLogin.submit();
	}
}
function AbrePopup(Pagina,Janela,Largura,Altura,Rolagem)
{
	var PosicaoLeft = ((screen.width) - (Largura)) / 2;
	var PosicaoTop = ((screen.height) - (Altura)) / 2;
	
	var PropriedadesDaJanela = "width="+Largura+",height="+Altura+",top="+PosicaoTop+",left="+PosicaoLeft+",fullscreen=no,resizable=no,scrollbars="+Rolagem+",toolbar=no,location=no,menubar=no,status=no";
	window.open(Pagina, Janela, PropriedadesDaJanela);
}
function AbrePopupTopLeft(Pagina,Janela,Largura,Altura,Rolagem,Top,Left)
{
	var PropriedadesDaJanela = "width="+Largura+",height="+Altura+",top="+Top+",left="+Left+",fullscreen=no,resizable=no,scrollbars="+Rolagem+",toolbar=no,location=no,menubar=no,status=no";
	window.open(Pagina, Janela, PropriedadesDaJanela);
}
function sonumero()
{
	if ((event.keyCode > 57) || (event.keyCode < 48))
	{ 
		event.keyCode= 0;
	}
}
function checaCPF(CPF) 
{	
	CPF = CPF.replace(".","");
	CPF = CPF.replace(".","");
	CPF = CPF.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)))
			return false;
	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)))
		return false;
	
	//document.forms[0].cpfDs.value = CPF;
	return true;
}
function verify_ccard(inNumber, type) //if (!verify_ccard(document.getElementById('Programa_txtNumeroCartao').value, document.getElementById('Programa_ddlBandeira').value)) 
{
	var total = 0;
	var tmp = 0;
	var number = "";

	// Verificacao de numeros na string inNumber
	for(i=0; i<inNumber.length; i++){
		if(inNumber.charAt(i) >= "0" && inNumber.charAt(i) <= "9"){
			number = number + inNumber.charAt(i);
		}
		else
			return false
	}
	
	// Se numero for curto demais para qualquer tipo
	if(number.length < 13) 
		return false; 

	first = "" + number.charAt(0);
	second = "" + number.charAt(1);
	third = "" + number.charAt(2);
	firstTwo = first + second;
	firstFour = firstTwo + third + number.charAt(3);

	// MASTERCARD
	if(type == "2"){
		if(first != "5" || second < "1" || second > "5")
			return false;
		if(number.length != 16)
			return false;
	}
	// VISA
	else if(type == "4"){
		if(first != "4")
			return false;
		if(number.length != 13 && number.length != 16)
			return false;
	}
	// AMERICAN EXPRESS
	else if(type == "1"){
		if(first != "3" || (second != "4" && second != "7"))
			return false;
		if(number.length != 15) 
			return false;
	}
	// DINERS
	else if(type == "3"){
		if(firstTwo != "36" && firstTwo != "38" && (firstTwo != "30" || (third < "0" || third > "5")))
			return false;
		if(number.length != 14)
			return false;
	}
	// JCB CARDS
	else if(type == "JCB Cards"){
		if(firstFour != "2131" && firstFour != "1800" && (first != "3"))
			return false;
		if(number.length != 16 && first =="3")
			return false;
		if(number.length != 15 && first != "3")
			return false;
	}
	
	// Fazendo o check sum
	for(loc = number.length - 2; loc >= 0; loc -= 2){
		total += 1 * number.charAt(loc +1);
		tmp = number.charAt(loc) * 2;
		if(tmp > 9) 
			total += 1;
		total += tmp%10;
	}
	if(number.length % 2 > 0)
		total += 1 * number.charAt(0);

	if (total % 10 == 0)
		return true
	else
		return false
}
function MascaraDeFormatacao(objForm, strField, sMask, evtKeyPress)
{
	/***
		Fim da Função Máscaras Gerais
		MODO DE USO:  <input type="text" class="inputtext" name="txtRg" maxlength="10"  size="10"  onkeypress="return MascaraDeFormatacao(this.form, this.id, '99.999.999!', event);">
		O ! no fim dos noves significa somento numeros
	***/

	var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

	if(document.all)
	{ // Internet Explorer
		nTecla = evtKeyPress.keyCode;
	}
	else if(document.layers)
	{ // Nestcape
		nTecla = evtKeyPress.which;
	}
	else 
	{
		nTecla = evtKeyPress.which;
		if (nTecla == 8)
		{
			return true;
		}
	}			

	sValue = objForm[strField].value;

	// Limpa todos os caracteres de formatação que
	// já estiverem no campo.
	sValue = sValue.toString().replace( "-", "" );
	sValue = sValue.toString().replace( "-", "" );
	sValue = sValue.toString().replace( ".", "" );
	sValue = sValue.toString().replace( ".", "" );
	sValue = sValue.toString().replace( "/", "" );
	sValue = sValue.toString().replace( "/", "" );
	sValue = sValue.toString().replace( "(", "" );
	sValue = sValue.toString().replace( "(", "" );
	sValue = sValue.toString().replace( ")", "" );
	sValue = sValue.toString().replace( ")", "" );
	sValue = sValue.toString().replace( " ", "" );
	sValue = sValue.toString().replace( " ", "" );
	fldLen = sValue.length;
	mskLen = sMask.length;

	i = 0;
	nCount = 0;
	sCod = "";
	mskLen = fldLen;

	while (i <= mskLen)
	{
		bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/"))
		bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

		if (bolMask)
		{
			sCod += sMask.charAt(i);
			mskLen++;
		}
		else
		{
			sCod += sValue.charAt(nCount);
			nCount++;
		}

		i++;
	}

	objForm[strField].value = sCod;

	if (nTecla != 8)
	{ // backspace
		if (sMask.charAt(i-1) == "9")
		{ // apenas números...
			return ((nTecla > 47) && (nTecla < 58));
		} // números de 0 a 9
		else
		{ // qualquer caracter...
			return true;
		}
	}
	else
	{
		return true;
	}
}
function MostraOculta(ObjetoVisivel, ObjetoOculto)
{
	document.getElementById(ObjetoVisivel).style.display = "inline";
	document.getElementById(ObjetoOculto).style.display = "none";
}
function Mostra(Objeto)
{
	document.getElementById(Objeto).style.display = "inline";
}
function Oculta(Objeto)
{
	document.getElementById(Objeto).style.display = "none";
}
function Isento()
{
	if (document.getElementById("chkIsento").checked == true)
	{
		document.getElementById("txtIe").value = "isento";
		document.getElementById("txtIe").readOnly=true;
		document.getElementById("txtIe").style.background = "#cccccc";
	}
	else
	{		
		document.getElementById("txtIe").value = "";
		document.getElementById("txtIe").readOnly=false;
		document.getElementById("txtIe").style.background = "#ffffff";				
	}
}
//###################################################################
//###################################################################
								                         //FUNÇÕES FLASH
//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}
//v1.1
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AX_RunContent(){
  var ret = AC_AX_GetArgs(arguments);
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_AX_GetArgs(args){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "pluginspage":
      case "type":
      case "src":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "data":
      case "codebase":
      case "classid":
      case "id":
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  return ret;
}
function IsStrNum(Dado)
{
	return ContidoNoDominio(Dado, " 0123456789");
}
function ContidoNoDominio(StrDado, Dominio)
{
	var i, j;

	if (StrDado == "") return false;

	for (i=0; i<StrDado.length; i++)
	{
		for (j=0; j<Dominio.length; j++)
		{
			if (StrDado.substr(i,1) == Dominio.substr(j,1)) break;
		}
		if (j >= Dominio.length) return false;
	}
	return true
}
function IsStrData(Dado)
	{
    var DiasMes = new Array(31,29,31,30,31,30,31,31,30,31,30,31);
    var Dia, Mes, Ano;
    var Result = false;

	// Pré-analisa o String:
	if (Dado != "")
	{
		if ((Dado.length == 10) && (Dado.substr(2,1) == "/") && (Dado.substr(5,1) == "/"))
		{
			// Levanta Campos:
			if (IsStrNum(Dado.substr(0,2))) Dia = Dado.substr(0,2);
			if (IsStrNum(Dado.substr(3,2))) Mes = Dado.substr(3,2);
			if (IsStrNum(Dado.substr(6,4))) Ano = Dado.substr(6,4);

			// Analisa Ano e Mês:
			if ((Ano > 0) && (Mes >= 1) && (Mes <= 12))
			{
				// Analisa Dia:
				if ((Dia >= 1) && (Dia <= DiasMes[Mes - 1]))
				{
					// Analisa os casos não-bissextos:
					if ((Mes == 2) && ((Ano%4 != 0) || (Ano%100 == 0) && (Ano%400 != 0)))
					{
						if (Dia <= 28) Result = true;
					}
					else
					{
						Result = true;
					}
				}
			}
		}
	}
	return Result;
}