var addMask = function(){
    var $fone = $('.fFone');
    var $dateBR = $('.fDateBR');
    var $cep = $('.fCep');
    var $cpf = $('.fCpf');
    
    if($fone.size()){
        $fone.mask('99-99999999');
    }
    if($dateBR.size()){
        $dateBR.mask('99/99/9999');
    }
    if($cep.size()){
        $cep.mask('99999-999');
    }
    if($cpf.size()){
        $cpf.mask('999.999.999-99');
    }
}
$(document).ready(function(){
    $.validator.setDefaults({
         errorPlacement: function(error, element) {
            var fieldID;

            if($(element).attr('temp'))
                fieldID = $(element).attr('temp');
            else
                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();
        }
    });
    $('form').each(function(){
        var $form = $(this);
        switch ($form.attr('id')) {
            case 'formNLAjax':
                $(this).validate({
                    errorPlacement: function(error,element){
                        //alert(error.text());
                    },
                    submitHandler: function(form)
                    {
                        $.post(
                          $form.attr('action'),
                          $form.serialize(),
                          function(data){
                              if($.trim(data)=='ok'){
                                  alert('seu e-mail foi cadastrado com sucesso!');
                              }
                              else{
                                  alert('seu e-mail ja esta cadastrado em nosso sistema!');
                              }
                          }
                        );
                        return false;
                    },
                    onfocusout: false,
                    onkeyup: false,
                    focusCleanup: false
                });
                break;
            default:
                $(this).validate({});
                break;
        }
    });
    $('[name=igual_entrega]').change(function(){
        var $this = $(this);
        var $fieldset = $this.parent().parent('fieldset');
        var $input = $fieldset.find(':input').filter('[name!='+$this.attr('name')+']').filter('[name!="ent_cep_display"]').filter('[name!="ent_estado_display"]').filter('[name!="ent_cidade_display"]').filter('[name!="ent_bairro_display"]');
        if($this.is(':checked')){
            $input.attr('disabled',true).val('');
            $input.parent().hide('slow');
        }
        else{
            $input.parent().show('slow');
            $input.removeAttr('disabled').valid();
        }
    });
    addMask();
});
