$().ready(function(){$root=$("html,body"),Validation.customParams={eForm:"#main-form",hideBtnClass:"hide-btn",anchorClass:"anchor",groupedClass:"grouped",groupValDateClass:"grouped-validate-date",hideClass:"hidden",errorListClass:"error-text",errorClass:"error-input",errorListContainer:".form-group",resumeMsgCont:"#form-block-error",resumeInputCont:"#resume-errors",topOffset:120,invalidDateMsg:"Data non valida",errorOnInit:'Il campo "$" contiene un errore',sentMsgForm:"Modulo inviato. Attendi...",sentMsgFormClass:"btn btn-block submit-btn submit-btn-disabled"},$(Validation.customParams.eForm).validate({rules:{CF:/^[a-z]{6}.*[a-z]{1}$/i,CF_LENGHT:/^[a-zA-Z0-9]{16}$/,PWD_POLICY:/^(?=.*[a-zA-Z])(?=(.*\d))[0-9a-zA-Z!@#$%-_]{8,}$/,NUMERIC_PLUS:/^\d+(?:[\.\s]\d{3})*(?:,\d+)?$/},messages:{NOTEMPTY:'Campo "$" obbligatorio',INTEGER:'Il campo "$" deve contenere un numero intero',EMAIL:'Il campo "$" deve contenere una email valida',"==":'Il campo deve essere uguale a "%"',">=":'Il campo deve avere almeno "%" caratteri',"!=":'Il campo non pu&ograve; essere uguale a "%"',"<=":'Il campo accetta massimo "%" caratteri',CF:"I primi 6 caratteri e l'ultimo devono essere alfabetici",CF_LENGHT:"Il codice fiscale deve essere di 16 caratteri",PWD_POLICY:"Le regole per la password non sono rispettate",INVALID_DATE:"La data non &egrave; valida",NUMERIC:"Il campo deve essere numerico",NUMERIC_PLUS:"I decimali devono essere separati da virgola"},submit:{settings:{clear:"focusout",errorClass:Validation.customParams.errorClass,errorListClass:Validation.customParams.errorListClass,errorListContainer:Validation.customParams.errorListContainer,insertion:"prepend",trigger:["click","mouseup"]},callback:{onSubmit:function(a){return result="",formid=a.attr("id"),""!=Validation.customParams.groupValDateClass&&$.each($("."+Validation.customParams.groupValDateClass),function(){var a=[],t={};element=$(this).children().find("select"),$.each(element,function(t,e){a.push($(e).val())});var e=a.join("/");0==$.fn.validDate(e)&&(inputId=element.attr("id"),inputName=$("#"+inputId).attr("name"),inputLabel=$("#"+inputId).data("validation-label"),result+='<li><a class="'+Validation.customParams.anchorClass+'" href="#'+inputId+'">'+inputLabel+"</a></li>",t[inputName]=Validation.customParams.invalidDateMsg,$(Validation.customParams.eForm).addError(t))}),""!=result?($(Validation.customParams.resumeMsgCont).length&&$.fn.errorBox(result),!1):($(a).hasClass(Validation.customParams.hideBtnClass)&&$("#"+$(this).attr("formid")+" button[type=submit]").promise().done(function(){$(a).parent("div").css("position","relative"),$(this).css("display","none").after('<p class="'+Validation.customParams.sentMsgFormClass+'">'+Validation.customParams.sentMsgForm+'</p><div class="disable-overlay"></div>')}),void a[0].submit())},onError:function(a,t){formid=a.attr("id"),result="";for(var e in t)inputId=$("[name="+e+"]").attr("id"),inputLabel=$("#"+inputId).data("validation-label"),"undefined"!=typeof inputLabel&&(result+='<li><a class="'+Validation.customParams.anchorClass+'" href="#'+inputId+'">'+inputLabel+"</a></li>");""!=result&&$(Validation.customParams.resumeMsgCont).length&&($.fn.errorBox(result),$(Validation.customParams.resumeInputCont).on("click","."+Validation.customParams.anchorClass,function(a){a.preventDefault(),$root.animate({scrollTop:$($(this).attr("href")).offset().top-Validation.customParams.topOffset},"slow")}),$("#"+formid+" select, #"+formid+" input").click(function(){$(Validation.customParams.resumeMsgCont).addClass(Validation.customParams.hideClass),$(Validation.customParams.resumeInputCont).off()}))}}},dynamic:{settings:{trigger:"focusout",delay:500},callback:{onComplete:function(a,t){inputId=$(t).attr("id"),is_grouped=$(t).parents("."+Validation.customParams.groupedClass),is_grouped.length&&($(is_grouped).children("."+Validation.customParams.errorListClass).remove(),$(is_grouped).find("."+Validation.customParams.errorClass).removeClass(Validation.customParams.errorClass))}}},debug:!1}),$.fn.errorBox=function(a){$(Validation.customParams.resumeInputCont).html("<ul>"+a+"</ul>").promise().done(function(){$(Validation.customParams.resumeMsgCont).removeClass(Validation.customParams.hideClass),$root.animate({scrollTop:$(Validation.customParams.resumeMsgCont).offset().top-Validation.customParams.topOffset},"slow")})},$.fn.showFormError=function(a,t){var e={};inputId=$("input[name$="+a+"]").attr("id"),"undefined"==typeof t?(t=Validation.customParams.errorOnInit,t=t.replace("$",$("#"+inputId).data("validation-label"))):t=t,e[a]=t,$(Validation.customParams.eForm).addError(e)}});