/**
 * @author Gibran (gibran@brivia.com.br)
 */

function Cadastro()
{
	if ($("#frmCadastro").length > 0)
	{
		
		if($("#selPais").val() == 1 && $("#PessoaID").val() == "")
		{
			carregarComboUnidadeFederativa($("#selPais").val());		
		}
		
		$("#selEstado").change(function(){
			carregarComboMunicipio($(this).val());
		});
	
		function carregarComboMunicipio(UnidadeFederativaID)
		{
			if(UnidadeFederativaID.length > 0)
			{
				$("#txtCidade").attr({"disabled":true});
				$("#txtCidade").html('<option value="">Carregando...</option>');
				
				$.ajax(
				{
					type: "POST",
					url: "acao/municipio.php",
					data: {acao:"Pesquisar",UnidadeFederativaID:UnidadeFederativaID},
					dataType: "json",
					success: function(ColecaoMunicipio)
					{
						if(ColecaoMunicipio.length > 0)
						{
							try
							{
								for(indice in ColecaoMunicipio)
								{
									$("#txtCidade").append('<option value="'+unescape(ColecaoMunicipio[indice].ID)+'">'+unescape(ColecaoMunicipio[indice].NomePT)+'</option>');
								}
								$("#txtCidade").prepend('<option value="">Selecione</option>');
								$("#txtCidade option:eq(1)").remove();
								$("#txtCidade").attr({"disabled":false});					
							}
							catch(e)
							{
								$("#txtCidade").html('<option value="">Selecione</option>');
								$("#txtCidade").attr({"disabled":false});
							}
						}
						else
						{
							$("#txtCidade").html('<option value="">Selecione</option>');
							$("#txtCidade").attr({"disabled":false});
						}
					}
				});
			}
			else
			{
				$("#txtCidade").html('<option value="">Selecione</option>');
			}
		}
	
		// CONTROLE
		
		$("#txtCpf").numeric();
		$("#txtTelefoneDdd").numeric();
		$("#txtNumero").numeric();
		$("#txtCep").numeric();
		
		// MASCARAS
		
		$("#txtCpf").mask("999.999.999-99");
		$("#txtTelefoneNumero").mask("99-9999.9999");
		$("#txtCep").mask("99999-999");
		
		// VALIDACAO DO FORMULARIO DE CADASTRO
		$("#frmCadastro").validate({
			
			errorClass: "erro",
			errorElement: "span",
			errorPlacement: function(error, element)
			{
				error.appendTo( $(".alerta") );
			},
			rules: 
			{
				txtNomeCompleto:
				{
					required: true
				}, 
				selSexo:
				{
					required: true
				},
				selOcupacao:
				{
					required: true
				},
				txtCpf:
				{
					required: true,
					cnpf: true,
					remote : "acao/verificaCadastro.php?PessoaID="+$("#PessoaID").val()
					
				},
				txtEmail:
				{
					required: true,
					email: true,
					remote: "acao/verificaCadastro.php?PessoaID="+$("#PessoaID").val()
				},
				txtTelefoneNumero:
				{
					required: true
				},
				txtEndereco:
				{
					required: true
				},
				txtNumero:
				{
					required: true
				},
				txtBairro:
				{
					required: true
				},
				txtCep:
				{
					required: true
				},
				txtUf:
				{
					required: true
				},
				txtCidade:
				{
					required: true
				},
				pwdSenha:
				{
					required: function(){return !$("#PessoaID").val().length > 0;}
				},
				pwdRepitaSenha:
				{
					required: function(){return !$("#PessoaID").val().length > 0;},
					equalTo: "#pwdSenha"
				},
				radSapato:
				{
					required: true
				}
			},
			messages: 
			{
				txtNomeCompleto: 
				{
					required: "Informe o nome completo"
				}, 
				txtCpf: 
				{
					required: "Informe o CPF",
					cnpf: "CPF Inv&aacute;lido",
					remote: "CPF j&aacute; cadastrado!"
				}, 
				selSexo: 
				{
					required: "Informe o sexo"
				},
				selOcupacao:
				{
					required: "Informe a ocupa&ccedil;&atilde;o"
				}, 
				txtEmail: 
				{
					required: "Informe o e-mail",
					email: "Email inv&aacute;lido",
					remote: "Email j&aacute; Cadastrado"
					
				}, 
				txtTelefoneDdd: 
				{
					required: "Informe o c&oacute;digo DDD"
				}, 
				txtTelefoneNumero: 
				{
					required: "Informe o telefone"
				}, 
				txtEndereco: 
				{
					required: "Informe o endere&ccedil;o"
				}, 
				txtNumero: 
				{
					required: "Informe o n&uacute;mero"
				}, 
				txtBairro: 
				{
					required: "Informe o bairro"
				}, 
				txtCep: 
				{
					required: "Informe o CEP"
				}, 
				txtUf: 
				{
					required: "Informe o estado"
				}, 
				txtCidade: 
				{
					required: "Informe a cidade"
				}, 
				pwdSenha: 
				{
					required: "Informe a senha"
				}, 
				pwdRepitaSenha: 
				{
					required: "Repita a senha",
					equalTo: " Confirma&ccedil;&atilde;o de senha inv&aacute;lida"
				}, radSapato: 
				{
					required: "Selecione um cal&ccedil;ado"
				}
			}
		});
		
		
		/**
		 * Destaca o calçado selecionado
		 
		$(".rad-sapato").click(function(){
			$('input[regra=radSapato]').each(function(){ 
				$(this).attr("class", "");
			});
			
			$("#radSapato"+$(this).val()).attr("class", "ativo-sapato");
		});
		*/
	}
}

