$().ready(function(){

		$('#selTipo').change(function(){
			if($('#selTipo option:selected').val() == 'juridica')
			{
				$('#frmFacaInscricao').attr('action', 'inscricao-juridica.php');
			}
			else
			{
				$('#frmFacaInscricao').attr('action', 'inscricao-fisica.php');			
			}
		});


		jQuery("#selUF").change(function()
		{
			jQuery("#selCidade").empty().append('<option value="">Selecione...</option>');
			
			if(jQuery(this).val().length > 0)
			{
				var UnidadeFederativaID = jQuery(this).val();
				
				jQuery("#selCidade").empty().append('<option value="">Carregando...</option>');
				
				jQuery.ajax(
				{
					type: "POST",
					url: "acao/AjaxOutros.php",
					data: {"Acao":"CarregarMunicipio","UnidadeFederativaID":UnidadeFederativaID},
					dataType: "json",
					complete: function(resposta,status)
					{
						var retorno = eval(resposta.responseText)[0];
						
						jQuery("#selCidade").empty().append('<option value="">Selecione...</option>');
						
						if(!retorno.erro)
						{
							jQuery("#selCidade").attr('disabled', false);
							jQuery(retorno.municipios).each(function(indice)
							{
								jQuery("#selCidade").append('<option value="'+retorno.municipios[indice].MunicipioID+'">'+unescape(retorno.municipios[indice].Descricao)+'</option>');
							});
						}
					}
				});
			}
		});
	

		$('#selParticipantes').change(function()
		{
			var numVezes = $('#selParticipantes option:selected').val();
			var numVezesMaximo = $('#selParticipantes option').length - 1;
			var itemCorrente;
			var valoresAnterioresNome = new Array();
			valoresAnterioresEmail = new Array();
			$("input[name='txtNome[]']").each(function(){
				valoresAnterioresNome.push($(this).val());
			});
			$("input[name='txtEmail[]']").each(function(){
				valoresAnterioresEmail.push($(this).val());
			});
			
			var itemParticipante = '<li><h2>Participante CONT</h2><label for="txtNome[]">Nome</label><input type="text" value="VALUE_NOME" id="txtNomeParticipanteCONT" name="txtNome[]" /><label for="txtEmail[]">Email</label><input type="text" value="VALUE_EMAIL" id="txtEmailParticipanteCONT" name="txtEmail[]" /></li>';
			
			$('.lista-participante').empty();
			for(var cont = 1; cont <= numVezes; cont++)
			{
				itemCorrente =  itemParticipante.replace(/CONT/, cont);
				itemCorrente =  itemCorrente.replace(/CONT/, cont);
				itemCorrente =  itemCorrente.replace(/CONT/, cont);
				if(valoresAnterioresNome[cont - 1] != null)
				{
					itemCorrente =  itemCorrente.replace(/VALUE_NOME/, valoresAnterioresNome[cont - 1]);
				}
				else
				{
					itemCorrente =  itemCorrente.replace(/VALUE_NOME/, '');
				}
				if(valoresAnterioresEmail[cont - 1] != null)
				{
					itemCorrente =  itemCorrente.replace(/VALUE_EMAIL/, valoresAnterioresEmail[cont - 1]);
				}
				else
				{
					itemCorrente =  itemCorrente.replace(/VALUE_EMAIL/, '');
				}
				$('.lista-participante').append(itemCorrente);
			}
		});

		//Mascaras nos campos
		$('#txtCpf').mask('999.999.999-99');
		$('#txtCnpj').mask('99.999.999/9999-99');
		$('#txtRg').numeric();
		$('#txtCep').mask('99999-999');
		
		
		$('#txtTelefone').mask('9999-9999');
		$('#txtCelular').mask('9999-9999');
		
		$('#txtDDD-1').mask('99');
		$('#txtDDD-2').mask('99');
			
	 	$("#frmInscricaoFisica").validate(
		{
			focusInvalid: false,
			errorClass: "erro",				
			errorContainer: "#alerta",
			errorElement: "span",			
			errorLabelContainer: "#alerta",
			success: "valido",
			errorPlacement: function(error, element)	
			{
				error.appendTo(element);
			},				
			highlight: function(element, errorClass)
			{
				$(element).parent().prev().addClass(errorClass);
			},		
			unhighlight: function(element, errorClass)
			{
				$(element).parent().prev().removeClass(errorClass);
			},
			rules: 
			{
				txtNome: 
				{
					required: true
				},
				txtCracha: 
				{
					required: true
				},
				txtCpf: 
				{
					required: true,
					remote:  
					{
						url: "acao/Inscricao.php?acao=cpf",
						type: "post",
						data: { cpf : function()
						{ 
							return $('#txtCpf').val(); 
						}}
   					},
   					cnpf : true
				},
				txtRg: 
				{
					required: true,
					remote:  
					{
						url: "acao/Inscricao.php?acao=rg",
						type: "post",
						data: { rg : function()
						{ 
							return $('#txtRg').val(); 
						}}
   					}
				},
				txtEndereco:
				{
					required: true
				},
				txtNumero:
				{
					required: true
				},
				txtCep:
				{
					required: true
				},
				txtEmail: 
				{
					email: true,
					required: true
				},
				selUF:
				{
					required: true
				},
				selCidade:
				{
					required: true
				},
				txtTelefone:
				{
					required:function(){
						if($('#txtCelular').val().length > 0)
						{
							return false;
						} 
						else
						{
							return true;
						}
					}
				},
				txtCelular:
				{
					required:function(){
						if($('#txtTelefone').val().length > 0)
						{
							return false;
						} 
						else
						{
							return true;
						}
					}	
				},
				rdAssociado:
				{
					required : true
				},
				rdRecibo:
				{
					required : true	
				}
			},
			messages:
			{
				txtNome:
				{
					required: 'Cadastre seu nome completo!<br />'
				},
				txtCracha:
				{
					required: 'Cadastre um nome para o crachá!<br />'
				},
				txtCpf: 
				{
					required: 'Cadastre seu CPF!<br />',
					remote: 'CPF já cadastrado!<br />',
					cnpf : 'CPF não válido!<br />'
				},
				txtRg: 
				{
					required: 'Cadastre seu RG!<br />',
					remote: 'RG já cadastrado!<br />'
				},
				txtEndereco:
				{
					required: 'Cadastre seu endereço!<br />'
				},
				txtNumero:
				{
					required: 'Cadastre seu número!<br />'
				},
				txtCep:
				{
					required: 'Cadastre seu cep!<br />'
				},
				txtEmail:
				{
					required: 'Cadastre um e-mail para contato!<br />',
					email: 'E-mail cadastrado não é válido!<br />'
				},
				selUF:
				{
					required: 'Selecione um estado!<br />'
				},
				selCidade:
				{
					required: 'Se você selecionou um estado, deve selecionar uma cidade!<br />'
				},
				txtTelefone:
				{
					required: 'Cadastre ao menos um telefone para contato!<br />'
				},
				txtCelular:
				{
					required: 'Cadastre ao menos um telefone para contato!<br />'
				},
				rdAssociado:
				{
					required: 'Selecione se deseja, ou não, receber recibo!<br />'
				},
				rdRecibo:
				{
					required: 'Selecione se você é, ou não, associado!<br />'	
				}
			}
		});
		
		
		
		$("#frmInscricaoJuridica").validate(
		{
			submitHandler: function(){
				var sucesso;
				$("input[name='txtNome[]']").each(function(){
					
					if($(this).val().length > 0)
					{
						sucesso = 1;
					}
				});
				if(sucesso == 1)
				{
					$('#alerta2').empty();
					$('#alerta2').append('Enviando dados...');
					$(form).submit();
				}
				else
				{
					$('#alerta2').empty();
					$('#alerta2').append('Cadastre as informações de no mínimo um participante!<br />');	
				}
			},
			focusInvalid: false,
			errorClass: "erro",				
			errorContainer: "#alerta",
			errorElement: "span",			
			errorLabelContainer: "#alerta",
			success: "valido",
			errorPlacement: function(error, element)	
			{
				error.appendTo(element);
			},				
			highlight: function(element, errorClass)
			{
				$(element).parent().prev().addClass(errorClass);
			},		
			unhighlight: function(element, errorClass)
			{
				$(element).parent().prev().removeClass(errorClass);
			},
			rules: 
			{
				txtRazao: 
				{
					required: true
				},
				txtCnpj: 
				{
					required: true,
					cnpj : true
				},
				txtEndereco:
				{
					required: true
				},
				txtNumero:
				{
					required: true
				},
				txtCep:
				{
					required: true
				},
				selUF:
				{
					required: true
				},
				selCidade:
				{
					required: true
				},
				txtTelefone:
				{
					required: true
				},
				rdAssociado:
				{
					required : true
				},
				rdRecibo:
				{
					required : true	
				},
				selParticipantes:
				{
					required : true
				},
				txtNomeParticipante1:
				{
					required:true
				},
				txtEmailParticipante1:
				{
					required:true
				}
			},
			messages:
			{
				txtRazao:
				{
					required: 'Cadastre a Razão Social de sua empresa!<br />'
				},
				txtCnpj: 
				{
					required: 'Cadastre seu Cnpj!<br />',
					cnpj : 'CNPJ não é válido <br />'
				},
				txtEndereco:
				{
					required: 'Cadastre seu endereço!<br />'
				},
				txtNumero:
				{
					required: 'Cadastre seu número!<br />'
				},
				txtCep:
				{
					required: 'Cadastre seu cep!<br />'
				},
				selUF:
				{
					required: 'Selecione um estado!<br />'
				},
				selCidade:
				{
					required: 'Se você selecionou um estado, deve selecionar uma cidade!<br />'
				},
				txtTelefone:
				{
					required: 'Cadastre um telefone para contato!<br />'
				},
				rdAssociado:
				{
					required: 'Selecione se deseja, ou não, receber recibo!<br />'
				},
				rdRecibo:
				{
					required: 'Selecione se sua empresa é, ou não, associada!<br />'	
				},
				selParticipantes:
				{
					required : 'Selecione e cadastre o número de participantes<br />'
				},
				txtNomeParticipante1:
				{
					required: 'Cadastre um participante!<br />'
				},
				txtEmailParticipante1:
				{
					required: 'Cadastre um participante!<br />'
				}
			}
		});
});