Changeset 3161620
- Timestamp:
- 10/02/2024 04:44:16 PM (18 months ago)
- Location:
- wallkit
- Files:
-
- 12 edited
- 1 copied
-
tags/3.3.8 (copied) (copied from wallkit/trunk)
-
tags/3.3.8/includes/class-wallkit-rest-controller.php (modified) (3 diffs)
-
tags/3.3.8/includes/class-wallkit-wp-access.php (modified) (6 diffs)
-
tags/3.3.8/public/js/wallkit-setup.js (modified) (7 diffs)
-
tags/3.3.8/public/js/wallkit-setup.min.js (modified) (1 diff)
-
tags/3.3.8/readme.txt (modified) (2 diffs)
-
tags/3.3.8/wallkit-wp.php (modified) (2 diffs)
-
trunk/includes/class-wallkit-rest-controller.php (modified) (3 diffs)
-
trunk/includes/class-wallkit-wp-access.php (modified) (6 diffs)
-
trunk/public/js/wallkit-setup.js (modified) (7 diffs)
-
trunk/public/js/wallkit-setup.min.js (modified) (1 diff)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/wallkit-wp.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
wallkit/tags/3.3.8/includes/class-wallkit-rest-controller.php
r3155283 r3161620 66 66 $access = apply_filters('wallkit_check_post_access', $post); 67 67 } catch (\Exception $exception) { 68 $access = false; 68 $access = [ 69 'allow' => false, 70 'message' => 'Error check post access' 71 ]; 69 72 } 70 73 … … 72 75 if( !$access || (isset($access['allow']) && !$access['allow']) ) { 73 76 return new WP_REST_Response([ 74 ' message' => 'User has no access to this post',75 ' access' => $access77 'allowed' => false, 78 'data' => $access 76 79 ], 200); 77 80 } … … 80 83 $formatted_content = Wallkit_Wp_Admin::get_formatted_content($post->post_content); 81 84 $content_part = Wallkit_Wp_Admin::get_content_body_paragraph($formatted_content, $skip_paragraphs); 82 $content_part = apply_filters('the_content', $content_part);83 85 84 86 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), 88 90 ], 200); 89 91 } 90 92 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); 92 94 } 93 95 } -
wallkit/tags/3.3.8/includes/class-wallkit-wp-access.php
r3155283 r3161620 139 139 if(!$WP_Post instanceof WP_Post || !isset($WP_Post->ID)) 140 140 { 141 return true; 141 return [ 142 'allow' => true, 143 'message' => 'Post ID not exist' 144 ]; 142 145 } 143 146 144 147 if(!isset($WP_Post->post_type) || empty($WP_Post->post_type)) 145 148 { 146 return true; 149 return [ 150 'allow' => true, 151 'message' => 'Post type not exist' 152 ]; 147 153 } 148 154 … … 150 156 if($disablePaywallOnPost === '1') 151 157 { 152 return true; 158 return [ 159 'allow' => true, 160 'message' => 'Paywall disabled on this post' 161 ]; 153 162 } 154 163 … … 158 167 if(is_user_logged_in() && !self::$wallkit_Wp_Collection->get_settings()->get_option("wk_admin_paywall")) 159 168 { 160 return true; 169 return [ 170 'allow' => true, 171 'message' => 'Paywall disabled for admin users' 172 ]; 161 173 } 162 174 … … 167 179 if(!$Sdk instanceof \WallkitSDK\WallkitSDK) 168 180 { 169 return true; 181 return [ 182 'allow' => true, 183 'message' => 'Wallkit sdk not initialised' 184 ]; 170 185 } 171 186 … … 175 190 $registeredPostTypes = self::$wallkit_Wp_Collection->get_settings()->get_option("wk_check_post_type_access"); 176 191 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 ]; 178 196 } 179 197 … … 182 200 ->toArray(); 183 201 184 return [ 185 'allow' => (bool) (isset($access["allow"]) ? $access["allow"] : false), 186 'response' => $access, 187 ]; 202 return $access; 188 203 } 189 204 catch(\WallkitSDK\Exceptions\WallkitException $exception) -
wallkit/tags/3.3.8/public/js/wallkit-setup.js
r3155283 r3161620 429 429 //If this is backed paywalled skip check post access on frontend, check access on backend. 430 430 if(window.wallkitPostData.config.wk_paywall_display_type === 3) { 431 resolve({}); 432 return; 433 } 434 431 return resolve(get_content_part()); 432 } 435 433 wkPost.checkAccess().then((response) => { 436 434 wkwpDebug('F=>wkCheckPostAccess.wkPost.checkAccess', response); 437 re solve(response);435 return resolve(response); 438 436 }).catch((error) => { 439 437 console.log('WKWP wkPost ERROR', error); 440 re ject(error);438 return reject(error); 441 439 }); 442 440 }); … … 449 447 switch (window.wallkitPostData.config.wk_paywall_display_type) { 450 448 case 1: checkAccessHandlingFrontend(response); break; 451 case 3: checkAccessHandlingBackend( ); break;449 case 3: checkAccessHandlingBackend(response); break; 452 450 default: checkAccessHandlingCSS(response); 453 451 } … … 543 541 // Change view for user based on access. Partial process on backend. 544 542 // Hard locking content 545 async function checkAccessHandlingBackend() {543 function checkAccessHandlingBackend(response) { 546 544 let wkSettings = window["wallkitSettings"] || {}; 547 545 const postContentWrapper = document.querySelector(".wkwp-paywall"); … … 549 547 let postPaywallBlock = document.querySelector(".wkwp-paywall .wkwp-paywall-block"); 550 548 wkwpDebug('F=>checkAccessHandlingBackend', 549 '\nresponse', response, 551 550 '\nwindow.wallkitPostData', window.wallkitPostData, 552 551 '\npostContentWrapper', postContentWrapper, … … 555 554 '\nwkPaywallBlock', wkPaywallBlock); 556 555 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) { 562 558 if (postContentBody) { 563 559 const p_count = parseInt(postContentBody.dataset.paragraphs) || 0; … … 582 578 postContentWrapper.style = "display:block;"; 583 579 } 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 584 594 if (postPaywallBlock) { 585 595 postPaywallBlock.remove(); … … 642 652 ); 643 653 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; 660 655 } 661 656 -
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 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 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 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 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 2 2 Tags: paywall, subscriptions, recurring payments, memberships, paid membership 3 3 Requires at least: 4.0 4 Tested up to: 6. 4.34 Tested up to: 6.6.2 5 5 Requires PHP: 5.6 6 6 License: GPLv2 or later … … 27 27 28 28 == Changelog == 29 30 = 3.3.8 = 31 *Release Date - 02 October 2024* 32 33 #### Updates including: 34 - Update backend paywalled, return reason of blocking. 29 35 30 36 = 3.3.7 = -
wallkit/tags/3.3.8/wallkit-wp.php
r3155283 r3161620 10 10 * Plugin URI: https://wallkit.net 11 11 * Description: A Plug & Play paid-content system to manage subscribers, gather fees and drive additional content sales. 12 * Version: 3.3. 712 * Version: 3.3.8 13 13 * Author: Wallkit <dev@wallkit.net> 14 14 * Author URI: https://wallkit.net/ … … 27 27 * Rename this for your plugin and update it as you release new versions. 28 28 */ 29 define( 'WPWKP_VERSION', '3.3. 7' );29 define( 'WPWKP_VERSION', '3.3.8' ); 30 30 31 31 /** -
wallkit/trunk/includes/class-wallkit-rest-controller.php
r3155283 r3161620 66 66 $access = apply_filters('wallkit_check_post_access', $post); 67 67 } catch (\Exception $exception) { 68 $access = false; 68 $access = [ 69 'allow' => false, 70 'message' => 'Error check post access' 71 ]; 69 72 } 70 73 … … 72 75 if( !$access || (isset($access['allow']) && !$access['allow']) ) { 73 76 return new WP_REST_Response([ 74 ' message' => 'User has no access to this post',75 ' access' => $access77 'allowed' => false, 78 'data' => $access 76 79 ], 200); 77 80 } … … 80 83 $formatted_content = Wallkit_Wp_Admin::get_formatted_content($post->post_content); 81 84 $content_part = Wallkit_Wp_Admin::get_content_body_paragraph($formatted_content, $skip_paragraphs); 82 $content_part = apply_filters('the_content', $content_part);83 85 84 86 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), 88 90 ], 200); 89 91 } 90 92 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); 92 94 } 93 95 } -
wallkit/trunk/includes/class-wallkit-wp-access.php
r3155283 r3161620 139 139 if(!$WP_Post instanceof WP_Post || !isset($WP_Post->ID)) 140 140 { 141 return true; 141 return [ 142 'allow' => true, 143 'message' => 'Post ID not exist' 144 ]; 142 145 } 143 146 144 147 if(!isset($WP_Post->post_type) || empty($WP_Post->post_type)) 145 148 { 146 return true; 149 return [ 150 'allow' => true, 151 'message' => 'Post type not exist' 152 ]; 147 153 } 148 154 … … 150 156 if($disablePaywallOnPost === '1') 151 157 { 152 return true; 158 return [ 159 'allow' => true, 160 'message' => 'Paywall disabled on this post' 161 ]; 153 162 } 154 163 … … 158 167 if(is_user_logged_in() && !self::$wallkit_Wp_Collection->get_settings()->get_option("wk_admin_paywall")) 159 168 { 160 return true; 169 return [ 170 'allow' => true, 171 'message' => 'Paywall disabled for admin users' 172 ]; 161 173 } 162 174 … … 167 179 if(!$Sdk instanceof \WallkitSDK\WallkitSDK) 168 180 { 169 return true; 181 return [ 182 'allow' => true, 183 'message' => 'Wallkit sdk not initialised' 184 ]; 170 185 } 171 186 … … 175 190 $registeredPostTypes = self::$wallkit_Wp_Collection->get_settings()->get_option("wk_check_post_type_access"); 176 191 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 ]; 178 196 } 179 197 … … 182 200 ->toArray(); 183 201 184 return [ 185 'allow' => (bool) (isset($access["allow"]) ? $access["allow"] : false), 186 'response' => $access, 187 ]; 202 return $access; 188 203 } 189 204 catch(\WallkitSDK\Exceptions\WallkitException $exception) -
wallkit/trunk/public/js/wallkit-setup.js
r3155283 r3161620 429 429 //If this is backed paywalled skip check post access on frontend, check access on backend. 430 430 if(window.wallkitPostData.config.wk_paywall_display_type === 3) { 431 resolve({}); 432 return; 433 } 434 431 return resolve(get_content_part()); 432 } 435 433 wkPost.checkAccess().then((response) => { 436 434 wkwpDebug('F=>wkCheckPostAccess.wkPost.checkAccess', response); 437 re solve(response);435 return resolve(response); 438 436 }).catch((error) => { 439 437 console.log('WKWP wkPost ERROR', error); 440 re ject(error);438 return reject(error); 441 439 }); 442 440 }); … … 449 447 switch (window.wallkitPostData.config.wk_paywall_display_type) { 450 448 case 1: checkAccessHandlingFrontend(response); break; 451 case 3: checkAccessHandlingBackend( ); break;449 case 3: checkAccessHandlingBackend(response); break; 452 450 default: checkAccessHandlingCSS(response); 453 451 } … … 543 541 // Change view for user based on access. Partial process on backend. 544 542 // Hard locking content 545 async function checkAccessHandlingBackend() {543 function checkAccessHandlingBackend(response) { 546 544 let wkSettings = window["wallkitSettings"] || {}; 547 545 const postContentWrapper = document.querySelector(".wkwp-paywall"); … … 549 547 let postPaywallBlock = document.querySelector(".wkwp-paywall .wkwp-paywall-block"); 550 548 wkwpDebug('F=>checkAccessHandlingBackend', 549 '\nresponse', response, 551 550 '\nwindow.wallkitPostData', window.wallkitPostData, 552 551 '\npostContentWrapper', postContentWrapper, … … 555 554 '\nwkPaywallBlock', wkPaywallBlock); 556 555 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) { 562 558 if (postContentBody) { 563 559 const p_count = parseInt(postContentBody.dataset.paragraphs) || 0; … … 582 578 postContentWrapper.style = "display:block;"; 583 579 } 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 584 594 if (postPaywallBlock) { 585 595 postPaywallBlock.remove(); … … 642 652 ); 643 653 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; 660 655 } 661 656 -
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 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 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 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 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 2 2 Tags: paywall, subscriptions, recurring payments, memberships, paid membership 3 3 Requires at least: 4.0 4 Tested up to: 6. 4.34 Tested up to: 6.6.2 5 5 Requires PHP: 5.6 6 6 License: GPLv2 or later … … 27 27 28 28 == Changelog == 29 30 = 3.3.8 = 31 *Release Date - 02 October 2024* 32 33 #### Updates including: 34 - Update backend paywalled, return reason of blocking. 29 35 30 36 = 3.3.7 = -
wallkit/trunk/wallkit-wp.php
r3155283 r3161620 10 10 * Plugin URI: https://wallkit.net 11 11 * Description: A Plug & Play paid-content system to manage subscribers, gather fees and drive additional content sales. 12 * Version: 3.3. 712 * Version: 3.3.8 13 13 * Author: Wallkit <dev@wallkit.net> 14 14 * Author URI: https://wallkit.net/ … … 27 27 * Rename this for your plugin and update it as you release new versions. 28 28 */ 29 define( 'WPWKP_VERSION', '3.3. 7' );29 define( 'WPWKP_VERSION', '3.3.8' ); 30 30 31 31 /**
Note: See TracChangeset
for help on using the changeset viewer.