!function(e){"use strict";e.fn.validateForm=function(a){a=e.extend({classValid:"js-valid",classInvalid:"js-invalid",classInvalidEmpty:"js-invalid_empty",classNotifiInvalid:"js-notifi_invalid",item:'[required="required"]:visible',icon:'<i class="ico-valid"></i>',fieldsValid:{full_name:{minLen:2},exp_year:{minLen:2,maxLen:2,year:2},exp_month:{minLen:2,maxLen:2,month:2},cvv:{maxLen:4,minLen:2,number:"d"},number:{card:"card"},password:{minLen:4,maxLen:50,password:"repeatPassword"},repeatPassword:{password:"password",minLen:4,maxLen:50},address:{minLen:2},cpf:{country:"BR"},postal_code:{postalcode:!0}},validAll:{minLen:2,maxLen:60},msg:{emptyField:validateForm.emptyField,formatField:validateForm.formatField+":{{1}}"}},a);var n={email:function(a){var n=e(a).val();return/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(n)},postalcode:function(a,n,t,r){var i=e("#country").val(),s=e(a).val();s.toUpperCase()!==s&&e(a).val(s.toUpperCase());var l=e(a).val(),o=void 0!==slv_postal_code[i]&&slv_postal_code[i];return o?(r&&!l.match(o.reg)&&window.Notify(o.message,"danger"),l.match(o.reg)):e(a).val().length>=2},minLen:function(a,n){return e(a).val().length>=n},maxLen:function(a,n){return e(a).val().length<=n},empty:function(a){return""!=e(a).val().length},number:function(a,n){var t=e(a).val(),r=t.replace(/\D+/g,"");return e(a).val(r),t==r},month:function(a,n){var t=e(a).val();return e(a).val(t.replace(/\D+/g,"")),/^(0[1-9]|1[0-2])$/.test(t)},year:function(a,n){var t=e(a).val();return e(a).val(t.replace(/\D+/g,"")),/^([1-9][0-9])$/.test(t)},card:function(e,a,n){var t=e.selectionStart,r=e.selectionEnd,i=e.value.toString(),s=i.replace(/\D+/g,""),l=i.substr(0,t),o=" "==i.substr(t-1,1)?1:0,d=l.replace(/\D+/g,""),c=(d=d.replace(/(\d{4})/g,"$& ")).length-l.length-o;return s=(s=s.replace(/(\d{4})/g,"$& ")).trim(),e.value=s,void 0!==n&&"input"!=n||e.setSelectionRange(t+c,r+c),-1!=[13,14,15,16,17,18,19,20].indexOf(s.length)},password:function(a,n){var t=e("input[name="+n+"]"),r=e(a).val();return void 0===n||"repeatPassword"==n&&0==t.val().length||r==t.val()},country:function(a,n){return e("#country").val()!=n||0!=e(a).val().length}},t=e(this);function r(t,r,i){var s=0,l=e(t).attr("name"),o=e(t).attr("type");return n.empty(t)?(void 0!==a.fieldsValid[l]?e.each(a.fieldsValid[l],(function(e,a){s+=!n[e](t,a,r,i)})):e.each(a.validAll,(function(e,a){s+=!n[e](t,a)})),void 0!==n[o]&&(s+=!n[o](t)),s):"empty"}function i(n){l(n),s(n,a.msg.emptyField),e(n).parent().addClass(a.classInvalidEmpty)}function s(n,t){e(n).parent().children("."+a.classNotifiInvalid).text(t).show()}function l(n){e(n).parent().removeClass(a.classInvalidEmpty+" "+a.classInvalid).removeClass(a.classValid).children("."+a.classNotifiInvalid).hide()}function o(n){l(n),e(n).parent().addClass(a.classValid)}function d(n){l(n);var t=a.msg.formatField,r=e(n).parent().parent().children("label").text();s(n,t=function(e){return e=(e=(e=(e=e.replace("*","")).replace(/\s{2,}/gim," ")).trim()).replace(/(:)$/gim,"")}(t=t.replace("{{1}}",r))),e(n).parent().addClass(a.classInvalid),e(n).parent().children("."+a.classNotifiInvalid).show()}return this.each((function(){e(a.item).parent().append(a.icon),t.on("keypress",a.item,(function(e){if(e.keyCode,-1===[37,39,8,46,32].indexOf(e.keyCode)){var a=this,n=r(a);return 0==n?o(a):l(a),0==n||void 0}})),t.on("keyup input paste",a.item,(function(e){var a=this,n=r(a);if(0==n?o(a):l(a),0==n)return!0})),t.on("blur",a.item,(function(a){var n=this,t=r(n,a.type,1);if(0==t?o(n):"empty"==t?i(n):d(n),"password"!=e(n).attr("name")&&"repeatPassword"!=e(n).attr("name")||e.each(e(".password_fields"),(function(a,n){e(n).trigger("keypress")})),0==t)return!0})),t.attr("novalidate","novalidate").on("submit, cart:check",(function(n){var s=0,l=!1,c=e('button[name="ads_checkout"]');return 0===e(".js-invalid_empty").length&&c.removeClass("btn-clicked"),!c.hasClass("btn-clicked")&&(c.addClass("btn-clicked"),e(t).find(a.item).each((function(a,n){var t=r(n);0==t?o(n):"empty"==t?(s++,i(n)):(s++,d(n)),1!==s||l||(l=n,function(a){var n=e(a).offset().top-100;e("body,html").stop().animate({scrollTop:n},1e3)}(n))})),0===s?(e(document).trigger({type:"form:validated",error:!1,step:void 0!==n.step&&n.step,params:n}),!1):(c.removeClass("btn-clicked"),e('[name="ads_checkout"]').removeClass("btn-processed"),e(document).trigger({type:"form:validated",error:!0,step:void 0!==n.step&&n.step,params:n}),!1))}))}))};var a={full_name:{minLen:2},exp_year:{minLen:2,maxLen:2,year:2},exp_month:{minLen:2,maxLen:2,month:2},cvv:{maxLen:4,minLen:2,number:"d"},number:{card:"card"},password:{minLen:4,maxLen:50,password:"repeatPassword"},repeatPassword:{password:"password",minLen:4,maxLen:50},address:{minLen:2},cpf:{country:"BR"},postal_code:{postalcode:!0}};e("#phone_number").hasClass("phone_mask")||(a.phone_number={minLen:6,number:"d"}),e('[name="cpf"]').length&&e('[name="cpf"]').attr("required","required"),e("#form_delivery").validateForm({fieldsValid:a})}(jQuery);