Plugin Directory

Changeset 3161620


Ignore:
Timestamp:
10/02/2024 04:44:16 PM (18 months ago)
Author:
wallkit
Message:

tagging version 3.3.8

Location:
wallkit
Files:
12 edited
1 copied

Legend:

Unmodified
Added
Removed
  • wallkit/tags/3.3.8/includes/class-wallkit-rest-controller.php

    r3155283 r3161620  
    6666            $access = apply_filters('wallkit_check_post_access', $post);
    6767        } catch (\Exception $exception) {
    68             $access = false;
     68            $access = [
     69                'allow' => false,
     70                'message' => 'Error check post access'
     71            ];
    6972        }
    7073
     
    7275            if( !$access || (isset($access['allow']) && !$access['allow']) ) {
    7376                return new WP_REST_Response([
    74                     'message' => 'User has no access to this post',
    75                     'access'    => $access
     77                    'allowed'   => false,
     78                    'data'    => $access
    7679                ], 200);
    7780            }
     
    8083            $formatted_content = Wallkit_Wp_Admin::get_formatted_content($post->post_content);
    8184            $content_part = Wallkit_Wp_Admin::get_content_body_paragraph($formatted_content, $skip_paragraphs);
    82             $content_part = apply_filters('the_content', $content_part);
    8385
    8486            return new WP_REST_Response( [
    85                 'message'       => 'success',
    86                 'access'        => $access,
    87                 'content_part'  => apply_filters('the_content', $content_part),
     87                'allowed'           => $access['allow'],
     88                'data'              => $access,
     89                'wp_content_part'   => apply_filters('the_content', $content_part),
    8890            ], 200);
    8991        }
    9092        catch (\Exception $exception) {
    91             return new WP_REST_Response( ['message' => 'Check access failed'], 409);
     93            return new WP_REST_Response( ['allowed' => false, 'message' => 'Check access failed'], 409);
    9294        }
    9395    }
  • wallkit/tags/3.3.8/includes/class-wallkit-wp-access.php

    r3155283 r3161620  
    139139        if(!$WP_Post instanceof WP_Post || !isset($WP_Post->ID))
    140140        {
    141             return true;
     141            return [
     142                'allow' => true,
     143                'message' => 'Post ID not exist'
     144            ];
    142145        }
    143146
    144147        if(!isset($WP_Post->post_type) || empty($WP_Post->post_type))
    145148        {
    146             return true;
     149            return [
     150                'allow' => true,
     151                'message' => 'Post type not exist'
     152            ];
    147153        }
    148154
     
    150156        if($disablePaywallOnPost === '1')
    151157        {
    152             return true;
     158            return [
     159                'allow' => true,
     160                'message' => 'Paywall disabled on this post'
     161            ];
    153162        }
    154163
     
    158167        if(is_user_logged_in() && !self::$wallkit_Wp_Collection->get_settings()->get_option("wk_admin_paywall"))
    159168        {
    160             return true;
     169            return [
     170                'allow' => true,
     171                'message' => 'Paywall disabled for admin users'
     172            ];
    161173        }
    162174
     
    167179            if(!$Sdk instanceof \WallkitSDK\WallkitSDK)
    168180            {
    169                 return true;
     181                return [
     182                    'allow' => true,
     183                    'message' => 'Wallkit sdk not initialised'
     184                ];
    170185            }
    171186
     
    175190            $registeredPostTypes = self::$wallkit_Wp_Collection->get_settings()->get_option("wk_check_post_type_access");
    176191            if( !(!empty($registeredPostTypes) && array_key_exists($WP_Post->post_type, $registeredPostTypes) && $registeredPostTypes[$WP_Post->post_type]) ) {
    177                 return true;
     192                return [
     193                    'allow' => true,
     194                    'message' => 'Post type allowed'
     195                ];
    178196            }
    179197
     
    182200                ->toArray();
    183201
    184             return [
    185                 'allow' => (bool) (isset($access["allow"]) ? $access["allow"] : false),
    186                 'response' => $access,
    187             ];
     202            return $access;
    188203        }
    189204        catch(\WallkitSDK\Exceptions\WallkitException $exception)
  • wallkit/tags/3.3.8/public/js/wallkit-setup.js

    r3155283 r3161620  
    429429                //If this is backed paywalled skip check post access on frontend, check access on backend.
    430430                if(window.wallkitPostData.config.wk_paywall_display_type === 3) {
    431                     resolve({});
    432                     return;
    433                 }
    434 
     431                    return resolve(get_content_part());
     432                }
    435433                wkPost.checkAccess().then((response) => {
    436434                    wkwpDebug('F=>wkCheckPostAccess.wkPost.checkAccess', response);
    437                     resolve(response);
     435                    return resolve(response);
    438436                }).catch((error) => {
    439437                    console.log('WKWP wkPost ERROR', error);
    440                     reject(error);
     438                    return reject(error);
    441439                });
    442440            });
     
    449447                switch (window.wallkitPostData.config.wk_paywall_display_type) {
    450448                    case 1: checkAccessHandlingFrontend(response); break;
    451                     case 3: checkAccessHandlingBackend(); break;
     449                    case 3: checkAccessHandlingBackend(response); break;
    452450                    default: checkAccessHandlingCSS(response);
    453451                }
     
    543541    // Change view for user based on access. Partial process on backend.
    544542    // Hard locking content
    545     async function checkAccessHandlingBackend() {
     543    function checkAccessHandlingBackend(response) {
    546544        let wkSettings = window["wallkitSettings"] || {};
    547545        const postContentWrapper    = document.querySelector(".wkwp-paywall");
     
    549547        let postPaywallBlock        = document.querySelector(".wkwp-paywall .wkwp-paywall-block");
    550548        wkwpDebug('F=>checkAccessHandlingBackend',
     549            '\nresponse', response,
    551550            '\nwindow.wallkitPostData', window.wallkitPostData,
    552551            '\npostContentWrapper', postContentWrapper,
     
    555554            '\nwkPaywallBlock', wkPaywallBlock);
    556555
    557         let contentData = await get_content_part();
    558         wkwpDebug('F=>checkAccessHandlingBackend=>get_content_part',
    559             '\ncontentPart', contentData.contentPart,
    560             '\ncontentScripts', contentData.contentScripts);
    561         if (!contentData) {
     556
     557        if (!response.allowed) {
    562558            if (postContentBody) {
    563559                const p_count = parseInt(postContentBody.dataset.paragraphs) || 0;
     
    582578            postContentWrapper.style = "display:block;";
    583579        } else {
     580            let contentData = {
     581                contentScripts: [],
     582                contentPart: response.wp_content_part
     583            };
     584
     585            if(response.wp_content_part
     586                && wkSettings.config.parse_scripts) {
     587                contentData.contentScripts = parseScripts(response.wp_content_part);
     588                contentData.contentPart = removeScriptsFromString(response.wp_content_part);
     589            }
     590            wkwpDebug('F=>checkAccessHandlingBackend',
     591                '\ncontentPart', contentData.contentPart,
     592                '\ncontentScripts', contentData.contentScripts);
     593
    584594            if (postPaywallBlock) {
    585595                postPaywallBlock.remove();
     
    642652        );
    643653
    644         if(contentAccessResponce.content_part
    645             && window.wallkitSettings.config.parse_scripts) {
    646             return {
    647                 contentScripts: parseScripts(contentAccessResponce.content_part),
    648                 contentPart: removeScriptsFromString(contentAccessResponce.content_part)
    649             };
    650         }
    651 
    652         if(contentAccessResponce.content_part) {
    653             return {
    654                 contentScripts: [],
    655                 contentPart: contentAccessResponce.content_part
    656             };
    657         }
    658 
    659         return false;
     654        return contentAccessResponce;
    660655    }
    661656
  • wallkit/tags/3.3.8/public/js/wallkit-setup.min.js

    r3155283 r3161620  
    1 !function(){var e=document.querySelector("body");e.classList.contains("wkwp-user-hide")||e.classList.add("wkwp-user-hide")}(),function(){window.wkwpCheckAccessPromise=null;var s="",a="";function t(){let r=window.wallkitSettings||{},t=document.querySelector(r.config.inline_modals_selector);m("F=>runInitWkProcess.wkSettings",r),void 0!==r.integration&&(r.config.inline_modals_selector&&t&&t.dataset.modal&&(m("F=>runInitWkProcess.inlineModalsContainer","\ninline_modals_selector",r.config.inline_modals_selector,"\ninlineModalsContainer",t,"\ninlineModalsContainer.dataset.modal",t.dataset.modal),window.location.hash="WkModal("+t.dataset.modal+")"),window.wk=window.wk||[],window.wk.push(["ready",e=>{m("F=>runInitWkProcess.window.wk ready callback",window.wk,e),m("F=>runInitWkProcess.window.wk.authentication",window.wk.authentication,"\nwindow.wk.authentication.isAuthenticated()=>",window.wk.authentication.isAuthenticated()),n(),i(!1),window.wk.on("wk-event-auth",function(){m("E=>wk.events.subscribe=>wk-event-auth"),n(),i()}),window.wk.on("wk-event-registration",function(){m("E=>wk.events.subscribe=>wk-event-registration"),n(),i()}),window.wk.on("success-auth",function({register:e}){m("E=>wk.events.subscribe=>success-auth",e),!0===r.config.wk_auth_migrated_users&&(e=document.querySelector(".wk-user-update-info"),m("E=>wk.events.subscribe=>success-auth","\nwk_auth_migrated_users=>",r.config.wk_auth_migrated_users,"\nuserWithoutSessionInfo=>",e),e)&&w(),r.config.inline_modals_selector&&t&&window.wk.modal(r.config.wk_modal_after_sign_in),n(),i()}),window.wk.on("logout",function(){m("E=>wk.events.subscribe=>logout",r.config.reload_on_logout),!0!==r.config.reload_on_logout?(n(),i(),window.wk.popup.hide()):location.reload()}),window.wk.on("wk-event-transaction",function(){m("E=>wk.events.subscribe=>wk-event-transaction"),i()}),!0===r.config.wk_auth_migrated_users&&window.wk.on("pre-sign-in",async e=>{m("E=>wk.events.subscribe=>pre-sign-in",e);var t,n,i=document.querySelector("#auth-modal-wallkit-modal-spinner");i.style.display="flex";let o=!0,s=!1,a=!1;return await Wallkit.checkUserActivity(e.email).then(e=>{m("E=>wk.events.subscribe=>pre-sign-in=>Wallkit.checkUserActivity.data",e),void 0!==e&&(void 0!==e.is_exist_sessions&&"boolean"==typeof e.is_exist_sessions&&(o=e.is_exist_sessions),void 0!==e.has_user_resource_relationship_password)&&"boolean"==typeof e.has_user_resource_relationship_password&&(a=e.has_user_resource_relationship_password)},e=>{m("E=>wk.events.subscribe=>pre-sign-in=>Wallkit.checkUserActivity.error",e)}),o||a||(m("E=>wk.events.subscribe=>pre-sign-in=>password-reset","\nis_exist_sessions=>",o,"\nuser_has_password=>",a),await window.wk.sdk.methods.client.post({path:"/firebase/password-reset",data:{email:e.email}}).then(e=>{m("E=>wk.events.subscribe=>pre-sign-in=>password-reset.responce",e),s=!0},e=>{m("E=>wk.events.subscribe=>pre-sign-in=>password-reset.error",e)})),s&&(e=document.querySelector("#wk-email-auth-form"),m("E=>wk.events.subscribe=>pre-sign-in","\nis_password_reset=>",s,"\nauthForm=>",e),(t=e.querySelector(".wk-form").querySelector(".wk-form__error"))&&(t.style.display="none"),t=document.createElement("div"),n='<div style="padding: 24px 24px 0 24px;">'+r.config.wk_auth_migrated_users_text+"</div>",t.classList.add("wk-user-update-info"),t.insertAdjacentHTML("beforeend",n),e.parentNode.insertBefore(t,e),e.style.display="none",document.addEventListener("click",u)),i.style.display="none",!0})}]),r.config.inline_modals_selector&&t&&(r.integration.ui={type:"inline",selector:r.config.inline_modals_selector}),"function"==typeof WallkitIntegration?window.wk=new WallkitIntegration(r.integration):console.log("WKWP ERROR: WallkitIntegration function does not exist"))}async function n(){let n=window.wallkitSettings||{},i=window.wallkitTranslations||{};const o=document.querySelectorAll(".wkwp-user-my-account-button");if(m("F=>wkShowUserStatus","\nwkSettings=>",n,"\naccountStatusSpanEls=>",i,"\naccountStatusSpanEls=>",o),o.length){const r=document.querySelectorAll(".wkwp-login-block"),l="https://www.gravatar.com/avatar/?d=mp",c=document.querySelectorAll(".wkwp-user-my-account-img"),u=document.querySelectorAll(".wkwp-site-logo");let t=n.integration.call.classForHandleClick||"wk-call";const w=document.querySelector("body.wkwp-user-hide");var e,s,a;m("F=>wkShowUserStatus.args","\nuserAccountBlock",r,"\nimgDefaultSrc",l,"\naccountStatusImgEls",c,"\naccountSiteLogo",u,"\nwkCallClass",t,"\nwindow.wk.authentication.isAuthenticated()=>",window.wk.authentication.isAuthenticated()),window.wkwpGetUser=new Promise((t,n)=>{window.wk.authentication.isAuthenticated()?window.wk.sdk.methods.client.get({path:"/user"}).then(e=>{m("F=>wkShowUserStatus.wkwpGetUser.wk.sdk.methods.client(/user)",e),0<e.id&&(window.wk.sdk.methods.user=e),t(e)},e=>{console.log("F=>wkShowUserStatus.wkwpGetUser ERROR",e),n(e)}):(m("F=>wkShowUserStatus.wkwpGetUser.wk.authentication.isAuthenticated()",window.wk.authentication.isAuthenticated()),n())}),await window.wkwpGetUser.then(e=>{m("F=>wkShowUserStatus.wkwpGetUser.then.response",e),m("F=>wkShowUserStatus.dispatchEvent.wkwpGetUserCompleted"),window.dispatchEvent(new CustomEvent("wkwpGetUserCompleted",{detail:e})),0<e.id&&(0<c.length&&c.forEach(e=>{e.src=window.wk.sdk.methods.user.photos.image_100,e.classList.remove(t,"wk–sign-in"),e.classList.add(t,"wk–account-settings"),e.style="display:block;"}),0<o.length&&o.forEach(e=>{(e="LI"===e.tagName?e.querySelector("a"):e).innerHTML=n.titles.myAccountButton||i.my_account||"My&nbsp;Account",e.classList.remove(t,"wk–sign-in"),e.classList.add(t,"wk–account-settings")}),0<u.length)&&u.forEach(e=>{e.style="display:none;"}),0<r.length&&r.forEach(e=>{e.style="display:block;"}),w&&w.classList.remove("wkwp-user-hide")}).catch(e=>{m("F=>wkShowUserStatus.wkwpGetUser.catch.error",e),m("F=>wkShowUserStatus.dispatchEvent.wkwpGetUserCompleted.error"),window.dispatchEvent(new CustomEvent("wkwpGetUserCompleted",{detail:!1})),0<c.length&&c.forEach(e=>{e.src=l,e.classList.remove(t,"wk–account-settings"),e.classList.add(t,"wk–sign-in"),e.style="display:none;"}),0<o.length&&o.forEach(e=>{(e="LI"===e.tagName?e.querySelector("a"):e).classList.remove(t,"wk–account-settings"),e.classList.add(t,"wk–sign-in"),e.innerHTML=n.titles.signInButton||i.sign_in||"Sign&nbsp;in"}),0<u.length&&u.forEach(e=>{e.style="display:block;"}),0<r.length&&r.forEach(e=>{e.style="display:block;"}),w&&w.classList.remove("wkwp-user-hide")}),e=window.wallkitSettings||{},s=e.integration.call.classForHandleClick||"wk-call",e.config.wk_my_account_page_url&&((a=document.querySelectorAll(".wk–sign-in")).length&&d(a,e.config.wk_my_account_page_url,[s,"wk–sign-in"]),(a=document.querySelectorAll(".wk–account-settings")).length)&&d(a,e.config.wk_my_account_page_url,[s,"wk–account-settings"])}}function d(e,n,i=[]){e&&n&&e.forEach(e=>{let t=e;i.length&&e.classList.remove(...i),(t="A"!==e.tagName?e.querySelector("a"):t)&&t.setAttribute("href",n)})}function i(e=!0){var t=window.wallkitSettings||{};if(m("F=>wkCheckPostAccess","\nwkSettings",t,"\nnewCheckAccessPromise",e,"\nwindow.wkwpCheckAccessPromise",window.wkwpCheckAccessPromise,"\nwindow.wallkitPostData",window.wallkitPostData,"\n.wkwp-paywall",document.querySelector(".wkwp-paywall")),!0===e&&(window.wkwpCheckAccessPromise=null),!window.wkwpCheckAccessPromise&&void 0!==window.wallkitPostData.config&&void 0!==window.wallkitPostData.config.check_post&&!1!==window.wallkitPostData.config.check_post&&void 0!==window.wallkitPostData.data&&void 0!==window.wallkitPostData.data.id&&""!==window.wallkitPostData.data.id&&(document.querySelector(".wkwp-paywall")||t.config.content_class_selector&&document.querySelector("."+t.config.content_class_selector)||t.config.custom_content_selector&&document.querySelector(""+t.config.custom_content_selector))){e=window.wallkitPostData.data;const i=new window.wk.content(e);m("F=>wkCheckPostAccess.checkAccess","\npostInfo",e,"\nwkPost",i),window.wkwpCheckAccessPromise=new Promise((t,n)=>{3===window.wallkitPostData.config.wk_paywall_display_type?t({}):i.checkAccess().then(e=>{m("F=>wkCheckPostAccess.wkPost.checkAccess",e),t(e)}).catch(e=>{console.log("WKWP wkPost ERROR",e),n(e)})})}window.wkwpCheckAccessPromise&&window.wkwpCheckAccessPromise.then(e=>{switch(window.removeEventListener("unlockContent",o),m("F=>wkCheckPostAccess.wkwpCheckAccessPromise",e),window.wallkitPostData.config.wk_paywall_display_type){case 1:l(e);break;case 3:!async function(){var e=window.wallkitSettings||{};var t=document.querySelector(".wkwp-paywall"),n=document.querySelector(".wkwp-paywall .wkwp-content-inner");let i=document.querySelector(".wkwp-paywall .wkwp-paywall-block"),o=(m("F=>checkAccessHandlingBackend","\nwindow.wallkitPostData",window.wallkitPostData,"\npostContentWrapper",t,"\npostContentBody",n,"\npostPaywallBlock",i,"\nwkPaywallBlock",a),await async function(){var e=window.wallkitPostData.data.id.split("_").slice(-1),t={post_id:e};var n={};Wallkit.getToken()&&(n["wk-token"]=Wallkit.getToken());Wallkit.getFirebaseToken()&&(n["firebase-token"]=Wallkit.getFirebaseToken());WallkitClient.session&&(n["wk-session"]=WallkitClient.session);m("F=>get_content_part","\npost_id",e,"\nurl_params",t,"\nheaders",n,"\nwindow.wallkitSettings.config.parse_scripts",window.wallkitSettings.config.parse_scripts);e=await fetch("/wp-json/wallkit/v1/get-content-part?"+new URLSearchParams(t).toString(),{method:"GET",headers:n}).then(e=>200===e.status&&e.json()).catch(e=>(console.log("WKWP ERROR: get_content_part->contentAccessResponce",e),!1));if(m("F=>get_content_part","\ncontentAccessResponce",e),e.content_part&&window.wallkitSettings.config.parse_scripts)return{contentScripts:function(e){var t=[],n=document.createElement("div"),i=(n.innerHTML=e,n.getElementsByTagName("script"));m("F=>parseScripts","\ncontent",e,"\nscripts",i);for(let e=0;e<i.length;e++){var o=i[e],s=document.createElement("script");o.src?(s.src=o.src,s.async=!1):s.text=o.innerHTML,t.push(s)}return m("F=>parseScripts","\nnewScriptsElements",t),t}(e.content_part),contentPart:function(e){m("F=>removeScriptsFromString","\ncontent",e);var t=document.createElement("div"),n=(t.innerHTML=e,t.getElementsByTagName("script"));for(;0<n.length;)n[0].parentNode.removeChild(n[0]);return m("F=>removeScriptsFromString","\ntempDiv.innerHTML",t.innerHTML),t.innerHTML}(e.content_part)};if(e.content_part)return{contentScripts:[],contentPart:e.content_part};return!1}());{var s;m("F=>checkAccessHandlingBackend=>get_content_part","\ncontentPart",o.contentPart,"\ncontentScripts",o.contentScripts),o?(i&&i.remove(),n&&(n.innerHTML=o.contentPart||"",o.contentScripts&&o.contentScripts.forEach(e=>document.body.appendChild(e)),n.classList.remove("wkwp-content-blured"),n.style="display:block;")):(n&&(s=parseInt(n.dataset.paragraphs)||0,n.innerHTML=p(s),window.wallkitPostData.config.show_blur?n.classList.add("wkwp-content-blured"):n.style="display:none;"),!i&&e.config.paywall.content&&((i=document.createElement("div")).classList.add("wkwp-paywall-block"),i.insertAdjacentHTML("beforeend",e.config.paywall.content),n.parentNode.insertBefore(i,n)),c(i)),t.style="display:block;"}}();break;default:r(e)}window.addEventListener("unlockContent",o),m("F=>wkCheckPostAccess.dispatchEvent.wkwpContentLocked"),window.dispatchEvent(new CustomEvent("wkwpContentLocked",{detail:e}))}).catch(e=>{console.log("WKWP ERROR: wkwpCheckAccessPromise",e)})}function o(e){m("F=>handleUnlockContentEvent.addEventListener.unlockContent",e),(1===window.wallkitPostData.config.wk_paywall_display_type?l:r)({allowed:!0})}function r(e){var t=window.wallkitSettings||{},n=document.querySelector(".wkwp-paywall"),i=document.querySelector(".wkwp-paywall .wkwp-content-inner");let o=document.querySelector(".wkwp-paywall .wkwp-paywall-block");m("F=>checkAccessHandlingCSS","\nresponse",e,"\nwindow.wallkitPostData",window.wallkitPostData,"\npostContentWrapper",n,"\npostContentBody",i,"\npostPaywallBlock",o,"\nwkContentBody",s,"\nwkPaywallBlock",a),i&&!s&&(s=i.innerHTML),e.allowed?(o&&o.remove(),i&&(s&&!1===t.config.skip_lorem&&(i.innerHTML=s),i.classList.remove("wkwp-content-blured"),i.style="display:block;")):(i&&(!1===t.config.skip_lorem&&(i.innerHTML=function(e){if(e&&0<e.querySelectorAll("p").length)return p(e.querySelectorAll("p").length);return""}(i)),window.wallkitPostData.config.show_blur?i.classList.add("wkwp-content-blured"):i.style="display:none;"),!o&&t.config.paywall.content&&((o=document.createElement("div")).classList.add("wkwp-paywall-block"),o.insertAdjacentHTML("beforeend",t.config.paywall.content),i.parentNode.insertBefore(o,i)),c(o)),n.style="display:block;"}function l(e){var t=window.wallkitSettings||{};let n=document.querySelector(".wkwp-paywall"),i="."+t.config.content_class_selector;t.config.custom_content_selector&&(i=t.config.custom_content_selector);var o=document.querySelector(""+i),s=document.querySelectorAll(i+" > *"),a=document.querySelectorAll(i+" > p");if(m("F=>checkAccessHandlingFrontend","\nwkPaywallBlock",e,"\nwkSettings",t,"\nwkwpPaywall",n,"\ntopElement",o,"\nallElements",s,"\nparagraphs",a),o)if(e.allowed)n&&n.remove(),s.forEach(e=>{e.classList.contains("wkwp-element")&&e.classList.remove("wkwp-element","wkwp-blur","wkwp-non-blur")});else if(o.querySelectorAll(".wkwp-element").length)c(n);else{var e=a.length>t.config.wk_free_paragraph&&0<=t.config.wk_free_paragraph?t.config.wk_free_paragraph:a.length,a=a[0<e?e-1:0],r=0===e?0:Array.prototype.indexOf.call(o.children,a)+1,l=["wkwp-element"];window.wallkitPostData.config.show_blur?l.push("wkwp-blur"):l.push("wkwp-non-blur"),m("F=>checkAccessHandlingFrontend.!allowed","\nshowParagraphs",e,"\nlastVisibleParagraph",a,"\nlastVisibleParagraphIndex",r,"\nitemClass",l);for(let e=r;e<s.length;e++)s[e].classList.add(...l);n||((n=document.createElement("div")).classList.add("wkwp-paywall"),n.insertAdjacentHTML("beforeend",`<div class="wkwp-paywall-block">${t.config.paywall.content}</div>`)),0===e?o.insertBefore(n,a):o.insertBefore(n,a.nextSibling),c(n),n.style="display:block;"}}function c(e){m("F=>paywallDisplayLoginLink",e),e&&(e=e.querySelector(".wallkit-paywall-block__login_plans"))&&(window.wk.authentication.isAuthenticated()?e.style="display:none;":e.style="display:block;")}function u(e){switch(m("F=>hideUserWithoutSessionInfo",e),e.target.id){case"auth-signup-link":case"auth-modal-close-btn":case"auth-modal-wrapper":case"auth-password-link":w()}e.target.classList.contains("wk-form-button")&&w()}function w(){var e=document.querySelector(".wk-user-update-info"),t=document.querySelector("#wk-email-auth-form"),n=document.querySelector("#wk-email-auth-form .wk-form .wk-form-header .wk-form__error");m("F=>hideUserWithoutSessionText","\nuserWithoutSessionInfo",e,"\nauthForm",t,"\nauthFormHeaderError",n),document.removeEventListener("click",u),e.remove(),t.style.display="block",n&&(n.style.display="")}function p(e){var t=["Inventore molestiae accusantium fuga delectus. Sed exercitationem aut quis reiciendis nesciunt dolore et. Voluptatibus at suscipit eius ratione perspiciatis provident. Totam minima quia occaecati maxime mollitia.","Laborum occaecati sapiente nesciunt voluptatem. Voluptatibus asperiores optio ut. Pariatur perspiciatis voluptatem beatae commodi libero modi.","Aut et ipsum beatae tenetur sit. Necessitatibus harum ea et. Natus aut quas sit dolores odio ut. Ipsum sit corporis maxime voluptatum et. Et labore id rerum nobis quia voluptatibus veniam dolores.","Sed aut repudiandae alias. Sunt est ab dignissimos quasi recusandae labore. Amet vitae illo debitis beatae nesciunt dolor dignissimos. Voluptatum consequuntur error at omnis. Tenetur quaerat facere placeat enim doloribus.","Id tempora quo placeat dolore. Eos sunt sapiente et facere. Ex facere et voluptate praesentium. Modi mollitia at non eum rerum perferendis. Nobis blanditiis consequatur incidunt.","Sint voluptas nam sed. Eligendi beatae corporis omnis ipsum facilis dicta a repudiandae. Suscipit et eligendi eveniet ipsum veritatis aut. Aspernatur adipisci fugit deserunt eos hic ut omnis. Corporis et itaque dicta similique.","Fugit dolores vitae iste qui. Dignissimos quo molestiae cumque. Sequi illo non saepe facere aut aliquid consequuntur sunt. Amet non illo dolor molestiae nulla eligendi quae. Id aut et velit quos sit ratione earum rerum.","Soluta error neque dolor perspiciatis mollitia. Voluptatem corporis doloribus fugiat et. Unde et rerum magni. Dolores nisi laudantium laboriosam voluptatem.","Dolores in illo exercitationem est enim pariatur quam corporis. Non ipsa sequi explicabo. Placeat earum aspernatur quod et quia.","Et sed amet ipsa. Qui et corrupti eaque et at dicta nesciunt vero. Est quasi eius possimus repellat ea ut. Inventore vel et possimus officiis quo consectetur similique. Culpa ut voluptatem non pariatur illum autem sapiente. Et et quidem est dolorum ab.","Amet id ipsam deleniti minima aut laboriosam. Odio ut reiciendis delectus repudiandae dolorem quaerat. Alias asperiores eum molestiae libero assumenda non voluptatibus quo. Et esse laboriosam ab velit et. Eligendi sint assumenda et.","Soluta ex voluptas minima et magnam est. Deserunt error molestiae veritatis amet. Quia provident sint molestiae omnis optio sunt sint. Commodi praesentium est perferendis inventore aut atque dolor doloribus. Minima enim velit eaque qui sed non dignissimos debitis. Rerum placeat in qui reprehenderit blanditiis nemo sed.","Magni dolore enim asperiores quae asperiores. Et quia eligendi ad quo aut labore ut iste. Quia qui esse aperiam eos illum exercitationem minus quod.","Sed ut dolorum sunt. Tempora incidunt aspernatur doloremque voluptatem quidem voluptatem magni. Est voluptatum minus id. Totam repudiandae reiciendis et.","Sint natus tenetur qui earum recusandae id optio. Dolore voluptates et accusamus et tempora sint. Dolores reiciendis iusto et quos aut. Sequi et officiis ipsum distinctio. Expedita voluptatibus corporis odio blanditiis iusto.","Ipsum dolores ut ut. Quia et voluptates accusamus neque quidem exercitationem dignissimos. Libero velit nemo omnis dolores ea repudiandae commodi accusamus. Sint tempore aut officia iste odit odio. Quibusdam sed debitis officiis.","Voluptatem quo est eius occaecati voluptatem tempore. Iste voluptas animi a voluptatem. Debitis est dolore aut fuga sunt voluptatem itaque assumenda. Id magnam officiis sint recusandae dolorum. Architecto numquam dignissimos quam corporis hic. Sit rerum amet provident.","Sed eum reiciendis aspernatur ab cupiditate. Ut atque dolores rerum veritatis voluptatem quidem ex voluptatum. Perspiciatis tempore quia quia animi vel distinctio. Id officia odit iusto facilis aliquid sequi eaque. Magnam eaque laudantium et et exercitationem.","Quod et ut voluptatibus assumenda sed. Nesciunt ea sed asperiores veniam temporibus blanditiis possimus. Quisquam eos voluptas assumenda molestiae.","Labore ipsum vitae dolorem est sed repellendus. Animi qui sequi similique dolorem sed vel omnis. Rerum saepe id atque animi."];let n=[];for(var i=0;i<e;i++)n.push(t[Math.floor(Math.random()*t.length)]);return n=n.map(e=>`<p>${e}</p>`).join("")}function m(e="",...t){void 0!==window.wallkitSettings.config&&window.wallkitSettings.config.debug&&console.log("WKWP DEBUG: ",e,...t)}window.addEventListener("DOMContentLoaded",e=>{m("DOMContentLoaded"),window.runInitWKPromise?(m("window.runInitWKPromise",window.runInitWKPromise),window.runInitWKPromise.then(e=>{m("window.runInitWKPromise.response",e),!0===e.init&&t()}).catch(e=>{console.log("WKWP ERROR: runInitWKPromise",e)})):(m("else runInitWkProcess"),t())})}();
     1!function(){var e=document.querySelector("body");e.classList.contains("wkwp-user-hide")||e.classList.add("wkwp-user-hide")}(),function(){window.wkwpCheckAccessPromise=null;var s="",r="";function t(){let r=window.wallkitSettings||{},t=document.querySelector(r.config.inline_modals_selector);k("F=>runInitWkProcess.wkSettings",r),void 0!==r.integration&&(r.config.inline_modals_selector&&t&&t.dataset.modal&&(k("F=>runInitWkProcess.inlineModalsContainer","\ninline_modals_selector",r.config.inline_modals_selector,"\ninlineModalsContainer",t,"\ninlineModalsContainer.dataset.modal",t.dataset.modal),window.location.hash="WkModal("+t.dataset.modal+")"),window.wk=window.wk||[],window.wk.push(["ready",e=>{k("F=>runInitWkProcess.window.wk ready callback",window.wk,e),k("F=>runInitWkProcess.window.wk.authentication",window.wk.authentication,"\nwindow.wk.authentication.isAuthenticated()=>",window.wk.authentication.isAuthenticated()),n(),i(!1),window.wk.on("wk-event-auth",function(){k("E=>wk.events.subscribe=>wk-event-auth"),n(),i()}),window.wk.on("wk-event-registration",function(){k("E=>wk.events.subscribe=>wk-event-registration"),n(),i()}),window.wk.on("success-auth",function({register:e}){k("E=>wk.events.subscribe=>success-auth",e),!0===r.config.wk_auth_migrated_users&&(e=document.querySelector(".wk-user-update-info"),k("E=>wk.events.subscribe=>success-auth","\nwk_auth_migrated_users=>",r.config.wk_auth_migrated_users,"\nuserWithoutSessionInfo=>",e),e)&&o(),r.config.inline_modals_selector&&t&&window.wk.modal(r.config.wk_modal_after_sign_in),n(),i()}),window.wk.on("logout",function(){k("E=>wk.events.subscribe=>logout",r.config.reload_on_logout),!0!==r.config.reload_on_logout?(n(),i(),window.wk.popup.hide()):location.reload()}),window.wk.on("wk-event-transaction",function(){k("E=>wk.events.subscribe=>wk-event-transaction"),i()}),!0===r.config.wk_auth_migrated_users&&window.wk.on("pre-sign-in",async e=>{k("E=>wk.events.subscribe=>pre-sign-in",e);var t,n,i=document.querySelector("#auth-modal-wallkit-modal-spinner");i.style.display="flex";let o=!0,s=!1,a=!1;return await Wallkit.checkUserActivity(e.email).then(e=>{k("E=>wk.events.subscribe=>pre-sign-in=>Wallkit.checkUserActivity.data",e),void 0!==e&&(void 0!==e.is_exist_sessions&&"boolean"==typeof e.is_exist_sessions&&(o=e.is_exist_sessions),void 0!==e.has_user_resource_relationship_password)&&"boolean"==typeof e.has_user_resource_relationship_password&&(a=e.has_user_resource_relationship_password)},e=>{k("E=>wk.events.subscribe=>pre-sign-in=>Wallkit.checkUserActivity.error",e)}),o||a||(k("E=>wk.events.subscribe=>pre-sign-in=>password-reset","\nis_exist_sessions=>",o,"\nuser_has_password=>",a),await window.wk.sdk.methods.client.post({path:"/firebase/password-reset",data:{email:e.email}}).then(e=>{k("E=>wk.events.subscribe=>pre-sign-in=>password-reset.responce",e),s=!0},e=>{k("E=>wk.events.subscribe=>pre-sign-in=>password-reset.error",e)})),s&&(e=document.querySelector("#wk-email-auth-form"),k("E=>wk.events.subscribe=>pre-sign-in","\nis_password_reset=>",s,"\nauthForm=>",e),(t=e.querySelector(".wk-form").querySelector(".wk-form__error"))&&(t.style.display="none"),t=document.createElement("div"),n='<div style="padding: 24px 24px 0 24px;">'+r.config.wk_auth_migrated_users_text+"</div>",t.classList.add("wk-user-update-info"),t.insertAdjacentHTML("beforeend",n),e.parentNode.insertBefore(t,e),e.style.display="none",document.addEventListener("click",p)),i.style.display="none",!0})}]),r.config.inline_modals_selector&&t&&(r.integration.ui={type:"inline",selector:r.config.inline_modals_selector}),"function"==typeof WallkitIntegration?window.wk=new WallkitIntegration(r.integration):console.log("WKWP ERROR: WallkitIntegration function does not exist"))}async function n(){let n=window.wallkitSettings||{},i=window.wallkitTranslations||{};const o=document.querySelectorAll(".wkwp-user-my-account-button");if(k("F=>wkShowUserStatus","\nwkSettings=>",n,"\naccountStatusSpanEls=>",i,"\naccountStatusSpanEls=>",o),o.length){const r=document.querySelectorAll(".wkwp-login-block"),l="https://www.gravatar.com/avatar/?d=mp",c=document.querySelectorAll(".wkwp-user-my-account-img"),u=document.querySelectorAll(".wkwp-site-logo");let t=n.integration.call.classForHandleClick||"wk-call";const w=document.querySelector("body.wkwp-user-hide");var e,s,a;k("F=>wkShowUserStatus.args","\nuserAccountBlock",r,"\nimgDefaultSrc",l,"\naccountStatusImgEls",c,"\naccountSiteLogo",u,"\nwkCallClass",t,"\nwindow.wk.authentication.isAuthenticated()=>",window.wk.authentication.isAuthenticated()),window.wkwpGetUser=new Promise((t,n)=>{window.wk.authentication.isAuthenticated()?window.wk.sdk.methods.client.get({path:"/user"}).then(e=>{k("F=>wkShowUserStatus.wkwpGetUser.wk.sdk.methods.client(/user)",e),0<e.id&&(window.wk.sdk.methods.user=e),t(e)},e=>{console.log("F=>wkShowUserStatus.wkwpGetUser ERROR",e),n(e)}):(k("F=>wkShowUserStatus.wkwpGetUser.wk.authentication.isAuthenticated()",window.wk.authentication.isAuthenticated()),n())}),await window.wkwpGetUser.then(e=>{k("F=>wkShowUserStatus.wkwpGetUser.then.response",e),k("F=>wkShowUserStatus.dispatchEvent.wkwpGetUserCompleted"),window.dispatchEvent(new CustomEvent("wkwpGetUserCompleted",{detail:e})),0<e.id&&(0<c.length&&c.forEach(e=>{e.src=window.wk.sdk.methods.user.photos.image_100,e.classList.remove(t,"wk–sign-in"),e.classList.add(t,"wk–account-settings"),e.style="display:block;"}),0<o.length&&o.forEach(e=>{(e="LI"===e.tagName?e.querySelector("a"):e).innerHTML=n.titles.myAccountButton||i.my_account||"My&nbsp;Account",e.classList.remove(t,"wk–sign-in"),e.classList.add(t,"wk–account-settings")}),0<u.length)&&u.forEach(e=>{e.style="display:none;"}),0<r.length&&r.forEach(e=>{e.style="display:block;"}),w&&w.classList.remove("wkwp-user-hide")}).catch(e=>{k("F=>wkShowUserStatus.wkwpGetUser.catch.error",e),k("F=>wkShowUserStatus.dispatchEvent.wkwpGetUserCompleted.error"),window.dispatchEvent(new CustomEvent("wkwpGetUserCompleted",{detail:!1})),0<c.length&&c.forEach(e=>{e.src=l,e.classList.remove(t,"wk–account-settings"),e.classList.add(t,"wk–sign-in"),e.style="display:none;"}),0<o.length&&o.forEach(e=>{(e="LI"===e.tagName?e.querySelector("a"):e).classList.remove(t,"wk–account-settings"),e.classList.add(t,"wk–sign-in"),e.innerHTML=n.titles.signInButton||i.sign_in||"Sign&nbsp;in"}),0<u.length&&u.forEach(e=>{e.style="display:block;"}),0<r.length&&r.forEach(e=>{e.style="display:block;"}),w&&w.classList.remove("wkwp-user-hide")}),e=window.wallkitSettings||{},s=e.integration.call.classForHandleClick||"wk-call",e.config.wk_my_account_page_url&&((a=document.querySelectorAll(".wk–sign-in")).length&&d(a,e.config.wk_my_account_page_url,[s,"wk–sign-in"]),(a=document.querySelectorAll(".wk–account-settings")).length)&&d(a,e.config.wk_my_account_page_url,[s,"wk–account-settings"])}}function d(e,n,i=[]){e&&n&&e.forEach(e=>{let t=e;i.length&&e.classList.remove(...i),(t="A"!==e.tagName?e.querySelector("a"):t)&&t.setAttribute("href",n)})}function i(e=!0){var t=window.wallkitSettings||{};if(k("F=>wkCheckPostAccess","\nwkSettings",t,"\nnewCheckAccessPromise",e,"\nwindow.wkwpCheckAccessPromise",window.wkwpCheckAccessPromise,"\nwindow.wallkitPostData",window.wallkitPostData,"\n.wkwp-paywall",document.querySelector(".wkwp-paywall")),!0===e&&(window.wkwpCheckAccessPromise=null),!window.wkwpCheckAccessPromise&&void 0!==window.wallkitPostData.config&&void 0!==window.wallkitPostData.config.check_post&&!1!==window.wallkitPostData.config.check_post&&void 0!==window.wallkitPostData.data&&void 0!==window.wallkitPostData.data.id&&""!==window.wallkitPostData.data.id&&(document.querySelector(".wkwp-paywall")||t.config.content_class_selector&&document.querySelector("."+t.config.content_class_selector)||t.config.custom_content_selector&&document.querySelector(""+t.config.custom_content_selector))){e=window.wallkitPostData.data;const i=new window.wk.content(e);k("F=>wkCheckPostAccess.checkAccess","\npostInfo",e,"\nwkPost",i),window.wkwpCheckAccessPromise=new Promise((t,n)=>{if(3===window.wallkitPostData.config.wk_paywall_display_type)return t(async function(){var e=window.wallkitPostData.data.id.split("_").slice(-1),t={post_id:e};var n={};Wallkit.getToken()&&(n["wk-token"]=Wallkit.getToken());Wallkit.getFirebaseToken()&&(n["firebase-token"]=Wallkit.getFirebaseToken());WallkitClient.session&&(n["wk-session"]=WallkitClient.session);k("F=>get_content_part","\npost_id",e,"\nurl_params",t,"\nheaders",n,"\nwindow.wallkitSettings.config.parse_scripts",window.wallkitSettings.config.parse_scripts);e=await fetch("/wp-json/wallkit/v1/get-content-part?"+new URLSearchParams(t).toString(),{method:"GET",headers:n}).then(e=>200===e.status&&e.json()).catch(e=>(console.log("WKWP ERROR: get_content_part->contentAccessResponce",e),!1));return k("F=>get_content_part","\ncontentAccessResponce",e),e}());i.checkAccess().then(e=>(k("F=>wkCheckPostAccess.wkPost.checkAccess",e),t(e))).catch(e=>(console.log("WKWP wkPost ERROR",e),n(e)))})}window.wkwpCheckAccessPromise&&window.wkwpCheckAccessPromise.then(t=>{switch(window.removeEventListener("unlockContent",l),k("F=>wkCheckPostAccess.wkwpCheckAccessPromise",t),window.wallkitPostData.config.wk_paywall_display_type){case 1:u(t);break;case 3:{var n=t;var i=window.wallkitSettings||{};var o=document.querySelector(".wkwp-paywall"),s=document.querySelector(".wkwp-paywall .wkwp-content-inner");let e=document.querySelector(".wkwp-paywall .wkwp-paywall-block");{var a;k("F=>checkAccessHandlingBackend","\nresponse",n,"\nwindow.wallkitPostData",window.wallkitPostData,"\npostContentWrapper",o,"\npostContentBody",s,"\npostPaywallBlock",e,"\nwkPaywallBlock",r),n.allowed?(a={contentScripts:[],contentPart:n.wp_content_part},n.wp_content_part&&i.config.parse_scripts&&(a.contentScripts=function(e){var t=[],n=document.createElement("div"),i=(n.innerHTML=e,n.getElementsByTagName("script"));k("F=>parseScripts","\ncontent",e,"\nscripts",i);for(let e=0;e<i.length;e++){var o=i[e],s=document.createElement("script");o.src?(s.src=o.src,s.async=!1):s.text=o.innerHTML,t.push(s)}return k("F=>parseScripts","\nnewScriptsElements",t),t}(n.wp_content_part),a.contentPart=function(e){k("F=>removeScriptsFromString","\ncontent",e);var t=document.createElement("div"),n=(t.innerHTML=e,t.getElementsByTagName("script"));for(;0<n.length;)n[0].parentNode.removeChild(n[0]);return k("F=>removeScriptsFromString","\ntempDiv.innerHTML",t.innerHTML),t.innerHTML}(n.wp_content_part)),k("F=>checkAccessHandlingBackend","\ncontentPart",a.contentPart,"\ncontentScripts",a.contentScripts),e&&e.remove(),s&&(s.innerHTML=a.contentPart||"",a.contentScripts&&a.contentScripts.forEach(e=>document.body.appendChild(e)),s.classList.remove("wkwp-content-blured"),s.style="display:block;")):(s&&(n=parseInt(s.dataset.paragraphs)||0,s.innerHTML=m(n),window.wallkitPostData.config.show_blur?s.classList.add("wkwp-content-blured"):s.style="display:none;"),!e&&i.config.paywall.content&&((e=document.createElement("div")).classList.add("wkwp-paywall-block"),e.insertAdjacentHTML("beforeend",i.config.paywall.content),s.parentNode.insertBefore(e,s)),w(e)),o.style="display:block;"}}break;default:c(t)}window.addEventListener("unlockContent",l),k("F=>wkCheckPostAccess.dispatchEvent.wkwpContentLocked"),window.dispatchEvent(new CustomEvent("wkwpContentLocked",{detail:t}))}).catch(e=>{console.log("WKWP ERROR: wkwpCheckAccessPromise",e)})}function l(e){k("F=>handleUnlockContentEvent.addEventListener.unlockContent",e),(1===window.wallkitPostData.config.wk_paywall_display_type?u:c)({allowed:!0})}function c(e){var t=window.wallkitSettings||{},n=document.querySelector(".wkwp-paywall"),i=document.querySelector(".wkwp-paywall .wkwp-content-inner");let o=document.querySelector(".wkwp-paywall .wkwp-paywall-block");k("F=>checkAccessHandlingCSS","\nresponse",e,"\nwindow.wallkitPostData",window.wallkitPostData,"\npostContentWrapper",n,"\npostContentBody",i,"\npostPaywallBlock",o,"\nwkContentBody",s,"\nwkPaywallBlock",r),i&&!s&&(s=i.innerHTML),e.allowed?(o&&o.remove(),i&&(s&&!1===t.config.skip_lorem&&(i.innerHTML=s),i.classList.remove("wkwp-content-blured"),i.style="display:block;")):(i&&(!1===t.config.skip_lorem&&(i.innerHTML=function(e){if(e&&0<e.querySelectorAll("p").length)return m(e.querySelectorAll("p").length);return""}(i)),window.wallkitPostData.config.show_blur?i.classList.add("wkwp-content-blured"):i.style="display:none;"),!o&&t.config.paywall.content&&((o=document.createElement("div")).classList.add("wkwp-paywall-block"),o.insertAdjacentHTML("beforeend",t.config.paywall.content),i.parentNode.insertBefore(o,i)),w(o)),n.style="display:block;"}function u(e){var t=window.wallkitSettings||{};let n=document.querySelector(".wkwp-paywall"),i="."+t.config.content_class_selector;t.config.custom_content_selector&&(i=t.config.custom_content_selector);var o=document.querySelector(""+i),s=document.querySelectorAll(i+" > *"),a=document.querySelectorAll(i+" > p");if(k("F=>checkAccessHandlingFrontend","\nwkPaywallBlock",e,"\nwkSettings",t,"\nwkwpPaywall",n,"\ntopElement",o,"\nallElements",s,"\nparagraphs",a),o)if(e.allowed)n&&n.remove(),s.forEach(e=>{e.classList.contains("wkwp-element")&&e.classList.remove("wkwp-element","wkwp-blur","wkwp-non-blur")});else if(o.querySelectorAll(".wkwp-element").length)w(n);else{var e=a.length>t.config.wk_free_paragraph&&0<=t.config.wk_free_paragraph?t.config.wk_free_paragraph:a.length,a=a[0<e?e-1:0],r=0===e?0:Array.prototype.indexOf.call(o.children,a)+1,l=["wkwp-element"];window.wallkitPostData.config.show_blur?l.push("wkwp-blur"):l.push("wkwp-non-blur"),k("F=>checkAccessHandlingFrontend.!allowed","\nshowParagraphs",e,"\nlastVisibleParagraph",a,"\nlastVisibleParagraphIndex",r,"\nitemClass",l);for(let e=r;e<s.length;e++)s[e].classList.add(...l);n||((n=document.createElement("div")).classList.add("wkwp-paywall"),n.insertAdjacentHTML("beforeend",`<div class="wkwp-paywall-block">${t.config.paywall.content}</div>`)),0===e?o.insertBefore(n,a):o.insertBefore(n,a.nextSibling),w(n),n.style="display:block;"}}function w(e){k("F=>paywallDisplayLoginLink",e),e&&(e=e.querySelector(".wallkit-paywall-block__login_plans"))&&(window.wk.authentication.isAuthenticated()?e.style="display:none;":e.style="display:block;")}function p(e){switch(k("F=>hideUserWithoutSessionInfo",e),e.target.id){case"auth-signup-link":case"auth-modal-close-btn":case"auth-modal-wrapper":case"auth-password-link":o()}e.target.classList.contains("wk-form-button")&&o()}function o(){var e=document.querySelector(".wk-user-update-info"),t=document.querySelector("#wk-email-auth-form"),n=document.querySelector("#wk-email-auth-form .wk-form .wk-form-header .wk-form__error");k("F=>hideUserWithoutSessionText","\nuserWithoutSessionInfo",e,"\nauthForm",t,"\nauthFormHeaderError",n),document.removeEventListener("click",p),e.remove(),t.style.display="block",n&&(n.style.display="")}function m(e){var t=["Inventore molestiae accusantium fuga delectus. Sed exercitationem aut quis reiciendis nesciunt dolore et. Voluptatibus at suscipit eius ratione perspiciatis provident. Totam minima quia occaecati maxime mollitia.","Laborum occaecati sapiente nesciunt voluptatem. Voluptatibus asperiores optio ut. Pariatur perspiciatis voluptatem beatae commodi libero modi.","Aut et ipsum beatae tenetur sit. Necessitatibus harum ea et. Natus aut quas sit dolores odio ut. Ipsum sit corporis maxime voluptatum et. Et labore id rerum nobis quia voluptatibus veniam dolores.","Sed aut repudiandae alias. Sunt est ab dignissimos quasi recusandae labore. Amet vitae illo debitis beatae nesciunt dolor dignissimos. Voluptatum consequuntur error at omnis. Tenetur quaerat facere placeat enim doloribus.","Id tempora quo placeat dolore. Eos sunt sapiente et facere. Ex facere et voluptate praesentium. Modi mollitia at non eum rerum perferendis. Nobis blanditiis consequatur incidunt.","Sint voluptas nam sed. Eligendi beatae corporis omnis ipsum facilis dicta a repudiandae. Suscipit et eligendi eveniet ipsum veritatis aut. Aspernatur adipisci fugit deserunt eos hic ut omnis. Corporis et itaque dicta similique.","Fugit dolores vitae iste qui. Dignissimos quo molestiae cumque. Sequi illo non saepe facere aut aliquid consequuntur sunt. Amet non illo dolor molestiae nulla eligendi quae. Id aut et velit quos sit ratione earum rerum.","Soluta error neque dolor perspiciatis mollitia. Voluptatem corporis doloribus fugiat et. Unde et rerum magni. Dolores nisi laudantium laboriosam voluptatem.","Dolores in illo exercitationem est enim pariatur quam corporis. Non ipsa sequi explicabo. Placeat earum aspernatur quod et quia.","Et sed amet ipsa. Qui et corrupti eaque et at dicta nesciunt vero. Est quasi eius possimus repellat ea ut. Inventore vel et possimus officiis quo consectetur similique. Culpa ut voluptatem non pariatur illum autem sapiente. Et et quidem est dolorum ab.","Amet id ipsam deleniti minima aut laboriosam. Odio ut reiciendis delectus repudiandae dolorem quaerat. Alias asperiores eum molestiae libero assumenda non voluptatibus quo. Et esse laboriosam ab velit et. Eligendi sint assumenda et.","Soluta ex voluptas minima et magnam est. Deserunt error molestiae veritatis amet. Quia provident sint molestiae omnis optio sunt sint. Commodi praesentium est perferendis inventore aut atque dolor doloribus. Minima enim velit eaque qui sed non dignissimos debitis. Rerum placeat in qui reprehenderit blanditiis nemo sed.","Magni dolore enim asperiores quae asperiores. Et quia eligendi ad quo aut labore ut iste. Quia qui esse aperiam eos illum exercitationem minus quod.","Sed ut dolorum sunt. Tempora incidunt aspernatur doloremque voluptatem quidem voluptatem magni. Est voluptatum minus id. Totam repudiandae reiciendis et.","Sint natus tenetur qui earum recusandae id optio. Dolore voluptates et accusamus et tempora sint. Dolores reiciendis iusto et quos aut. Sequi et officiis ipsum distinctio. Expedita voluptatibus corporis odio blanditiis iusto.","Ipsum dolores ut ut. Quia et voluptates accusamus neque quidem exercitationem dignissimos. Libero velit nemo omnis dolores ea repudiandae commodi accusamus. Sint tempore aut officia iste odit odio. Quibusdam sed debitis officiis.","Voluptatem quo est eius occaecati voluptatem tempore. Iste voluptas animi a voluptatem. Debitis est dolore aut fuga sunt voluptatem itaque assumenda. Id magnam officiis sint recusandae dolorum. Architecto numquam dignissimos quam corporis hic. Sit rerum amet provident.","Sed eum reiciendis aspernatur ab cupiditate. Ut atque dolores rerum veritatis voluptatem quidem ex voluptatum. Perspiciatis tempore quia quia animi vel distinctio. Id officia odit iusto facilis aliquid sequi eaque. Magnam eaque laudantium et et exercitationem.","Quod et ut voluptatibus assumenda sed. Nesciunt ea sed asperiores veniam temporibus blanditiis possimus. Quisquam eos voluptas assumenda molestiae.","Labore ipsum vitae dolorem est sed repellendus. Animi qui sequi similique dolorem sed vel omnis. Rerum saepe id atque animi."];let n=[];for(var i=0;i<e;i++)n.push(t[Math.floor(Math.random()*t.length)]);return n=n.map(e=>`<p>${e}</p>`).join("")}function k(e="",...t){void 0!==window.wallkitSettings.config&&window.wallkitSettings.config.debug&&console.log("WKWP DEBUG: ",e,...t)}window.addEventListener("DOMContentLoaded",e=>{k("DOMContentLoaded"),window.runInitWKPromise?(k("window.runInitWKPromise",window.runInitWKPromise),window.runInitWKPromise.then(e=>{k("window.runInitWKPromise.response",e),!0===e.init&&t()}).catch(e=>{console.log("WKWP ERROR: runInitWKPromise",e)})):(k("else runInitWkProcess"),t())})}();
  • wallkit/tags/3.3.8/readme.txt

    r3155283 r3161620  
    22Tags: paywall, subscriptions, recurring payments, memberships, paid membership
    33Requires at least: 4.0
    4 Tested up to: 6.4.3
     4Tested up to: 6.6.2
    55Requires PHP: 5.6
    66License: GPLv2 or later
     
    2727
    2828== Changelog ==
     29
     30= 3.3.8 =
     31*Release Date - 02 October 2024*
     32
     33#### Updates including:
     34- Update backend paywalled, return reason of blocking.
    2935
    3036= 3.3.7 =
  • wallkit/tags/3.3.8/wallkit-wp.php

    r3155283 r3161620  
    1010 * Plugin URI:        https://wallkit.net
    1111 * Description:       A Plug & Play paid-content system to manage subscribers, gather fees and drive additional content sales.
    12  * Version:           3.3.7
     12 * Version:           3.3.8
    1313 * Author:            Wallkit <dev@wallkit.net>
    1414 * Author URI:        https://wallkit.net/
     
    2727 * Rename this for your plugin and update it as you release new versions.
    2828 */
    29 define( 'WPWKP_VERSION', '3.3.7' );
     29define( 'WPWKP_VERSION', '3.3.8' );
    3030
    3131/**
  • wallkit/trunk/includes/class-wallkit-rest-controller.php

    r3155283 r3161620  
    6666            $access = apply_filters('wallkit_check_post_access', $post);
    6767        } catch (\Exception $exception) {
    68             $access = false;
     68            $access = [
     69                'allow' => false,
     70                'message' => 'Error check post access'
     71            ];
    6972        }
    7073
     
    7275            if( !$access || (isset($access['allow']) && !$access['allow']) ) {
    7376                return new WP_REST_Response([
    74                     'message' => 'User has no access to this post',
    75                     'access'    => $access
     77                    'allowed'   => false,
     78                    'data'    => $access
    7679                ], 200);
    7780            }
     
    8083            $formatted_content = Wallkit_Wp_Admin::get_formatted_content($post->post_content);
    8184            $content_part = Wallkit_Wp_Admin::get_content_body_paragraph($formatted_content, $skip_paragraphs);
    82             $content_part = apply_filters('the_content', $content_part);
    8385
    8486            return new WP_REST_Response( [
    85                 'message'       => 'success',
    86                 'access'        => $access,
    87                 'content_part'  => apply_filters('the_content', $content_part),
     87                'allowed'           => $access['allow'],
     88                'data'              => $access,
     89                'wp_content_part'   => apply_filters('the_content', $content_part),
    8890            ], 200);
    8991        }
    9092        catch (\Exception $exception) {
    91             return new WP_REST_Response( ['message' => 'Check access failed'], 409);
     93            return new WP_REST_Response( ['allowed' => false, 'message' => 'Check access failed'], 409);
    9294        }
    9395    }
  • wallkit/trunk/includes/class-wallkit-wp-access.php

    r3155283 r3161620  
    139139        if(!$WP_Post instanceof WP_Post || !isset($WP_Post->ID))
    140140        {
    141             return true;
     141            return [
     142                'allow' => true,
     143                'message' => 'Post ID not exist'
     144            ];
    142145        }
    143146
    144147        if(!isset($WP_Post->post_type) || empty($WP_Post->post_type))
    145148        {
    146             return true;
     149            return [
     150                'allow' => true,
     151                'message' => 'Post type not exist'
     152            ];
    147153        }
    148154
     
    150156        if($disablePaywallOnPost === '1')
    151157        {
    152             return true;
     158            return [
     159                'allow' => true,
     160                'message' => 'Paywall disabled on this post'
     161            ];
    153162        }
    154163
     
    158167        if(is_user_logged_in() && !self::$wallkit_Wp_Collection->get_settings()->get_option("wk_admin_paywall"))
    159168        {
    160             return true;
     169            return [
     170                'allow' => true,
     171                'message' => 'Paywall disabled for admin users'
     172            ];
    161173        }
    162174
     
    167179            if(!$Sdk instanceof \WallkitSDK\WallkitSDK)
    168180            {
    169                 return true;
     181                return [
     182                    'allow' => true,
     183                    'message' => 'Wallkit sdk not initialised'
     184                ];
    170185            }
    171186
     
    175190            $registeredPostTypes = self::$wallkit_Wp_Collection->get_settings()->get_option("wk_check_post_type_access");
    176191            if( !(!empty($registeredPostTypes) && array_key_exists($WP_Post->post_type, $registeredPostTypes) && $registeredPostTypes[$WP_Post->post_type]) ) {
    177                 return true;
     192                return [
     193                    'allow' => true,
     194                    'message' => 'Post type allowed'
     195                ];
    178196            }
    179197
     
    182200                ->toArray();
    183201
    184             return [
    185                 'allow' => (bool) (isset($access["allow"]) ? $access["allow"] : false),
    186                 'response' => $access,
    187             ];
     202            return $access;
    188203        }
    189204        catch(\WallkitSDK\Exceptions\WallkitException $exception)
  • wallkit/trunk/public/js/wallkit-setup.js

    r3155283 r3161620  
    429429                //If this is backed paywalled skip check post access on frontend, check access on backend.
    430430                if(window.wallkitPostData.config.wk_paywall_display_type === 3) {
    431                     resolve({});
    432                     return;
    433                 }
    434 
     431                    return resolve(get_content_part());
     432                }
    435433                wkPost.checkAccess().then((response) => {
    436434                    wkwpDebug('F=>wkCheckPostAccess.wkPost.checkAccess', response);
    437                     resolve(response);
     435                    return resolve(response);
    438436                }).catch((error) => {
    439437                    console.log('WKWP wkPost ERROR', error);
    440                     reject(error);
     438                    return reject(error);
    441439                });
    442440            });
     
    449447                switch (window.wallkitPostData.config.wk_paywall_display_type) {
    450448                    case 1: checkAccessHandlingFrontend(response); break;
    451                     case 3: checkAccessHandlingBackend(); break;
     449                    case 3: checkAccessHandlingBackend(response); break;
    452450                    default: checkAccessHandlingCSS(response);
    453451                }
     
    543541    // Change view for user based on access. Partial process on backend.
    544542    // Hard locking content
    545     async function checkAccessHandlingBackend() {
     543    function checkAccessHandlingBackend(response) {
    546544        let wkSettings = window["wallkitSettings"] || {};
    547545        const postContentWrapper    = document.querySelector(".wkwp-paywall");
     
    549547        let postPaywallBlock        = document.querySelector(".wkwp-paywall .wkwp-paywall-block");
    550548        wkwpDebug('F=>checkAccessHandlingBackend',
     549            '\nresponse', response,
    551550            '\nwindow.wallkitPostData', window.wallkitPostData,
    552551            '\npostContentWrapper', postContentWrapper,
     
    555554            '\nwkPaywallBlock', wkPaywallBlock);
    556555
    557         let contentData = await get_content_part();
    558         wkwpDebug('F=>checkAccessHandlingBackend=>get_content_part',
    559             '\ncontentPart', contentData.contentPart,
    560             '\ncontentScripts', contentData.contentScripts);
    561         if (!contentData) {
     556
     557        if (!response.allowed) {
    562558            if (postContentBody) {
    563559                const p_count = parseInt(postContentBody.dataset.paragraphs) || 0;
     
    582578            postContentWrapper.style = "display:block;";
    583579        } else {
     580            let contentData = {
     581                contentScripts: [],
     582                contentPart: response.wp_content_part
     583            };
     584
     585            if(response.wp_content_part
     586                && wkSettings.config.parse_scripts) {
     587                contentData.contentScripts = parseScripts(response.wp_content_part);
     588                contentData.contentPart = removeScriptsFromString(response.wp_content_part);
     589            }
     590            wkwpDebug('F=>checkAccessHandlingBackend',
     591                '\ncontentPart', contentData.contentPart,
     592                '\ncontentScripts', contentData.contentScripts);
     593
    584594            if (postPaywallBlock) {
    585595                postPaywallBlock.remove();
     
    642652        );
    643653
    644         if(contentAccessResponce.content_part
    645             && window.wallkitSettings.config.parse_scripts) {
    646             return {
    647                 contentScripts: parseScripts(contentAccessResponce.content_part),
    648                 contentPart: removeScriptsFromString(contentAccessResponce.content_part)
    649             };
    650         }
    651 
    652         if(contentAccessResponce.content_part) {
    653             return {
    654                 contentScripts: [],
    655                 contentPart: contentAccessResponce.content_part
    656             };
    657         }
    658 
    659         return false;
     654        return contentAccessResponce;
    660655    }
    661656
  • wallkit/trunk/public/js/wallkit-setup.min.js

    r3155283 r3161620  
    1 !function(){var e=document.querySelector("body");e.classList.contains("wkwp-user-hide")||e.classList.add("wkwp-user-hide")}(),function(){window.wkwpCheckAccessPromise=null;var s="",a="";function t(){let r=window.wallkitSettings||{},t=document.querySelector(r.config.inline_modals_selector);m("F=>runInitWkProcess.wkSettings",r),void 0!==r.integration&&(r.config.inline_modals_selector&&t&&t.dataset.modal&&(m("F=>runInitWkProcess.inlineModalsContainer","\ninline_modals_selector",r.config.inline_modals_selector,"\ninlineModalsContainer",t,"\ninlineModalsContainer.dataset.modal",t.dataset.modal),window.location.hash="WkModal("+t.dataset.modal+")"),window.wk=window.wk||[],window.wk.push(["ready",e=>{m("F=>runInitWkProcess.window.wk ready callback",window.wk,e),m("F=>runInitWkProcess.window.wk.authentication",window.wk.authentication,"\nwindow.wk.authentication.isAuthenticated()=>",window.wk.authentication.isAuthenticated()),n(),i(!1),window.wk.on("wk-event-auth",function(){m("E=>wk.events.subscribe=>wk-event-auth"),n(),i()}),window.wk.on("wk-event-registration",function(){m("E=>wk.events.subscribe=>wk-event-registration"),n(),i()}),window.wk.on("success-auth",function({register:e}){m("E=>wk.events.subscribe=>success-auth",e),!0===r.config.wk_auth_migrated_users&&(e=document.querySelector(".wk-user-update-info"),m("E=>wk.events.subscribe=>success-auth","\nwk_auth_migrated_users=>",r.config.wk_auth_migrated_users,"\nuserWithoutSessionInfo=>",e),e)&&w(),r.config.inline_modals_selector&&t&&window.wk.modal(r.config.wk_modal_after_sign_in),n(),i()}),window.wk.on("logout",function(){m("E=>wk.events.subscribe=>logout",r.config.reload_on_logout),!0!==r.config.reload_on_logout?(n(),i(),window.wk.popup.hide()):location.reload()}),window.wk.on("wk-event-transaction",function(){m("E=>wk.events.subscribe=>wk-event-transaction"),i()}),!0===r.config.wk_auth_migrated_users&&window.wk.on("pre-sign-in",async e=>{m("E=>wk.events.subscribe=>pre-sign-in",e);var t,n,i=document.querySelector("#auth-modal-wallkit-modal-spinner");i.style.display="flex";let o=!0,s=!1,a=!1;return await Wallkit.checkUserActivity(e.email).then(e=>{m("E=>wk.events.subscribe=>pre-sign-in=>Wallkit.checkUserActivity.data",e),void 0!==e&&(void 0!==e.is_exist_sessions&&"boolean"==typeof e.is_exist_sessions&&(o=e.is_exist_sessions),void 0!==e.has_user_resource_relationship_password)&&"boolean"==typeof e.has_user_resource_relationship_password&&(a=e.has_user_resource_relationship_password)},e=>{m("E=>wk.events.subscribe=>pre-sign-in=>Wallkit.checkUserActivity.error",e)}),o||a||(m("E=>wk.events.subscribe=>pre-sign-in=>password-reset","\nis_exist_sessions=>",o,"\nuser_has_password=>",a),await window.wk.sdk.methods.client.post({path:"/firebase/password-reset",data:{email:e.email}}).then(e=>{m("E=>wk.events.subscribe=>pre-sign-in=>password-reset.responce",e),s=!0},e=>{m("E=>wk.events.subscribe=>pre-sign-in=>password-reset.error",e)})),s&&(e=document.querySelector("#wk-email-auth-form"),m("E=>wk.events.subscribe=>pre-sign-in","\nis_password_reset=>",s,"\nauthForm=>",e),(t=e.querySelector(".wk-form").querySelector(".wk-form__error"))&&(t.style.display="none"),t=document.createElement("div"),n='<div style="padding: 24px 24px 0 24px;">'+r.config.wk_auth_migrated_users_text+"</div>",t.classList.add("wk-user-update-info"),t.insertAdjacentHTML("beforeend",n),e.parentNode.insertBefore(t,e),e.style.display="none",document.addEventListener("click",u)),i.style.display="none",!0})}]),r.config.inline_modals_selector&&t&&(r.integration.ui={type:"inline",selector:r.config.inline_modals_selector}),"function"==typeof WallkitIntegration?window.wk=new WallkitIntegration(r.integration):console.log("WKWP ERROR: WallkitIntegration function does not exist"))}async function n(){let n=window.wallkitSettings||{},i=window.wallkitTranslations||{};const o=document.querySelectorAll(".wkwp-user-my-account-button");if(m("F=>wkShowUserStatus","\nwkSettings=>",n,"\naccountStatusSpanEls=>",i,"\naccountStatusSpanEls=>",o),o.length){const r=document.querySelectorAll(".wkwp-login-block"),l="https://www.gravatar.com/avatar/?d=mp",c=document.querySelectorAll(".wkwp-user-my-account-img"),u=document.querySelectorAll(".wkwp-site-logo");let t=n.integration.call.classForHandleClick||"wk-call";const w=document.querySelector("body.wkwp-user-hide");var e,s,a;m("F=>wkShowUserStatus.args","\nuserAccountBlock",r,"\nimgDefaultSrc",l,"\naccountStatusImgEls",c,"\naccountSiteLogo",u,"\nwkCallClass",t,"\nwindow.wk.authentication.isAuthenticated()=>",window.wk.authentication.isAuthenticated()),window.wkwpGetUser=new Promise((t,n)=>{window.wk.authentication.isAuthenticated()?window.wk.sdk.methods.client.get({path:"/user"}).then(e=>{m("F=>wkShowUserStatus.wkwpGetUser.wk.sdk.methods.client(/user)",e),0<e.id&&(window.wk.sdk.methods.user=e),t(e)},e=>{console.log("F=>wkShowUserStatus.wkwpGetUser ERROR",e),n(e)}):(m("F=>wkShowUserStatus.wkwpGetUser.wk.authentication.isAuthenticated()",window.wk.authentication.isAuthenticated()),n())}),await window.wkwpGetUser.then(e=>{m("F=>wkShowUserStatus.wkwpGetUser.then.response",e),m("F=>wkShowUserStatus.dispatchEvent.wkwpGetUserCompleted"),window.dispatchEvent(new CustomEvent("wkwpGetUserCompleted",{detail:e})),0<e.id&&(0<c.length&&c.forEach(e=>{e.src=window.wk.sdk.methods.user.photos.image_100,e.classList.remove(t,"wk–sign-in"),e.classList.add(t,"wk–account-settings"),e.style="display:block;"}),0<o.length&&o.forEach(e=>{(e="LI"===e.tagName?e.querySelector("a"):e).innerHTML=n.titles.myAccountButton||i.my_account||"My&nbsp;Account",e.classList.remove(t,"wk–sign-in"),e.classList.add(t,"wk–account-settings")}),0<u.length)&&u.forEach(e=>{e.style="display:none;"}),0<r.length&&r.forEach(e=>{e.style="display:block;"}),w&&w.classList.remove("wkwp-user-hide")}).catch(e=>{m("F=>wkShowUserStatus.wkwpGetUser.catch.error",e),m("F=>wkShowUserStatus.dispatchEvent.wkwpGetUserCompleted.error"),window.dispatchEvent(new CustomEvent("wkwpGetUserCompleted",{detail:!1})),0<c.length&&c.forEach(e=>{e.src=l,e.classList.remove(t,"wk–account-settings"),e.classList.add(t,"wk–sign-in"),e.style="display:none;"}),0<o.length&&o.forEach(e=>{(e="LI"===e.tagName?e.querySelector("a"):e).classList.remove(t,"wk–account-settings"),e.classList.add(t,"wk–sign-in"),e.innerHTML=n.titles.signInButton||i.sign_in||"Sign&nbsp;in"}),0<u.length&&u.forEach(e=>{e.style="display:block;"}),0<r.length&&r.forEach(e=>{e.style="display:block;"}),w&&w.classList.remove("wkwp-user-hide")}),e=window.wallkitSettings||{},s=e.integration.call.classForHandleClick||"wk-call",e.config.wk_my_account_page_url&&((a=document.querySelectorAll(".wk–sign-in")).length&&d(a,e.config.wk_my_account_page_url,[s,"wk–sign-in"]),(a=document.querySelectorAll(".wk–account-settings")).length)&&d(a,e.config.wk_my_account_page_url,[s,"wk–account-settings"])}}function d(e,n,i=[]){e&&n&&e.forEach(e=>{let t=e;i.length&&e.classList.remove(...i),(t="A"!==e.tagName?e.querySelector("a"):t)&&t.setAttribute("href",n)})}function i(e=!0){var t=window.wallkitSettings||{};if(m("F=>wkCheckPostAccess","\nwkSettings",t,"\nnewCheckAccessPromise",e,"\nwindow.wkwpCheckAccessPromise",window.wkwpCheckAccessPromise,"\nwindow.wallkitPostData",window.wallkitPostData,"\n.wkwp-paywall",document.querySelector(".wkwp-paywall")),!0===e&&(window.wkwpCheckAccessPromise=null),!window.wkwpCheckAccessPromise&&void 0!==window.wallkitPostData.config&&void 0!==window.wallkitPostData.config.check_post&&!1!==window.wallkitPostData.config.check_post&&void 0!==window.wallkitPostData.data&&void 0!==window.wallkitPostData.data.id&&""!==window.wallkitPostData.data.id&&(document.querySelector(".wkwp-paywall")||t.config.content_class_selector&&document.querySelector("."+t.config.content_class_selector)||t.config.custom_content_selector&&document.querySelector(""+t.config.custom_content_selector))){e=window.wallkitPostData.data;const i=new window.wk.content(e);m("F=>wkCheckPostAccess.checkAccess","\npostInfo",e,"\nwkPost",i),window.wkwpCheckAccessPromise=new Promise((t,n)=>{3===window.wallkitPostData.config.wk_paywall_display_type?t({}):i.checkAccess().then(e=>{m("F=>wkCheckPostAccess.wkPost.checkAccess",e),t(e)}).catch(e=>{console.log("WKWP wkPost ERROR",e),n(e)})})}window.wkwpCheckAccessPromise&&window.wkwpCheckAccessPromise.then(e=>{switch(window.removeEventListener("unlockContent",o),m("F=>wkCheckPostAccess.wkwpCheckAccessPromise",e),window.wallkitPostData.config.wk_paywall_display_type){case 1:l(e);break;case 3:!async function(){var e=window.wallkitSettings||{};var t=document.querySelector(".wkwp-paywall"),n=document.querySelector(".wkwp-paywall .wkwp-content-inner");let i=document.querySelector(".wkwp-paywall .wkwp-paywall-block"),o=(m("F=>checkAccessHandlingBackend","\nwindow.wallkitPostData",window.wallkitPostData,"\npostContentWrapper",t,"\npostContentBody",n,"\npostPaywallBlock",i,"\nwkPaywallBlock",a),await async function(){var e=window.wallkitPostData.data.id.split("_").slice(-1),t={post_id:e};var n={};Wallkit.getToken()&&(n["wk-token"]=Wallkit.getToken());Wallkit.getFirebaseToken()&&(n["firebase-token"]=Wallkit.getFirebaseToken());WallkitClient.session&&(n["wk-session"]=WallkitClient.session);m("F=>get_content_part","\npost_id",e,"\nurl_params",t,"\nheaders",n,"\nwindow.wallkitSettings.config.parse_scripts",window.wallkitSettings.config.parse_scripts);e=await fetch("/wp-json/wallkit/v1/get-content-part?"+new URLSearchParams(t).toString(),{method:"GET",headers:n}).then(e=>200===e.status&&e.json()).catch(e=>(console.log("WKWP ERROR: get_content_part->contentAccessResponce",e),!1));if(m("F=>get_content_part","\ncontentAccessResponce",e),e.content_part&&window.wallkitSettings.config.parse_scripts)return{contentScripts:function(e){var t=[],n=document.createElement("div"),i=(n.innerHTML=e,n.getElementsByTagName("script"));m("F=>parseScripts","\ncontent",e,"\nscripts",i);for(let e=0;e<i.length;e++){var o=i[e],s=document.createElement("script");o.src?(s.src=o.src,s.async=!1):s.text=o.innerHTML,t.push(s)}return m("F=>parseScripts","\nnewScriptsElements",t),t}(e.content_part),contentPart:function(e){m("F=>removeScriptsFromString","\ncontent",e);var t=document.createElement("div"),n=(t.innerHTML=e,t.getElementsByTagName("script"));for(;0<n.length;)n[0].parentNode.removeChild(n[0]);return m("F=>removeScriptsFromString","\ntempDiv.innerHTML",t.innerHTML),t.innerHTML}(e.content_part)};if(e.content_part)return{contentScripts:[],contentPart:e.content_part};return!1}());{var s;m("F=>checkAccessHandlingBackend=>get_content_part","\ncontentPart",o.contentPart,"\ncontentScripts",o.contentScripts),o?(i&&i.remove(),n&&(n.innerHTML=o.contentPart||"",o.contentScripts&&o.contentScripts.forEach(e=>document.body.appendChild(e)),n.classList.remove("wkwp-content-blured"),n.style="display:block;")):(n&&(s=parseInt(n.dataset.paragraphs)||0,n.innerHTML=p(s),window.wallkitPostData.config.show_blur?n.classList.add("wkwp-content-blured"):n.style="display:none;"),!i&&e.config.paywall.content&&((i=document.createElement("div")).classList.add("wkwp-paywall-block"),i.insertAdjacentHTML("beforeend",e.config.paywall.content),n.parentNode.insertBefore(i,n)),c(i)),t.style="display:block;"}}();break;default:r(e)}window.addEventListener("unlockContent",o),m("F=>wkCheckPostAccess.dispatchEvent.wkwpContentLocked"),window.dispatchEvent(new CustomEvent("wkwpContentLocked",{detail:e}))}).catch(e=>{console.log("WKWP ERROR: wkwpCheckAccessPromise",e)})}function o(e){m("F=>handleUnlockContentEvent.addEventListener.unlockContent",e),(1===window.wallkitPostData.config.wk_paywall_display_type?l:r)({allowed:!0})}function r(e){var t=window.wallkitSettings||{},n=document.querySelector(".wkwp-paywall"),i=document.querySelector(".wkwp-paywall .wkwp-content-inner");let o=document.querySelector(".wkwp-paywall .wkwp-paywall-block");m("F=>checkAccessHandlingCSS","\nresponse",e,"\nwindow.wallkitPostData",window.wallkitPostData,"\npostContentWrapper",n,"\npostContentBody",i,"\npostPaywallBlock",o,"\nwkContentBody",s,"\nwkPaywallBlock",a),i&&!s&&(s=i.innerHTML),e.allowed?(o&&o.remove(),i&&(s&&!1===t.config.skip_lorem&&(i.innerHTML=s),i.classList.remove("wkwp-content-blured"),i.style="display:block;")):(i&&(!1===t.config.skip_lorem&&(i.innerHTML=function(e){if(e&&0<e.querySelectorAll("p").length)return p(e.querySelectorAll("p").length);return""}(i)),window.wallkitPostData.config.show_blur?i.classList.add("wkwp-content-blured"):i.style="display:none;"),!o&&t.config.paywall.content&&((o=document.createElement("div")).classList.add("wkwp-paywall-block"),o.insertAdjacentHTML("beforeend",t.config.paywall.content),i.parentNode.insertBefore(o,i)),c(o)),n.style="display:block;"}function l(e){var t=window.wallkitSettings||{};let n=document.querySelector(".wkwp-paywall"),i="."+t.config.content_class_selector;t.config.custom_content_selector&&(i=t.config.custom_content_selector);var o=document.querySelector(""+i),s=document.querySelectorAll(i+" > *"),a=document.querySelectorAll(i+" > p");if(m("F=>checkAccessHandlingFrontend","\nwkPaywallBlock",e,"\nwkSettings",t,"\nwkwpPaywall",n,"\ntopElement",o,"\nallElements",s,"\nparagraphs",a),o)if(e.allowed)n&&n.remove(),s.forEach(e=>{e.classList.contains("wkwp-element")&&e.classList.remove("wkwp-element","wkwp-blur","wkwp-non-blur")});else if(o.querySelectorAll(".wkwp-element").length)c(n);else{var e=a.length>t.config.wk_free_paragraph&&0<=t.config.wk_free_paragraph?t.config.wk_free_paragraph:a.length,a=a[0<e?e-1:0],r=0===e?0:Array.prototype.indexOf.call(o.children,a)+1,l=["wkwp-element"];window.wallkitPostData.config.show_blur?l.push("wkwp-blur"):l.push("wkwp-non-blur"),m("F=>checkAccessHandlingFrontend.!allowed","\nshowParagraphs",e,"\nlastVisibleParagraph",a,"\nlastVisibleParagraphIndex",r,"\nitemClass",l);for(let e=r;e<s.length;e++)s[e].classList.add(...l);n||((n=document.createElement("div")).classList.add("wkwp-paywall"),n.insertAdjacentHTML("beforeend",`<div class="wkwp-paywall-block">${t.config.paywall.content}</div>`)),0===e?o.insertBefore(n,a):o.insertBefore(n,a.nextSibling),c(n),n.style="display:block;"}}function c(e){m("F=>paywallDisplayLoginLink",e),e&&(e=e.querySelector(".wallkit-paywall-block__login_plans"))&&(window.wk.authentication.isAuthenticated()?e.style="display:none;":e.style="display:block;")}function u(e){switch(m("F=>hideUserWithoutSessionInfo",e),e.target.id){case"auth-signup-link":case"auth-modal-close-btn":case"auth-modal-wrapper":case"auth-password-link":w()}e.target.classList.contains("wk-form-button")&&w()}function w(){var e=document.querySelector(".wk-user-update-info"),t=document.querySelector("#wk-email-auth-form"),n=document.querySelector("#wk-email-auth-form .wk-form .wk-form-header .wk-form__error");m("F=>hideUserWithoutSessionText","\nuserWithoutSessionInfo",e,"\nauthForm",t,"\nauthFormHeaderError",n),document.removeEventListener("click",u),e.remove(),t.style.display="block",n&&(n.style.display="")}function p(e){var t=["Inventore molestiae accusantium fuga delectus. Sed exercitationem aut quis reiciendis nesciunt dolore et. Voluptatibus at suscipit eius ratione perspiciatis provident. Totam minima quia occaecati maxime mollitia.","Laborum occaecati sapiente nesciunt voluptatem. Voluptatibus asperiores optio ut. Pariatur perspiciatis voluptatem beatae commodi libero modi.","Aut et ipsum beatae tenetur sit. Necessitatibus harum ea et. Natus aut quas sit dolores odio ut. Ipsum sit corporis maxime voluptatum et. Et labore id rerum nobis quia voluptatibus veniam dolores.","Sed aut repudiandae alias. Sunt est ab dignissimos quasi recusandae labore. Amet vitae illo debitis beatae nesciunt dolor dignissimos. Voluptatum consequuntur error at omnis. Tenetur quaerat facere placeat enim doloribus.","Id tempora quo placeat dolore. Eos sunt sapiente et facere. Ex facere et voluptate praesentium. Modi mollitia at non eum rerum perferendis. Nobis blanditiis consequatur incidunt.","Sint voluptas nam sed. Eligendi beatae corporis omnis ipsum facilis dicta a repudiandae. Suscipit et eligendi eveniet ipsum veritatis aut. Aspernatur adipisci fugit deserunt eos hic ut omnis. Corporis et itaque dicta similique.","Fugit dolores vitae iste qui. Dignissimos quo molestiae cumque. Sequi illo non saepe facere aut aliquid consequuntur sunt. Amet non illo dolor molestiae nulla eligendi quae. Id aut et velit quos sit ratione earum rerum.","Soluta error neque dolor perspiciatis mollitia. Voluptatem corporis doloribus fugiat et. Unde et rerum magni. Dolores nisi laudantium laboriosam voluptatem.","Dolores in illo exercitationem est enim pariatur quam corporis. Non ipsa sequi explicabo. Placeat earum aspernatur quod et quia.","Et sed amet ipsa. Qui et corrupti eaque et at dicta nesciunt vero. Est quasi eius possimus repellat ea ut. Inventore vel et possimus officiis quo consectetur similique. Culpa ut voluptatem non pariatur illum autem sapiente. Et et quidem est dolorum ab.","Amet id ipsam deleniti minima aut laboriosam. Odio ut reiciendis delectus repudiandae dolorem quaerat. Alias asperiores eum molestiae libero assumenda non voluptatibus quo. Et esse laboriosam ab velit et. Eligendi sint assumenda et.","Soluta ex voluptas minima et magnam est. Deserunt error molestiae veritatis amet. Quia provident sint molestiae omnis optio sunt sint. Commodi praesentium est perferendis inventore aut atque dolor doloribus. Minima enim velit eaque qui sed non dignissimos debitis. Rerum placeat in qui reprehenderit blanditiis nemo sed.","Magni dolore enim asperiores quae asperiores. Et quia eligendi ad quo aut labore ut iste. Quia qui esse aperiam eos illum exercitationem minus quod.","Sed ut dolorum sunt. Tempora incidunt aspernatur doloremque voluptatem quidem voluptatem magni. Est voluptatum minus id. Totam repudiandae reiciendis et.","Sint natus tenetur qui earum recusandae id optio. Dolore voluptates et accusamus et tempora sint. Dolores reiciendis iusto et quos aut. Sequi et officiis ipsum distinctio. Expedita voluptatibus corporis odio blanditiis iusto.","Ipsum dolores ut ut. Quia et voluptates accusamus neque quidem exercitationem dignissimos. Libero velit nemo omnis dolores ea repudiandae commodi accusamus. Sint tempore aut officia iste odit odio. Quibusdam sed debitis officiis.","Voluptatem quo est eius occaecati voluptatem tempore. Iste voluptas animi a voluptatem. Debitis est dolore aut fuga sunt voluptatem itaque assumenda. Id magnam officiis sint recusandae dolorum. Architecto numquam dignissimos quam corporis hic. Sit rerum amet provident.","Sed eum reiciendis aspernatur ab cupiditate. Ut atque dolores rerum veritatis voluptatem quidem ex voluptatum. Perspiciatis tempore quia quia animi vel distinctio. Id officia odit iusto facilis aliquid sequi eaque. Magnam eaque laudantium et et exercitationem.","Quod et ut voluptatibus assumenda sed. Nesciunt ea sed asperiores veniam temporibus blanditiis possimus. Quisquam eos voluptas assumenda molestiae.","Labore ipsum vitae dolorem est sed repellendus. Animi qui sequi similique dolorem sed vel omnis. Rerum saepe id atque animi."];let n=[];for(var i=0;i<e;i++)n.push(t[Math.floor(Math.random()*t.length)]);return n=n.map(e=>`<p>${e}</p>`).join("")}function m(e="",...t){void 0!==window.wallkitSettings.config&&window.wallkitSettings.config.debug&&console.log("WKWP DEBUG: ",e,...t)}window.addEventListener("DOMContentLoaded",e=>{m("DOMContentLoaded"),window.runInitWKPromise?(m("window.runInitWKPromise",window.runInitWKPromise),window.runInitWKPromise.then(e=>{m("window.runInitWKPromise.response",e),!0===e.init&&t()}).catch(e=>{console.log("WKWP ERROR: runInitWKPromise",e)})):(m("else runInitWkProcess"),t())})}();
     1!function(){var e=document.querySelector("body");e.classList.contains("wkwp-user-hide")||e.classList.add("wkwp-user-hide")}(),function(){window.wkwpCheckAccessPromise=null;var s="",r="";function t(){let r=window.wallkitSettings||{},t=document.querySelector(r.config.inline_modals_selector);k("F=>runInitWkProcess.wkSettings",r),void 0!==r.integration&&(r.config.inline_modals_selector&&t&&t.dataset.modal&&(k("F=>runInitWkProcess.inlineModalsContainer","\ninline_modals_selector",r.config.inline_modals_selector,"\ninlineModalsContainer",t,"\ninlineModalsContainer.dataset.modal",t.dataset.modal),window.location.hash="WkModal("+t.dataset.modal+")"),window.wk=window.wk||[],window.wk.push(["ready",e=>{k("F=>runInitWkProcess.window.wk ready callback",window.wk,e),k("F=>runInitWkProcess.window.wk.authentication",window.wk.authentication,"\nwindow.wk.authentication.isAuthenticated()=>",window.wk.authentication.isAuthenticated()),n(),i(!1),window.wk.on("wk-event-auth",function(){k("E=>wk.events.subscribe=>wk-event-auth"),n(),i()}),window.wk.on("wk-event-registration",function(){k("E=>wk.events.subscribe=>wk-event-registration"),n(),i()}),window.wk.on("success-auth",function({register:e}){k("E=>wk.events.subscribe=>success-auth",e),!0===r.config.wk_auth_migrated_users&&(e=document.querySelector(".wk-user-update-info"),k("E=>wk.events.subscribe=>success-auth","\nwk_auth_migrated_users=>",r.config.wk_auth_migrated_users,"\nuserWithoutSessionInfo=>",e),e)&&o(),r.config.inline_modals_selector&&t&&window.wk.modal(r.config.wk_modal_after_sign_in),n(),i()}),window.wk.on("logout",function(){k("E=>wk.events.subscribe=>logout",r.config.reload_on_logout),!0!==r.config.reload_on_logout?(n(),i(),window.wk.popup.hide()):location.reload()}),window.wk.on("wk-event-transaction",function(){k("E=>wk.events.subscribe=>wk-event-transaction"),i()}),!0===r.config.wk_auth_migrated_users&&window.wk.on("pre-sign-in",async e=>{k("E=>wk.events.subscribe=>pre-sign-in",e);var t,n,i=document.querySelector("#auth-modal-wallkit-modal-spinner");i.style.display="flex";let o=!0,s=!1,a=!1;return await Wallkit.checkUserActivity(e.email).then(e=>{k("E=>wk.events.subscribe=>pre-sign-in=>Wallkit.checkUserActivity.data",e),void 0!==e&&(void 0!==e.is_exist_sessions&&"boolean"==typeof e.is_exist_sessions&&(o=e.is_exist_sessions),void 0!==e.has_user_resource_relationship_password)&&"boolean"==typeof e.has_user_resource_relationship_password&&(a=e.has_user_resource_relationship_password)},e=>{k("E=>wk.events.subscribe=>pre-sign-in=>Wallkit.checkUserActivity.error",e)}),o||a||(k("E=>wk.events.subscribe=>pre-sign-in=>password-reset","\nis_exist_sessions=>",o,"\nuser_has_password=>",a),await window.wk.sdk.methods.client.post({path:"/firebase/password-reset",data:{email:e.email}}).then(e=>{k("E=>wk.events.subscribe=>pre-sign-in=>password-reset.responce",e),s=!0},e=>{k("E=>wk.events.subscribe=>pre-sign-in=>password-reset.error",e)})),s&&(e=document.querySelector("#wk-email-auth-form"),k("E=>wk.events.subscribe=>pre-sign-in","\nis_password_reset=>",s,"\nauthForm=>",e),(t=e.querySelector(".wk-form").querySelector(".wk-form__error"))&&(t.style.display="none"),t=document.createElement("div"),n='<div style="padding: 24px 24px 0 24px;">'+r.config.wk_auth_migrated_users_text+"</div>",t.classList.add("wk-user-update-info"),t.insertAdjacentHTML("beforeend",n),e.parentNode.insertBefore(t,e),e.style.display="none",document.addEventListener("click",p)),i.style.display="none",!0})}]),r.config.inline_modals_selector&&t&&(r.integration.ui={type:"inline",selector:r.config.inline_modals_selector}),"function"==typeof WallkitIntegration?window.wk=new WallkitIntegration(r.integration):console.log("WKWP ERROR: WallkitIntegration function does not exist"))}async function n(){let n=window.wallkitSettings||{},i=window.wallkitTranslations||{};const o=document.querySelectorAll(".wkwp-user-my-account-button");if(k("F=>wkShowUserStatus","\nwkSettings=>",n,"\naccountStatusSpanEls=>",i,"\naccountStatusSpanEls=>",o),o.length){const r=document.querySelectorAll(".wkwp-login-block"),l="https://www.gravatar.com/avatar/?d=mp",c=document.querySelectorAll(".wkwp-user-my-account-img"),u=document.querySelectorAll(".wkwp-site-logo");let t=n.integration.call.classForHandleClick||"wk-call";const w=document.querySelector("body.wkwp-user-hide");var e,s,a;k("F=>wkShowUserStatus.args","\nuserAccountBlock",r,"\nimgDefaultSrc",l,"\naccountStatusImgEls",c,"\naccountSiteLogo",u,"\nwkCallClass",t,"\nwindow.wk.authentication.isAuthenticated()=>",window.wk.authentication.isAuthenticated()),window.wkwpGetUser=new Promise((t,n)=>{window.wk.authentication.isAuthenticated()?window.wk.sdk.methods.client.get({path:"/user"}).then(e=>{k("F=>wkShowUserStatus.wkwpGetUser.wk.sdk.methods.client(/user)",e),0<e.id&&(window.wk.sdk.methods.user=e),t(e)},e=>{console.log("F=>wkShowUserStatus.wkwpGetUser ERROR",e),n(e)}):(k("F=>wkShowUserStatus.wkwpGetUser.wk.authentication.isAuthenticated()",window.wk.authentication.isAuthenticated()),n())}),await window.wkwpGetUser.then(e=>{k("F=>wkShowUserStatus.wkwpGetUser.then.response",e),k("F=>wkShowUserStatus.dispatchEvent.wkwpGetUserCompleted"),window.dispatchEvent(new CustomEvent("wkwpGetUserCompleted",{detail:e})),0<e.id&&(0<c.length&&c.forEach(e=>{e.src=window.wk.sdk.methods.user.photos.image_100,e.classList.remove(t,"wk–sign-in"),e.classList.add(t,"wk–account-settings"),e.style="display:block;"}),0<o.length&&o.forEach(e=>{(e="LI"===e.tagName?e.querySelector("a"):e).innerHTML=n.titles.myAccountButton||i.my_account||"My&nbsp;Account",e.classList.remove(t,"wk–sign-in"),e.classList.add(t,"wk–account-settings")}),0<u.length)&&u.forEach(e=>{e.style="display:none;"}),0<r.length&&r.forEach(e=>{e.style="display:block;"}),w&&w.classList.remove("wkwp-user-hide")}).catch(e=>{k("F=>wkShowUserStatus.wkwpGetUser.catch.error",e),k("F=>wkShowUserStatus.dispatchEvent.wkwpGetUserCompleted.error"),window.dispatchEvent(new CustomEvent("wkwpGetUserCompleted",{detail:!1})),0<c.length&&c.forEach(e=>{e.src=l,e.classList.remove(t,"wk–account-settings"),e.classList.add(t,"wk–sign-in"),e.style="display:none;"}),0<o.length&&o.forEach(e=>{(e="LI"===e.tagName?e.querySelector("a"):e).classList.remove(t,"wk–account-settings"),e.classList.add(t,"wk–sign-in"),e.innerHTML=n.titles.signInButton||i.sign_in||"Sign&nbsp;in"}),0<u.length&&u.forEach(e=>{e.style="display:block;"}),0<r.length&&r.forEach(e=>{e.style="display:block;"}),w&&w.classList.remove("wkwp-user-hide")}),e=window.wallkitSettings||{},s=e.integration.call.classForHandleClick||"wk-call",e.config.wk_my_account_page_url&&((a=document.querySelectorAll(".wk–sign-in")).length&&d(a,e.config.wk_my_account_page_url,[s,"wk–sign-in"]),(a=document.querySelectorAll(".wk–account-settings")).length)&&d(a,e.config.wk_my_account_page_url,[s,"wk–account-settings"])}}function d(e,n,i=[]){e&&n&&e.forEach(e=>{let t=e;i.length&&e.classList.remove(...i),(t="A"!==e.tagName?e.querySelector("a"):t)&&t.setAttribute("href",n)})}function i(e=!0){var t=window.wallkitSettings||{};if(k("F=>wkCheckPostAccess","\nwkSettings",t,"\nnewCheckAccessPromise",e,"\nwindow.wkwpCheckAccessPromise",window.wkwpCheckAccessPromise,"\nwindow.wallkitPostData",window.wallkitPostData,"\n.wkwp-paywall",document.querySelector(".wkwp-paywall")),!0===e&&(window.wkwpCheckAccessPromise=null),!window.wkwpCheckAccessPromise&&void 0!==window.wallkitPostData.config&&void 0!==window.wallkitPostData.config.check_post&&!1!==window.wallkitPostData.config.check_post&&void 0!==window.wallkitPostData.data&&void 0!==window.wallkitPostData.data.id&&""!==window.wallkitPostData.data.id&&(document.querySelector(".wkwp-paywall")||t.config.content_class_selector&&document.querySelector("."+t.config.content_class_selector)||t.config.custom_content_selector&&document.querySelector(""+t.config.custom_content_selector))){e=window.wallkitPostData.data;const i=new window.wk.content(e);k("F=>wkCheckPostAccess.checkAccess","\npostInfo",e,"\nwkPost",i),window.wkwpCheckAccessPromise=new Promise((t,n)=>{if(3===window.wallkitPostData.config.wk_paywall_display_type)return t(async function(){var e=window.wallkitPostData.data.id.split("_").slice(-1),t={post_id:e};var n={};Wallkit.getToken()&&(n["wk-token"]=Wallkit.getToken());Wallkit.getFirebaseToken()&&(n["firebase-token"]=Wallkit.getFirebaseToken());WallkitClient.session&&(n["wk-session"]=WallkitClient.session);k("F=>get_content_part","\npost_id",e,"\nurl_params",t,"\nheaders",n,"\nwindow.wallkitSettings.config.parse_scripts",window.wallkitSettings.config.parse_scripts);e=await fetch("/wp-json/wallkit/v1/get-content-part?"+new URLSearchParams(t).toString(),{method:"GET",headers:n}).then(e=>200===e.status&&e.json()).catch(e=>(console.log("WKWP ERROR: get_content_part->contentAccessResponce",e),!1));return k("F=>get_content_part","\ncontentAccessResponce",e),e}());i.checkAccess().then(e=>(k("F=>wkCheckPostAccess.wkPost.checkAccess",e),t(e))).catch(e=>(console.log("WKWP wkPost ERROR",e),n(e)))})}window.wkwpCheckAccessPromise&&window.wkwpCheckAccessPromise.then(t=>{switch(window.removeEventListener("unlockContent",l),k("F=>wkCheckPostAccess.wkwpCheckAccessPromise",t),window.wallkitPostData.config.wk_paywall_display_type){case 1:u(t);break;case 3:{var n=t;var i=window.wallkitSettings||{};var o=document.querySelector(".wkwp-paywall"),s=document.querySelector(".wkwp-paywall .wkwp-content-inner");let e=document.querySelector(".wkwp-paywall .wkwp-paywall-block");{var a;k("F=>checkAccessHandlingBackend","\nresponse",n,"\nwindow.wallkitPostData",window.wallkitPostData,"\npostContentWrapper",o,"\npostContentBody",s,"\npostPaywallBlock",e,"\nwkPaywallBlock",r),n.allowed?(a={contentScripts:[],contentPart:n.wp_content_part},n.wp_content_part&&i.config.parse_scripts&&(a.contentScripts=function(e){var t=[],n=document.createElement("div"),i=(n.innerHTML=e,n.getElementsByTagName("script"));k("F=>parseScripts","\ncontent",e,"\nscripts",i);for(let e=0;e<i.length;e++){var o=i[e],s=document.createElement("script");o.src?(s.src=o.src,s.async=!1):s.text=o.innerHTML,t.push(s)}return k("F=>parseScripts","\nnewScriptsElements",t),t}(n.wp_content_part),a.contentPart=function(e){k("F=>removeScriptsFromString","\ncontent",e);var t=document.createElement("div"),n=(t.innerHTML=e,t.getElementsByTagName("script"));for(;0<n.length;)n[0].parentNode.removeChild(n[0]);return k("F=>removeScriptsFromString","\ntempDiv.innerHTML",t.innerHTML),t.innerHTML}(n.wp_content_part)),k("F=>checkAccessHandlingBackend","\ncontentPart",a.contentPart,"\ncontentScripts",a.contentScripts),e&&e.remove(),s&&(s.innerHTML=a.contentPart||"",a.contentScripts&&a.contentScripts.forEach(e=>document.body.appendChild(e)),s.classList.remove("wkwp-content-blured"),s.style="display:block;")):(s&&(n=parseInt(s.dataset.paragraphs)||0,s.innerHTML=m(n),window.wallkitPostData.config.show_blur?s.classList.add("wkwp-content-blured"):s.style="display:none;"),!e&&i.config.paywall.content&&((e=document.createElement("div")).classList.add("wkwp-paywall-block"),e.insertAdjacentHTML("beforeend",i.config.paywall.content),s.parentNode.insertBefore(e,s)),w(e)),o.style="display:block;"}}break;default:c(t)}window.addEventListener("unlockContent",l),k("F=>wkCheckPostAccess.dispatchEvent.wkwpContentLocked"),window.dispatchEvent(new CustomEvent("wkwpContentLocked",{detail:t}))}).catch(e=>{console.log("WKWP ERROR: wkwpCheckAccessPromise",e)})}function l(e){k("F=>handleUnlockContentEvent.addEventListener.unlockContent",e),(1===window.wallkitPostData.config.wk_paywall_display_type?u:c)({allowed:!0})}function c(e){var t=window.wallkitSettings||{},n=document.querySelector(".wkwp-paywall"),i=document.querySelector(".wkwp-paywall .wkwp-content-inner");let o=document.querySelector(".wkwp-paywall .wkwp-paywall-block");k("F=>checkAccessHandlingCSS","\nresponse",e,"\nwindow.wallkitPostData",window.wallkitPostData,"\npostContentWrapper",n,"\npostContentBody",i,"\npostPaywallBlock",o,"\nwkContentBody",s,"\nwkPaywallBlock",r),i&&!s&&(s=i.innerHTML),e.allowed?(o&&o.remove(),i&&(s&&!1===t.config.skip_lorem&&(i.innerHTML=s),i.classList.remove("wkwp-content-blured"),i.style="display:block;")):(i&&(!1===t.config.skip_lorem&&(i.innerHTML=function(e){if(e&&0<e.querySelectorAll("p").length)return m(e.querySelectorAll("p").length);return""}(i)),window.wallkitPostData.config.show_blur?i.classList.add("wkwp-content-blured"):i.style="display:none;"),!o&&t.config.paywall.content&&((o=document.createElement("div")).classList.add("wkwp-paywall-block"),o.insertAdjacentHTML("beforeend",t.config.paywall.content),i.parentNode.insertBefore(o,i)),w(o)),n.style="display:block;"}function u(e){var t=window.wallkitSettings||{};let n=document.querySelector(".wkwp-paywall"),i="."+t.config.content_class_selector;t.config.custom_content_selector&&(i=t.config.custom_content_selector);var o=document.querySelector(""+i),s=document.querySelectorAll(i+" > *"),a=document.querySelectorAll(i+" > p");if(k("F=>checkAccessHandlingFrontend","\nwkPaywallBlock",e,"\nwkSettings",t,"\nwkwpPaywall",n,"\ntopElement",o,"\nallElements",s,"\nparagraphs",a),o)if(e.allowed)n&&n.remove(),s.forEach(e=>{e.classList.contains("wkwp-element")&&e.classList.remove("wkwp-element","wkwp-blur","wkwp-non-blur")});else if(o.querySelectorAll(".wkwp-element").length)w(n);else{var e=a.length>t.config.wk_free_paragraph&&0<=t.config.wk_free_paragraph?t.config.wk_free_paragraph:a.length,a=a[0<e?e-1:0],r=0===e?0:Array.prototype.indexOf.call(o.children,a)+1,l=["wkwp-element"];window.wallkitPostData.config.show_blur?l.push("wkwp-blur"):l.push("wkwp-non-blur"),k("F=>checkAccessHandlingFrontend.!allowed","\nshowParagraphs",e,"\nlastVisibleParagraph",a,"\nlastVisibleParagraphIndex",r,"\nitemClass",l);for(let e=r;e<s.length;e++)s[e].classList.add(...l);n||((n=document.createElement("div")).classList.add("wkwp-paywall"),n.insertAdjacentHTML("beforeend",`<div class="wkwp-paywall-block">${t.config.paywall.content}</div>`)),0===e?o.insertBefore(n,a):o.insertBefore(n,a.nextSibling),w(n),n.style="display:block;"}}function w(e){k("F=>paywallDisplayLoginLink",e),e&&(e=e.querySelector(".wallkit-paywall-block__login_plans"))&&(window.wk.authentication.isAuthenticated()?e.style="display:none;":e.style="display:block;")}function p(e){switch(k("F=>hideUserWithoutSessionInfo",e),e.target.id){case"auth-signup-link":case"auth-modal-close-btn":case"auth-modal-wrapper":case"auth-password-link":o()}e.target.classList.contains("wk-form-button")&&o()}function o(){var e=document.querySelector(".wk-user-update-info"),t=document.querySelector("#wk-email-auth-form"),n=document.querySelector("#wk-email-auth-form .wk-form .wk-form-header .wk-form__error");k("F=>hideUserWithoutSessionText","\nuserWithoutSessionInfo",e,"\nauthForm",t,"\nauthFormHeaderError",n),document.removeEventListener("click",p),e.remove(),t.style.display="block",n&&(n.style.display="")}function m(e){var t=["Inventore molestiae accusantium fuga delectus. Sed exercitationem aut quis reiciendis nesciunt dolore et. Voluptatibus at suscipit eius ratione perspiciatis provident. Totam minima quia occaecati maxime mollitia.","Laborum occaecati sapiente nesciunt voluptatem. Voluptatibus asperiores optio ut. Pariatur perspiciatis voluptatem beatae commodi libero modi.","Aut et ipsum beatae tenetur sit. Necessitatibus harum ea et. Natus aut quas sit dolores odio ut. Ipsum sit corporis maxime voluptatum et. Et labore id rerum nobis quia voluptatibus veniam dolores.","Sed aut repudiandae alias. Sunt est ab dignissimos quasi recusandae labore. Amet vitae illo debitis beatae nesciunt dolor dignissimos. Voluptatum consequuntur error at omnis. Tenetur quaerat facere placeat enim doloribus.","Id tempora quo placeat dolore. Eos sunt sapiente et facere. Ex facere et voluptate praesentium. Modi mollitia at non eum rerum perferendis. Nobis blanditiis consequatur incidunt.","Sint voluptas nam sed. Eligendi beatae corporis omnis ipsum facilis dicta a repudiandae. Suscipit et eligendi eveniet ipsum veritatis aut. Aspernatur adipisci fugit deserunt eos hic ut omnis. Corporis et itaque dicta similique.","Fugit dolores vitae iste qui. Dignissimos quo molestiae cumque. Sequi illo non saepe facere aut aliquid consequuntur sunt. Amet non illo dolor molestiae nulla eligendi quae. Id aut et velit quos sit ratione earum rerum.","Soluta error neque dolor perspiciatis mollitia. Voluptatem corporis doloribus fugiat et. Unde et rerum magni. Dolores nisi laudantium laboriosam voluptatem.","Dolores in illo exercitationem est enim pariatur quam corporis. Non ipsa sequi explicabo. Placeat earum aspernatur quod et quia.","Et sed amet ipsa. Qui et corrupti eaque et at dicta nesciunt vero. Est quasi eius possimus repellat ea ut. Inventore vel et possimus officiis quo consectetur similique. Culpa ut voluptatem non pariatur illum autem sapiente. Et et quidem est dolorum ab.","Amet id ipsam deleniti minima aut laboriosam. Odio ut reiciendis delectus repudiandae dolorem quaerat. Alias asperiores eum molestiae libero assumenda non voluptatibus quo. Et esse laboriosam ab velit et. Eligendi sint assumenda et.","Soluta ex voluptas minima et magnam est. Deserunt error molestiae veritatis amet. Quia provident sint molestiae omnis optio sunt sint. Commodi praesentium est perferendis inventore aut atque dolor doloribus. Minima enim velit eaque qui sed non dignissimos debitis. Rerum placeat in qui reprehenderit blanditiis nemo sed.","Magni dolore enim asperiores quae asperiores. Et quia eligendi ad quo aut labore ut iste. Quia qui esse aperiam eos illum exercitationem minus quod.","Sed ut dolorum sunt. Tempora incidunt aspernatur doloremque voluptatem quidem voluptatem magni. Est voluptatum minus id. Totam repudiandae reiciendis et.","Sint natus tenetur qui earum recusandae id optio. Dolore voluptates et accusamus et tempora sint. Dolores reiciendis iusto et quos aut. Sequi et officiis ipsum distinctio. Expedita voluptatibus corporis odio blanditiis iusto.","Ipsum dolores ut ut. Quia et voluptates accusamus neque quidem exercitationem dignissimos. Libero velit nemo omnis dolores ea repudiandae commodi accusamus. Sint tempore aut officia iste odit odio. Quibusdam sed debitis officiis.","Voluptatem quo est eius occaecati voluptatem tempore. Iste voluptas animi a voluptatem. Debitis est dolore aut fuga sunt voluptatem itaque assumenda. Id magnam officiis sint recusandae dolorum. Architecto numquam dignissimos quam corporis hic. Sit rerum amet provident.","Sed eum reiciendis aspernatur ab cupiditate. Ut atque dolores rerum veritatis voluptatem quidem ex voluptatum. Perspiciatis tempore quia quia animi vel distinctio. Id officia odit iusto facilis aliquid sequi eaque. Magnam eaque laudantium et et exercitationem.","Quod et ut voluptatibus assumenda sed. Nesciunt ea sed asperiores veniam temporibus blanditiis possimus. Quisquam eos voluptas assumenda molestiae.","Labore ipsum vitae dolorem est sed repellendus. Animi qui sequi similique dolorem sed vel omnis. Rerum saepe id atque animi."];let n=[];for(var i=0;i<e;i++)n.push(t[Math.floor(Math.random()*t.length)]);return n=n.map(e=>`<p>${e}</p>`).join("")}function k(e="",...t){void 0!==window.wallkitSettings.config&&window.wallkitSettings.config.debug&&console.log("WKWP DEBUG: ",e,...t)}window.addEventListener("DOMContentLoaded",e=>{k("DOMContentLoaded"),window.runInitWKPromise?(k("window.runInitWKPromise",window.runInitWKPromise),window.runInitWKPromise.then(e=>{k("window.runInitWKPromise.response",e),!0===e.init&&t()}).catch(e=>{console.log("WKWP ERROR: runInitWKPromise",e)})):(k("else runInitWkProcess"),t())})}();
  • wallkit/trunk/readme.txt

    r3155283 r3161620  
    22Tags: paywall, subscriptions, recurring payments, memberships, paid membership
    33Requires at least: 4.0
    4 Tested up to: 6.4.3
     4Tested up to: 6.6.2
    55Requires PHP: 5.6
    66License: GPLv2 or later
     
    2727
    2828== Changelog ==
     29
     30= 3.3.8 =
     31*Release Date - 02 October 2024*
     32
     33#### Updates including:
     34- Update backend paywalled, return reason of blocking.
    2935
    3036= 3.3.7 =
  • wallkit/trunk/wallkit-wp.php

    r3155283 r3161620  
    1010 * Plugin URI:        https://wallkit.net
    1111 * Description:       A Plug & Play paid-content system to manage subscribers, gather fees and drive additional content sales.
    12  * Version:           3.3.7
     12 * Version:           3.3.8
    1313 * Author:            Wallkit <dev@wallkit.net>
    1414 * Author URI:        https://wallkit.net/
     
    2727 * Rename this for your plugin and update it as you release new versions.
    2828 */
    29 define( 'WPWKP_VERSION', '3.3.7' );
     29define( 'WPWKP_VERSION', '3.3.8' );
    3030
    3131/**
Note: See TracChangeset for help on using the changeset viewer.