!function(a){"use strict";var e=a("form#boombox-login"),s=a("form#boombox-register"),t=a("form#boombox_forgot_password"),o=a("form#boombox_reset_password"),r=null,n=null,c=function(a,e){a.find(".captcha").attr("src",ajax_auth_object.captcha_file_url+"?"+Math.random()+"&type="+e).closest(".captcha-container").removeClass("loading"),a.find(".bb-captcha-field").val("")},i=function(a,e,s,t){var o,r,n=a.val(),c=e&&e.length?e.val():n,i="bb-pass-strength",l='<div class="pass-progress-bar"></div>';if(n){switch(t=t.concat(wp.passwordStrength.userInputBlacklist()),r='<span class="pass-msg-title">'+ajax_auth_object.messages.password_strength+":</span>",wp.passwordStrength.meter(n,t,c)){case-1:o=pwsL10n.unknown,i+=" bb-weak-pass";break;case 2:o=pwsL10n.bad,i+=" bb-weak-pass";break;case 3:o=pwsL10n.good,i+=" bb-good-pass";break;case 4:o=pwsL10n.strong,i+=" bb-strong-pass";break;case 5:o=ajax_auth_object.messages.password_mismatch,r="",l="",i+=" bb-mismatch-pass";break;default:o=pwsL10n.short,i+=" bb-short-pass"}s.html('<div class="'+i+'"><p class="pass-status-msg">'+r+'<span class="pass-msg-value"> '+o+"</span></p>"+l+"</div>")}else s.empty()},l=function(o){o.lightModal({beforeShow:function(){var o=a(this).hasClass("entry-nsfw");if(e.length>0&&(o&&e.closest(".authentication").addClass("is-nsfw-auth"),e[0].reset(),e.find(".error").removeClass("error"),e.find(".status-msg").html(""),ajax_auth_object.enable_login_captcha))if("image"===ajax_auth_object.captcha_type)c(e,e.attr("action"));else if("google"===ajax_auth_object.captcha_type){var l=e.find("#boombox-login-captcha");null===r?r=grecaptcha.render(l.attr("id"),{sitekey:l.data("boombox-sitekey"),theme:"light"}):grecaptcha.reset(r)}else if("google_v3"===ajax_auth_object.captcha_type){l=e.find("#boombox-login-captcha");grecaptcha.ready((function(){grecaptcha.execute(l.data("boombox-sitekey")).then((function(a){document.getElementById("g-recaptcha-response-login").value=a}))}))}if(s.length>0&&(o&&e.closest(".authentication").addClass("is-nsfw-auth"),s[0].reset(),i(a('[name="signonpassword"]'),!1,a("#bb-register-pass-strength-result"),[]),s.find(".error").removeClass("error"),s.find(".status-msg").html(""),ajax_auth_object.enable_registration_captcha))if("image"===ajax_auth_object.captcha_type)c(s,s.attr("action"));else if("google"===ajax_auth_object.captcha_type){var g=s.find("#boombox-register-captcha");null===n?n=grecaptcha.render(g.attr("id"),{sitekey:g.data("boombox-sitekey"),theme:"light"}):grecaptcha.reset(n)}else"google_v3"===ajax_auth_object.captcha_type&&grecaptcha.ready((function(){grecaptcha.execute(l.data("boombox-sitekey")).then((function(a){document.getElementById("g-recaptcha-response-register").value=a}))}));t.length>0&&(t[0].reset(),t.find(".error").removeClass("error"),t.find(".status-msg").html(""))}})};ajax_auth_object.trigger_action&&"-1"!=a.inArray(ajax_auth_object.trigger_action,["login","register","forgot-password","fp","reset-password","rp"])&&a(window).on("load",(function(){!function(e){switch(e){case"login":var s='.js-authentication[href="#sign-in"]';break;case"register":s='.js-authentication[href="#registration"]';break;case"forgot-password":case"fp":s='.js-authentication[href="#forgot-password"]';break;case"reset-password":case"rp":s='.js-authentication[href="#reset-password"]';break;default:s=!1}s&&a(s).length>0&&a(s).first().trigger("click")}(ajax_auth_object.trigger_action)})),a.validator.addMethod("loginRegex",(function(a,e){return this.optional(e)||/^[a-z0-9\-\_]+$/i.test(a)})),l(a(".js-authentication")),a("body").on("bbNewContentLoaded",(function(a,e){l(e.find(".js-authentication"))})),e.length>0&&e.validate({errorPlacement:function(a,e){}}),s.length>0&&(s.validate({rules:{signonusername:{loginRegex:!0},signongdpr:{required:!0},password2:{equalTo:"#signonpassword"}},invalidHandler:function(e,s){console.log(a(this))},errorPlacement:function(a,e){},highlight:function(e,s){a(e).addClass(s),a(e).is(":checkbox")&&a(e).closest("div").addClass("bb-chkb-err")},unhighlight:function(e,s){a(e).removeClass(s),a(e).is(":checkbox")&&a(e).closest("div").removeClass("bb-chkb-err")}}),s.on("keyup",'[name="signonpassword"]',(function(e){i(a('[name="signonpassword"]'),!1,a("#bb-register-pass-strength-result"),[])}))),t.length>0&&t.validate({errorPlacement:function(a,e){}}),o.length&&(o.validate({rules:{rppassword:{required:!0},rpconfirmpassword:{required:!0,equalTo:'[name="rppassword"]'}},errorPlacement:function(a,e){}}),o.on("keyup",'[name="rppassword"], [name="rpconfirmpassword"]',(function(){i(a('[name="rppassword"]'),a('[name="rpconfirmpassword"]'),a("#bb-rp-pass-strength-result"),[])}))),e.on("submit",(function(e){var s=a(this),t=s.parent().find("p.status-msg");if(!s.valid())return t.removeClass("msg-success msg-info").addClass("msg-error").html(ajax_auth_object.invalid_message).show(),!1;var o=s.find('[name="useremail"]').val(),n=s.find('[name="password"]').val(),i=s.find('[name="rememberme"]'),l=s.find('[name="security"]').val(),g=s.closest(".authentication").hasClass("is-nsfw-auth")?ajax_auth_object.nsfw_redirect_url:ajax_auth_object.login_redirect_url,m={action:"boombox_ajax_login",useremail:o,password:n,security:l,redirect:g};i.length&&(m.remember=i.is(":checked")?1:0),ajax_auth_object.enable_login_captcha&&("image"===ajax_auth_object.captcha_type?m.captcha=s.find('[name="captcha-code"]').val():"google"!==ajax_auth_object.captcha_type&&"google_v3"!==ajax_auth_object.captcha_type||(m.captcha=s.find('[name="g-recaptcha-response"]').val())),t.removeClass("msg-success msg-error").addClass("msg-info").html(ajax_auth_object.loading_message).show(),a.post(ajax_auth_object.ajaxurl,m,(function(a){1==a.success?(t.removeClass("msg-error msg-info").addClass("msg-success").html(a.data.message),window.location.href=g):(t.removeClass("msg-success msg-info").addClass("msg-error").html(a.data.message),ajax_auth_object.enable_login_captcha&&("image"===ajax_auth_object.captcha_type?c(s,s.attr("action")):"google"===ajax_auth_object.captcha_type&&grecaptcha.reset(r)))})),e.preventDefault()})),s.on("submit",(function(e){var s=a(this),t=s.parent().find("p.status-msg");if(!s.valid())return t.removeClass("msg-success msg-info").addClass("msg-error").html(ajax_auth_object.invalid_message).show(),!1;var o=s.find('[name="signonusername"]').val(),r=s.find('[name="signonemail"]').val(),i=s.find('[name="signonpassword"]').val(),l=s.find('[name="signongdpr"]'),g=s.find('[name="signonsecurity"]').val(),m=s.closest(".authentication").hasClass("is-nsfw-auth")?ajax_auth_object.nsfw_redirect_url:ajax_auth_object.register_redirect_url,h={action:"boombox_ajax_register",username:o,useremail:r,password:i,security:g,redirect:m};l.length&&(h.gdpr=l.is(":checked")?1:0),ajax_auth_object.enable_registration_captcha&&("image"===ajax_auth_object.captcha_type?h.captcha=s.find('[name="signoncaptcha"]').val():"google"!==ajax_auth_object.captcha_type&&"google_v3"!==ajax_auth_object.captcha_type||(h.captcha=s.find('[name="g-recaptcha-response"]').val())),t.removeClass("msg-success msg-error").addClass("msg-info").html(ajax_auth_object.loading_message).show(),a.post(ajax_auth_object.ajaxurl,h,(function(a){1==a.success?(t.removeClass("msg-error msg-info").addClass("msg-success").html(a.data.message),0==(a.data.need_activation||!1)?window.location.href=m:s[0].reset()):(t.removeClass("msg-success msg-info").addClass("msg-error").html(a.data.message),ajax_auth_object.enable_registration_captcha&&("image"===ajax_auth_object.captcha_type?c(s,s.attr("action")):"google"===ajax_auth_object.captcha_type&&grecaptcha.reset(n)))})),e.preventDefault()})),t.on("submit",(function(e){var s=a(this),t=s.parent().find("p.status-msg");if(!s.valid())return t.removeClass("msg-success msg-info").addClass("msg-error").html(ajax_auth_object.invalid_message).show(),!1;var o=s.find('[name="userlogin"]').val(),r=s.find('[name="forgotsecurity"]').val();return t.removeClass("msg-success msg-error").addClass("msg-info").html(ajax_auth_object.loading_message).show(),a.post(ajax_auth_object.ajaxurl,{action:"boombox_ajax_forgot_password",userlogin:o,security:r},(function(a){a.success?(t.removeClass("msg-error msg-info").addClass("msg-success").html(a.data.message),s.remove()):t.removeClass("msg-success msg-info").addClass("msg-error").html(a.data.message)})),e.preventDefault(),!1})),o.on("submit",(function(e){var s,t,o,r,n,c=a(this),i=c.parent().find("p.status-msg");return c.valid()?(s=c.find('[name="rpuserlogin"]').val(),t=c.find('[name="rppassword"]').val(),o=c.find('[name="rpconfirmpassword"]').val(),r=c.find('[name="resetpasswordsecurity"]').val(),n=c.find('[name="rpkey"]').val(),i.removeClass("msg-success msg-error").addClass("msg-info").html(ajax_auth_object.loading_message).show(),a.post(ajax_auth_object.ajaxurl,{action:"boombox_ajax_reset_password",userlogin:s,password:t,confirm:o,security:r,rpkey:n},(function(a){a.success?(i.removeClass("msg-error msg-info").addClass("msg-success").html(a.data.message),window.location.href=ajax_auth_object.reset_password_redirect_url):i.removeClass("msg-success msg-info").addClass("msg-error").html(a.data.message)})),e.preventDefault(),!1):(i.removeClass("msg-success msg-info").addClass("msg-error").html(ajax_auth_object.invalid_message).show(),!1)})),a("body").on("click",".auth-refresh-captcha",(function(e){var s=a(this).closest("form"),t=s.attr("action");return c(s,t),!1}))}(jQuery);