1 line
14 KiB
JavaScript
1 line
14 KiB
JavaScript
!function(){"use strict";var e={n:function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,{a:r}),r},d:function(t,r){for(var o in r)e.o(r,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:r[o]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t=window.ctEvents,r=e.n(t),o=window.ctFrontend;var n=function(e,t){let r=function(e){var t=jQuery();return[...e.querySelectorAll("input")].map(function(e){t=t.add(e)}),t}(t);if("object"==typeof grecaptcha)grecaptcha.ready(function(){grecaptcha.execute(WFLSVars.recaptchasitekey,{action:"login"}).then(function(t){var o=jQuery("#wfls-captcha-token");o.length?o.val(t):r.length&&((o=jQuery('<input type="hidden" name="wfls-captcha-token" id="wfls-captcha-token" />')).val(t),r.parent().append(o)),"function"==typeof e&&e(!0)})});else{var o=jQuery("#wfls-captcha-token");o.length?o.val("grecaptcha-missing"):r.length&&((o=jQuery('<input type="hidden" name="wfls-captcha-token" id="wfls-captcha-token" />')).val("grecaptcha-missing"),r.parent().append(o)),"function"==typeof e&&e(!0)}};const c=function(e,t){return!(!window.WPDEF||window.turnstile)&&(function(e,t){"v3_recaptcha"!=WPDEF.options.version?"v2_checkbox"!=WPDEF.options.version&&"v2_invisible"!=WPDEF.options.version||[...t.querySelectorAll('div[id^="wpdef_recaptcha_"]')].forEach(function(t){if(""!==t.innerHTML.trim())return;const r={sitekey:WPDEF.options.sitekey,theme:WPDEF.options.theme,size:WPDEF.options.size,callback:function(){"function"==typeof e&&e(!0)}};grecaptcha.render(t.id,r)}):grecaptcha.ready(function(){grecaptcha.execute(WPDEF.options.siteKey,{action:"WPDEF_reCaptcha"}).then(function(t){document.querySelectorAll(".g-recaptcha-response").forEach(function(e){e.value=t}),"function"==typeof e&&e(!0)})})}(function(){return e()},t),!0)},a=function(e){[...e.querySelectorAll(".g-recaptcha, .anr_captcha_field")].map(function(e){e.classList.contains("anr_captcha_field")?grecaptcha.reset(parseFloat(e.firstElementChild.id.replace("anr_captcha_field_",""))-1):grecaptcha.reset(e.gID)})},i=function(e){return new Promise(function(t){(function(e,t){return!(!window.WFLSVars||!parseInt(WFLSVars.useCAPTCHA)||(n(function(){return e()},t),0))})(t,e)||c(t,e)||t()})};var s=window.jQuery,l=e.n(s);const u=function(e){const t=function(){var t=e.closest("form");!function(e,t){var r=l()(e).find(".woocommerce-password-strength");""===l()(t).val()?(r.hide(),l()(document.body).trigger("wc-password-strength-hide")):0===r.length?(l()(t.nextElementSibling).after('<div class="woocommerce-password-strength" aria-live="polite"></div>'),l()(document.body).trigger("wc-password-strength-added")):(r.show(),l()(document.body).trigger("wc-password-strength-show"))}(t,e);let r=function(e,t){let r=l()(e).find(".woocommerce-password-strength"),o=l()(e).find(".woocommerce-password-hint"),n='<small class="woocommerce-password-hint">'+wc_password_strength_meter_params.i18n_password_hint+"</small>",c=wp.passwordStrength.meter(l()(t).val(),wp.passwordStrength.userInputDisallowedList()),a="";if(r.removeClass("short bad good strong"),o.remove(),r.is(":hidden"))return c;switch(c<wc_password_strength_meter_params.min_password_strength&&(a=" - "+wc_password_strength_meter_params.i18n_password_error),c){case 0:r.addClass("short").html(pwsL10n.short+a),r.after(n);break;case 1:case 2:r.addClass("bad").html(pwsL10n.bad+a),r.after(n);break;case 3:r.addClass("good").html(pwsL10n.good+a);break;case 4:r.addClass("strong").html(pwsL10n.strong+a);break;case 5:r.addClass("short").html(pwsL10n.mismatch)}return c}(t,e),o=l()(t).find('button[name="wp-submit"]');e.value.length>0&&r<wc_password_strength_meter_params.min_password_strength&&-1!==r?o.attr("disabled","disabled").addClass("disabled"):o.prop("disabled",!1).removeClass("disabled")};e.addEventListener("keyup",t),e.addEventListener("change",t)},d=function(e,t){const r=t.querySelector('[name="validate_2fa_form"]');if(!r)return!1;let o="";e.parentNode.querySelector('[name="validate_2fa_form"]')&&(o=e.parentNode.querySelector('[id="authcode"]').value,e.parentNode.querySelector('[name="validate_2fa_form"]').remove()),e.insertAdjacentElement("beforebegin",r),r.querySelector('[id="authcode"]').value=o;let n=r.querySelector('input.authcode[inputmode="numeric"]'),c=(null==n?void 0:n.dataset.digits)||0;if(n){let e=!1;n.addEventListener("input",function(){let t=this.value.replace(/[^0-9 ]/g,"").trimStart();!e&&c&&t.length===Math.floor(c/2)?(t+=" ",e=!0):e&&!this.value&&(e=!1),this.value=t,c&&t.replace(/ /g,"").length==c&&void 0!==r.requestSubmit&&(r.requestSubmit(),r.submit.disabled="disabled")})}return r.addEventListener("submit",function(t){t.preventDefault();let o=new FormData(r);fetch(r.action,{method:r.method,body:o}).then(function(e){return e.text()}).then(function(t){m(e);const{doc:r,hasError:o}=g(e.closest(".ct-login-form"),t);o&&d(e,r),o||setTimeout(function(){location=e.querySelector('[name="redirect_to"]').value},2e3)})}),!0},f=function(e){const t=e.querySelector('[name*="submit"]');t&&t.classList.add("ct-loading")},m=function(e){const t=e.querySelector('[name*="submit"]');t&&t.classList.remove("ct-loading")},p=function(e,{screen:t="login"}){e.querySelector(`.ct-${t}-form`)||(t="login"),e.querySelector("ul")&&e.querySelector(`ul .ct-${t}`)&&(e.querySelector("ul .active").classList.remove("active"),e.querySelector(`ul .ct-${t}`).classList.add("active")),e.querySelector('[class*="-form"].active').classList.remove("active"),e.querySelector(`.ct-${t}-form`).classList.add("active"),e.querySelector(`.ct-${t}-form form`)&&e.querySelector(`.ct-${t}-form form`).reset(),e.querySelector(".ct-account-modal").classList.remove("ct-error");let r=e.querySelector(`.ct-${t}-form`).querySelector(".ct-form-notification");r&&r.remove();let o=e.querySelector(`.ct-${t}-form`).querySelector(".ct-form-notification-error");o&&o.remove(),function(e){[...e.querySelectorAll(".g-recaptcha, .anr_captcha_field")].map(function(e){e.gID||(e.innerHTML="",e.gID=grecaptcha.render(e))})}(e)};let h=function(e,t){let r=e.querySelector(".ct-form-notification-error");r&&r.remove(),e.closest(".ct-account-modal").classList.remove("ct-error"),t&&(e.insertAdjacentHTML("afterbegin",`<div class="ct-form-notification-error">${t}</div>`),requestAnimationFrame(function(){e.closest(".ct-account-modal").classList.add("ct-error")}))};const g=function(e,t){let r=(new DOMParser).parseFromString(t,"text/html"),o=r.querySelector("#login_error"),n="";return o&&(n=o.innerHTML),h(e,n),{hasError:!!o,doc:r}},w=function(e,t){let r=e.querySelector(".ct-form-notification");r&&r.remove(),e.closest(".ct-account-modal").classList.remove("ct-error"),t&&e.insertAdjacentHTML("afterbegin",`<div class="ct-form-notification">${t}</div>`)},v=function(e,t){let r=(new DOMParser).parseFromString(t,"text/html"),o=r.querySelector(".message"),n="";return o&&(n=o.innerHTML),w(e,n),{doc:r}},y=function(e){if(!e)return;if(e.hasListeners)return;e.hasListeners=!0,function(e){let t=e.querySelector('[name="loginform"]');t&&t.addEventListener("submit",function(e){if(e.preventDefault(),window.ct_customizer_localizations)return;f(t);let r=new FormData(t);r.append("redirect_to",location.href),t.querySelector('[name="username"]')&&r.append("log",t.querySelector('[name="username"]').value);let o=`${ct_localizations.ajax_url}?action=blc_implement_user_login`;if(window.WFLSVars&&!t.loginProceed)return r.append("action","wordfence_ls_authenticate"),o=WFLSVars.ajaxurl,void i(t).then(function(){fetch(o,{method:t.method,body:r}).then(function(e){return e.json()}).then(function(e){m(t);let r=!!e.error;const o=t.closest(".ct-login-form"),n=t.closest(".ct-login-form").querySelector("form");if(r&&h(o,e.error),e.message&&w(n,e.message),e.login){if(e.two_factor_required){if(!t.querySelector("#wfls-prompt-overlay")){var c=l()('<div id="wfls-prompt-overlay"></div>'),i=l()('<div id="wfls-prompt-wrapper"></div>'),s=l()('<label for="wfls-token">');s.text("Wordfence 2FA Code "),s.append(l()('<a href="javascript:void(0)" class="wfls-2fa-code-help wfls-tooltip-trigger" title="The Wordfence 2FA Code can be found within the authenticator app you used when first activating two-factor authentication. You may also use one of your recovery codes."><i class="dashicons dashicons-editor-help"></i></a>')),s=l()("<p>").append(s);var u=l()('<p><input type="text" name="wfls-token" id="wfls-token" aria-describedby="wfls-token-error" class="input" value="" size="6" autocomplete="one-time-code"/></p>'),d=l()('<p class="wfls-remember-device-wrapper"><label for="wfls-remember-device"><input name="wfls-remember-device" type="checkbox" id="wfls-remember-device" value="1" /> </label></p>');d.find("label").append("Remember for 30 days");var f=l()('<p class="submit"><input type="submit" name="wfls-token-submit" id="wfls-token-submit" class="button button-primary button-large"/></p>');f.find("input[type=submit]").val("Log In"),i.append(s),i.append(u),parseInt(WFLSVars.allowremember)&&i.append(d),i.append(f),c.append(i),l()(n).css("position","relative").append(c),l()("#wfls-token").focus(),new(l().Zebra_Tooltips)(l()(".wfls-tooltip-trigger"))}}else{const e=new FormData(t);e.append("redirect_to",location.href),fetch(`${ct_localizations.ajax_url}?action=blc_implement_user_login`,{method:t.method,body:e}).then(function(e){return e.json()}).then(function({data:{html:e,redirect_to:t}}){location=t})}t.loginProceed=!0}(!r||r&&-1===t.closest(".ct-login-form").querySelector(".ct-form-notification-error").innerHTML.indexOf("Captcha"))&&a(t.closest(".ct-login-form"))})});i(t).then(function(){fetch(o,{method:t.method,body:r}).then(function(e){return e.redirected&&e.url?{data:{html:"",redirect_to:e.url}}:e.json()}).then(function({data:{html:e,redirect_to:r}}){const{doc:o,hasError:n}=g(t.closest(".ct-login-form"),e);n?m(t):d(t,o)||setTimeout(function(){location=r},2e3),(!n||n&&-1===t.closest(".ct-login-form").querySelector(".ct-form-notification-error").innerHTML.indexOf("Captcha"))&&a(t.closest(".ct-login-form"))})})})}(e);let t=e.querySelector('[name="loginform"]'),o=e.querySelector('[name="registerform"]'),n=e.querySelector('[name="lostpasswordform"]');if(e.addEventListener("click",function(r){r.target.href&&r.target.href.indexOf("lostpassword")>-1&&(p(e,{screen:"forgot-password"}),r.preventDefault()),r.target.href&&r.target.classList.contains("showlogin")&&(p(e,{screen:"login"}),r.preventDefault()),r.target.href&&(r.target.href.indexOf("wp-login")>-1||t&&r.target.href===t.action||r.target.href.indexOf("login")>-1||"yes"===r.target.dataset.login)&&-1===r.target.href.indexOf("lostpassword")&&(p(e,{screen:"login"}),r.preventDefault())},!0),e.querySelectorAll(".show-password-input + .show-password-input")&&e.querySelectorAll(".show-password-input + .show-password-input").forEach(function(e){e.remove()}),[...e.querySelectorAll(".show-password-input")].map(function(e){e.addEventListener("click",function(t){e.previousElementSibling.type="password"===e.previousElementSibling.type?"text":"password"})}),o){o.addEventListener("submit",function(e){e.preventDefault(),window.ct_customizer_localizations||(f(o),i(o).then(function(){return fetch(`${ct_localizations.ajax_url}?action=blc_implement_user_registration`,{method:o.method,body:new FormData(o)}).then(function(e){return e.text()}).then(function(e){const{doc:t,hasError:n}=g(o.closest(".ct-register-form"),e);m(o),n||v(o.closest(".ct-register-form"),e),r().trigger("blocksy:account:register:"+(n?"error":"success")),n||o.querySelector('[name="redirect_to"]')&&o.querySelector('[name="role"][value="seller"]:checked')&&(location=o.querySelector('[name="redirect_to"]').value),(!n||n&&-1===o.closest(".ct-register-form").querySelector(".ct-form-notification-error").innerHTML.indexOf("Captcha"))&&a(o.closest(".ct-register-form"))})}))});let e=o.querySelector("#user_pass_register");e&&u(e)}n&&n.addEventListener("submit",function(e){e.preventDefault(),window.ct_customizer_localizations||(f(n),fetch(`${ct_localizations.ajax_url}?action=blc_implement_user_lostpassword`,{method:n.method,body:new FormData(n)}).then(function(e){return e.text()}).then(function(e){const{doc:t,hasError:r}=g(n.closest(".ct-forgot-password-form"),e);m(n),r||v(n.closest(".ct-forgot-password-form"),e),(!r||r&&-1===n.closest(".ct-forgot-password-form").querySelector(".ct-form-notification-error").innerHTML.indexOf("Captcha"))&&a(n.closest(".ct-forgot-password-form"))}))}),["login","register","forgot-password"].map(function(t){Array.from(e.querySelectorAll(`.ct-${t}`)).map(function(r){r.addEventListener("click",function(r){r.preventDefault(),p(e,{screen:t})}),r.addEventListener("keyup",function(r){13===r.keyCode&&(r.preventDefault(),p(e,{screen:t}))})})})};let _="";const b={login:".ct-account-modal #loginform .cf-turnstile",lostpassword:".ct-account-modal #lostpasswordform .cf-turnstile",register:".ct-account-modal #registerform .cf-turnstile"},S=function(){window.anr_onloadCallback&&window.anr_onloadCallback(),window.turnstile&&Object.keys(b).forEach(function(e){document.querySelector(b[e])&&turnstile.render(b[e])}),function(){if(!window.google||!google.accounts||!google.accounts.id)return;const e=document.querySelectorAll(".googlesitekit-sign-in-with-google__frontend-output-button");e.length&&e.forEach(function(e){const t=e.closest("form").querySelector(".login-submit");t&&t.insertAdjacentElement("afterend",e),google.accounts.id.renderButton(e,{})})}(),window.Dokan_Vendor_Registration&&window.Dokan_Vendor_Registration.init()};(0,o.registerDynamicChunk)("blocksy_account",{mount:function(e,{event:t}){if(document.body.dataset.panel)return;if(!_){let t=document.querySelector("#account-modal");if(!t)return void(location=document.querySelector('[data-id="account"] .ct-account-item')?document.querySelector('[data-id="account"] .ct-account-item').href:e.href);_=t.outerHTML,window.turnstile&&Object.keys(b).forEach(function(e){document.querySelector(b[e])&&(turnstile.remove(b[e]),"register"===e&&turnstile.remove(".ct-account-modal #registerform .sct-woocommerce-register"))}),t.remove()}let o=document.querySelector("#account-modal");o||(document.querySelector(".ct-drawer-canvas").insertAdjacentHTML("beforeend",_),o=document.querySelector(".ct-drawer-canvas").lastChild);y(o),p(o,{screen:e.dataset.view||"login"}),S(),r().trigger("ct:overlay:handle-click",{e:t,href:"#account-modal",options:{isModal:!0,computeScrollContainer:function(){if(o.closest("body"))return o.querySelector(".ct-account-forms")}}})}}),r().on("ct:modal:closed",function(e){e.closest("#account-modal")&&e.remove()})}(); |