function search_cep(getCep,this_index){
  $.jGrowl('Aguarde enquanto procuramos os dados do seu endereço!');
  $.post('ajax/search_cep.php',{
      cep: getCep
    }, function(xml){
      var result=$('results > result',xml).text();
      if(result=='basico'){
        $.jGrowl('Por favor complete o seu endereço!');
        $('.fUF:eq('+this_index+')').val($('results > uf',xml).text());
        $('.fCidade:eq('+this_index+')').val($('results > cidade',xml).text());
        $('.fTipoEndereco:eq('+this_index+')').focus();
      }else if(result=='completo'){
        $('.fUF:eq('+this_index+')').val($('results > uf',xml).text());
        $('.fCidade:eq('+this_index+')').val($('results > cidade',xml).text());
        $('.fBairro:eq('+this_index+')').val($('results > bairro',xml).text());
        $('.fEndereco:eq('+this_index+')').val($('results > tipo_logradouro',xml).text()+' '+$('results > logradouro',xml).text());
        $('.fNumero:eq('+this_index+')').focus();
      }else if(result=='error'){
        $.jGrowl('Endereço não encontrado - por favor preencha os campos abaixo!');
        $('.fTipoEndereco:eq('+this_index+')').focus();
      }
    });
}
var validSegmento = function(element){
  var status = false;
  $(
    '#ingles_ef1, #ingles_ef2, #ingles_em, '+
    '#espanhol_ef1, #espanhol_ef2, #espanhol_em, '+
    '#portugues_ef1, #portugues_ef2, #portugues_em, '+
    '#outra_ef1, #outra_ef2, #outra_em'
  ).each(function(){
    $this = $(this);
    if($this.is(':checked') || status){
        status = true;
    }
    else{
        status = false;
    }
  });
  return status;
}    
      
$().ready(function() {
  $("#formContato").validate({
    onkeyup: false,
    errorPlacement: function(error, element) {
      if($(element).attr('temp'))
          fieldID = $(element).attr('temp');
      else
          var fieldID = Math.round(Math.random()*100000+1);
      if(!$("span[temp="+fieldID+"]").size()){
        element.parent("div").append("<span class=\"msg\" temp=\""+fieldID+"\"><\/span>");
      }
      $("span[temp="+fieldID+"]").html(error.attr('temp',fieldID));
      element.addClass("invalid").attr('temp',fieldID);
    },
    success:function(label){
      $("* [temp='"+label.attr('temp')+"']").removeClass("invalid");
      label.parent().remove();
    },
    rules: {
        nome: { required: true },
        sobrenome: { required: true },
        escola_tipo: { required: true },
        pessoal_cep: { required: true },
        aniversario_dia: { required: true },
        aniversario_mes: { required: true },
        aniversario_ano: { required: true },
        pessoal_celular_ddd: { required: true, minlength: 2 },
        pessoal_celular_numero: { required: true, minlength: 9 },
        pessoal_email: { required: true, email: true },
        profissional_tipo: { required: true },
        profissional_segmento: { required: true },
        profissional_cargo: { required: true },
        profissional_cargo_outro: { required: ".fOutro:checked" },
        escola_nome: { required: true },
        escola_bairro : { required: true },
        escola_cidade : { required: true },
        escola_uf : { required: true },
        escola_outra : { maxlength: 300 },
        escola_mensagem : { required: true, maxlength: 1000 }
    },
    messages: {
    	nome: "Digite seu nome",
        sobrenome: "Digite seu sobrenome",
        escola_tipo: "Selecione o tipo da instituição",
        pessoal_cep: "Digite o seu cep",
        aniversario_dia: "Escolha o dia do seu aniversário",
        aniversario_mes: "Escolha o mês do seu aniversário",
        aniversario_ano: "Escolha o ano do seu aniversário",
        pessoal_celular_ddd: "Digite o código DDD do seu celular",
        pessoal_celular_numero: "Digite o número do seu celular",
        pessoal_email: { required: "Digite seu e-mail", email: "E-mail inválido" },
        profissional_tipo: "Selecione um tipo de instituição",
        profissional_segmento: "Selecione um segmento",
        profissional_cargo: "Selecione um cargo",
        profissional_cargo_outro: "Digite o cargo",
        escola_nome: "Digite o nome da escola",
        escola_bairro : "Digite o bairro",
        escola_cidade : "Digite a cidade",
        escola_uf : "Digite a UF",
        escola_outra : "Máximo de 300 caracteres",
        escola_mensagem : { required: "Digite uma mensagem", maxlength: "Máximo de 1000 caracteres" }
    }
  });
  $(".fCep").mask("99999999",{placeholder:""});
  $(".fTel").mask("9999-9999",{placeholder:""});
  $("#PessoalCpf").mask("999.999.999-99",{placeholder:""});

  // para avançar ao proximo campo
  $('* :input').keyup(function(){
      var this_index = $('*:input').index(this);
      if( $(this).valid() && $(this).attr('maxlength') == $(this).val().length )
         $('*:input').get(this_index+1).focus();
    });
});

$(document).ready(function() {

  $(".fCep").blur(function(){
    var this_index = $(".fCep").index(this);
    if($(".fCep:eq("+this_index+")").val().length == 8) search_cep($(".fCep:eq("+this_index+")").val(),this_index);
  });
  
  var dados_escola_cont = 2;
  var template_form = $('.escola:first').clone(true);
  $('.inserir_nova_escola').click(function(){
    
    var new_form = $(template_form).clone();
    $(this).parent().before(new_form);
    
    $('.escola:last > legend').html( $('.escola:last > legend').html() + ' '+ dados_escola_cont );
    $('.escola:last').show('slow', function(){
        //troca o [x] para [x+1]
        $(this).find('input').each(function(i) {
            var currentElem= $(this);
            var re = new RegExp("\\[1\\]", 'g');
            if(currentElem.attr('name')!=null){
               currentElem.attr('name', currentElem.attr('name').replace(re,'['+dados_escola_cont+']'));
            }
        });
     
    });
    
    //Add Mascaras
    $(".fCep").mask("99999999",{placeholder:""});
    $(".fTel").mask("9999-9999",{placeholder:""});

    //Add função busca por cep
    $(".fCep").blur(function(){
        var this_index = $(".fCep").index(this);
        if($(".fCep:eq("+this_index+")").val().length == 8) search_cep($(".fCep:eq("+this_index+")").val(),this_index);
     });

     //Add validação aos novos campos
    $("input[name='profissional_nome_escola["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite o nome da escola" }
    });

    $("input[name='profissional_cep["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite o CEP" }
    });

    $("input[name='profissional_cep["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite o CEP" }
    });

    $("input[name='profissional_endereco["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite o Endereço" }
    });
     $("input[name='profissional_numero["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite o número" }
    });
     $("input[name='profissional_bairro["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite o bairro" }
    });
     $("input[name='profissional_cidade["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite o cidade" }
    });
     $("input[name='profissional_uf["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite a UF" }
     });
     $("input[name='profissional_telefone_ddd["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite o código DDD do telefone" }
     });

     $("input[name='profissional_telefone_numero["+dados_escola_cont+"]']").rules("add", {
        required: ".fParticular[name='profissional_tipo_instituicao["+dados_escola_cont+"]']:unchecked",
        messages: { required: "Digite o número do telefone" }
     });
    
        dados_escola_cont++;  
  });

  $('.remover_ultima_escola').click(function(){
    if($('.escola').size()>1 && window.confirm("Deseja realmente remover?"))
        $('.escola:last').remove();
  });

});


