Changeset 3074718
- Timestamp:
- 04/21/2024 08:36:54 PM (3 months ago)
- Location:
- beautiful-and-responsive-cookie-consent
- Files:
-
- 60 added
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
beautiful-and-responsive-cookie-consent/trunk/admin/css/nsc_bar_admin.css
r3057846 r3074718 17 17 18 18 .nsc_bar_notice_premium_addon_hint { 19 background: #f ff;19 background: #fff; 20 20 border: 1px solid #c3c4c7; 21 21 border-left-width: 4px; 22 22 box-shadow: 0 1px 1px rgb(0 0 0 / 4%); 23 margin: 5px 15px 2px;23 margin: px 2px; 24 24 padding: 1px 12px; 25 border-left: 4px solid #1741db; 25 border-left: 8px solid #0037ff; 26 } 27 28 .nsc_bar_notice_premium_addon_hint.yellow { 29 background: #fffefc; 30 border-left: 8px solid #ffa913; 26 31 } 27 32 … … 218 223 } 219 224 220 #nsc_bar_new_banner {221 padding-top: 20px;222 }223 224 225 #nsc_bar_new_banner_selector-label { 225 226 position: relative; 226 227 top: 1px; 227 228 } 229 230 231 232 233 234 235 236 -
beautiful-and-responsive-cookie-consent/trunk/admin/js/admin.consentmode.min.js
r3057846 r3074718 16 16 function addListenerForAlreadyReviewed(){var e=document.getElementById("nsc_bar_notice_reviewedAlready");e&&e.addEventListener("click",saveReviewSetting);}function saveReviewSetting(){var e=document.getElementById("nsc_bar_notice_reviewedAlready");e.disabled=!0,e.innerHTML="thank you, saving...";var n=new XMLHttpRequest;n.withCredentials=!0,n.addEventListener("readystatechange",(function(){4===this.readyState&&(document.getElementById("nsc_bar_notice_please_rate").style.display="none");})),n.open("POST","".concat(phpVars.restURL,"beautiful-and-responsive-cookie-consent/v1/admin-notices")),n.setRequestHeader("_wpnonce",phpVars.nonce),n.setRequestHeader("X-WP-Nonce",phpVars.nonce),n.send("");} 17 17 18 function addListenerForNewBannerToggle(){var e=document.getElementById("nsc_bar_new_banner_selector");e&&e.addEventListener("change",saveBannerSelect);}function saveBannerSelect(){var e=document.getElementById("nsc_bar_new_banner_selector").value,n=[" modern","classic"];if(!n.includes(e))throw new Error("allowed values are only: ".concat(JSON.stringify(n)));var a=new XMLHttpRequest;a.withCredentials=!0,a.addEventListener("readystatechange",(function(){if(4===this.readyState){var e=new URL(document.location.href);e.searchParams.set("nsc_bara_language_selector","xx"),e.searchParams.set("tab","new_banner"),window.location.href=e.toString();}})),a.open("POST","".concat(phpVars.restURL,"beautiful-and-responsive-cookie-consent/v1/banner/select/").concat(e)),a.setRequestHeader("_wpnonce",phpVars.nonce),a.setRequestHeader("X-WP-Nonce",phpVars.nonce),a.send("");}18 function addListenerForNewBannerToggle(){var e=document.getElementById("nsc_bar_new_banner_selector");e&&e.addEventListener("change",saveBannerSelect);}function saveBannerSelect(){var e=document.getElementById("nsc_bar_new_banner_selector").value,n=[""];if(!n.includes(e))throw new Error("allowed values are only: ".concat(JSON.stringify(n)));var a=new XMLHttpRequest;a.withCredentials=!0,a.addEventListener("readystatechange",(function(){if(4===this.readyState){var e=new URL(document.location.href);e.searchParams.set("nsc_bara_language_selector","xx"),e.searchParams.set("tab","new_banner"),window.location.href=e.toString();}})),a.open("POST","".concat(phpVars.restURL,"beautiful-and-responsive-cookie-consent/v1/banner/select/").concat(e)),a.setRequestHeader("_wpnonce",phpVars.nonce),a.setRequestHeader("X-WP-Nonce",phpVars.nonce),a.send("");} 19 19 20 20 document.addEventListener("DOMContentLoaded",addConsentModeTableToPage),document.addEventListener("DOMContentLoaded",addListenerForAlreadyReviewed),document.addEventListener("DOMContentLoaded",addListenerForNewBannerToggle); -
beautiful-and-responsive-cookie-consent/trunk/admin/js/cookietypes.v2.js
r3034148 r3074718 1 addCookieTableToPage('ff_nsc_bar_cookietypes', 'nsc_bar_cookietypes_table'); 1 addCookieTableToPage('ff_nsc_bar_cookietypes', 'nsc_bar_cookietypes_table', true, 'Cookie Type'); 2 addCookieTableToPage('ff_nsc_bar_banner2categories', 'nsc_bar_banner2categories_table', false, 'Category'); 2 3 3 4 document.addEventListener('DOMContentLoaded', function (event) { … … 117 118 } 118 119 119 function addCookieTableToPage(idValue, idTable ) {120 function addCookieTableToPage(idValue, idTable) { 120 121 document.addEventListener('DOMContentLoaded', function (event) { 121 122 var tableConfig = { 122 123 label: { 123 124 type: 'text', 124 headline: 'Cookie Type Name',125 headline: , 125 126 maxlength: '100', 126 127 validateRegex: '', … … 137 138 disabled: { 138 139 type: 'checkbox', 139 headline: ' Is disabled',140 headline: 'abled', 140 141 validateRegex: '', 141 142 validateErrorMessage: '', … … 161 162 }; 162 163 164 165 166 167 163 168 //getting values 164 169 try { … … 308 313 link.classList.add('nsc_bar_cookietypes_add_new_link'); 309 314 link.id = 'nsc_bar_cookietypes_add_new_link'; 310 link.text = 'add new cookie type';315 link.text = ; 311 316 link.onclick = add_empty_row; 312 317 link.style.cursor = 'pointer'; -
beautiful-and-responsive-cookie-consent/trunk/admin/new-banner/index.html
r3057846 r3074718 1 <!DOCTYPE html><html lang=en><head><meta charset=UTF-8><meta content="width=device-width" name=viewport><script>const queryString=window.location.search,urlParams=new URLSearchParams(queryString),url=urlParams.get("plugin_url_encoded");window.restURL=urlParams.get("rest_url_encoded"),window.nonce=urlParams.get("wp_nonce");const headfiles=[{tag:"script",attributes:[{attr:"as",value:"script"},{attr:"type",value:"module"},{attr:"src",value:`${url}admin/new-banner/_astro/ hoisted.ERlLS1Ts.js`}]},{tag:"link",attributes:[{attr:"rel",value:"stylesheet"},{attr:"href",value:`${url}admin/new-banner/_astro/index.dy0xZhXG.css`}]}],bodyFiles=[{tag:"script",attributes:[{attr:"src",value:`${url}admin/js/iframeResizer/iframeResizer.contentWindow.min.js`}]}];function insertFiles(e,t){for(let r=0;r<t.length;r+=1){let a=document.getElementsByTagName(e)[0],s=document.createElement(t[r].tag);for(let e=0;e<t[r].attributes.length;e+=1)s[t[r].attributes[e].attr]=t[r].attributes[e].value;a.parentNode.insertBefore(s,a)}}insertFiles("script",headfiles)</script></head><body><script>insertFiles("body",bodyFiles)</script><header><h1 class=page-title>Banner 'modern'</h1><h2 class=page-subtitle>Configure the banner. At the moment the settings are limited for this banner. With future releases it will get more flexible. For feature request send an email to info@beautiful-cookie-banner.com.</h2><h2 class=page-subtitle>To use the this banner activate it by selecting 'modern' in the top left of the setting page.</h2><button class=nscbutton type=button id=downloadConfigBtn><span class=nscbutton__text>Save Banner Configs</span></button> <a style=padding-left:10px;cursor:pointer onclick="CookieConsent.eraseCookies("cc_cookie"),CookieConsent.show(!0)">show banner again</a><h2 class=page-subtitle id=nscBarErrorMessage style=display:none;background:#d32f2f;color:#e0e0e0;padding:1em>dffd</h2></header><main><section class=categories-section><div class="grid section__body"><div class=sub-section><h4 class=categories-title>Categories</h4><p class=categories-description>Select the applicable cookie categories for your website.</p><div class="custom-inputs custom-inputs--categories"><label><input type=checkbox class="custom-input category-input" value=necessary checked=checked disabled=disabled> <span class=label>Necessary <span class=tick><svg height=16 viewBox="0 0 24 24" width=16 xmlns=http://www.w3.org/2000/svg><g fill=none stroke=#000 stroke-linecap=round stroke-linejoin=round stroke-width=2><rect height=10 rx=2 ry=2 width=16 x=4 y=11></rect><path d="M16.5 11V8h0c0-2.8-.5-5-4.5-5S7.5 5.2 7.5 8h0v3"></path></g></svg></span></span></label> <label><input type=checkbox class="custom-input category-input" value=functionality> <span class=label>Functionality <span class=tick></span></span></label> <label><input type=checkbox class="custom-input category-input" value=analytics> <span class=label>Analytics <span class=tick></span></span></label> <label><input type=checkbox class="custom-input category-input" value=marketing> <span class=label>Marketing <span class=tick></span></span></label></div></div><div class="sub-section translations" id=translations-section><h4 class=translations-title>Translations</h4><p class=translations-description>Select the translations to include in your configuration.</p><div class=custom-inputs><label><input type=checkbox name=language-code class=custom-input value=ar><span class=label>Arabic<span class=tick></span></span></label><label><input type=checkbox name=language-code class=custom-input value=de><span class=label>German<span class=tick></span></span></label><label><input type=checkbox name=language-code class=custom-input value=en><span class=label>English<span class=tick></span></span></label><label><input type=checkbox name=language-code class=custom-input value=es><span class=label>Spanish<span class=tick></span></span></label><label><input type=checkbox name=language-code class=custom-input value=fr><span class=label>French<span class=tick></span></span></label><label><input type=checkbox name=language-code class=custom-input value=it><span class=label>Italian<span class=tick></span></span></label></div><button class=styled-btn type=button id=edit-translations-btn data-a11y-dialog-show=edit-translations-dialog>Edit translations</button><div class=dialog-container id=edit-translations-dialog aria-hidden=true aria-labelledby=dialog-title><div class=dialog-overlay></div><div class=dialog-content role=document><div class=dialog-header><div class=dialog-header--left><h1 class=dialog-title id=dialog-title>Current translation</h1><label for=editor-language-codes class=select-translation><select id=editor-language-codes></select> <span class=arrow-icon></span></label></div><button class="styled-btn dialog-close-btn" type=button aria-label="Close dialog" data-a11y-dialog-hide>×</button></div><div class=dialog-body><div class=translations-editor id=editor-container><div class=translation-editor id=translation-editor><div class="editor editor--cm"><h4>Consent modal</h4><textarea id=consent-modal-title placeholder=Title spellcheck=false class=small-textarea></textarea> <textarea id=consent-modal-description placeholder=Description spellcheck=false></textarea> <input type=text id=close-icon-label placeholder="X/Close icon label" spellcheck=false> <input type=text id=consent-modal-accept-btn placeholder="Accept all button" spellcheck=false> <input type=text id=consent-modal-reject-btn placeholder="Reject all button" spellcheck=false> <input type=text id=consent-modal-manage-btn placeholder="Manage preferences button" spellcheck=false><div class=footer-textarea id=textarea-cm-footer><textarea id=editing placeholder=Footer spellcheck=false></textarea></div></div><div class="editor editor--pm"><h4>Preferences modal</h4><textarea id=pm-title placeholder=Title spellcheck=false class=small-textarea></textarea> <input type=text id=pm-close-icon-label placeholder="Close icon label" spellcheck=false> <input type=text id=pm-accept-btn placeholder="Accept all button" spellcheck=false> <input type=text id=pm-reject-btn placeholder="Reject all button" spellcheck=false> <input type=text id=pm-save-btn placeholder="Save preferences button" spellcheck=false> <input type=text id=pm-service-counter-label placeholder="Service counter label" spellcheck=false><div class=pm-sections><h3 class=pm-sections-title>Sections <span id=sections-counter></span></h3><ol id=pm-sections></ol><button class=styled-btn type=button id=add-section-btn>Add section</button></div></div></div></div></div><div class=dialog-footer><button class=styled-btn type=button id=save-translation-config-btn>Save & Preview</button></div></div></div></div><div class="sub-section language-more-options"><h4>Language options</h4><div class=default-language><label for=default-language class=select-label><span>Default lang.</span><span class=select-input> <select id=default-language name=default-language><option value=disabled disabled=disabled selected=selected>—</option><option value=ar>ar</option><option value=de>de</option><option value=en>en</option><option value=es>es</option><option value=fr>fr</option><option value=it>it</option></select> <span class=arrow-icon></span></span></label></div><div class=auto-language><div class=checkbox-div><input type=checkbox id=auto-language name=autoLanguage> <label for=auto-language>Auto detect language</label></div><label for=autodetect-mode class="select-label autodetect"><span>Detect from</span><span class=select-input> <select id=autodetect-mode name=autodetect disabled=disabled><option value=document>document</option><option value=browser>browser</option></select> <span class=arrow-icon></span></span></label><div class=language__details><p>Detected language: <code id=detected-language>-</code></p><p>Translation loaded: <code id=translation-found>-</code></p><p>Current language: <code id=current-active-language>-</code></p></div></div></div></div></section><section class=gui-options-section><div class=section__header><div class=section-title><h3>GUI Options</h3></div><div class=section-description></div></div><div class="grid section__body"><div class="sub-section consent-modal"><h4>Consent Modal</h4><label for=cm-layout class=select-label><span>Layout</span><span class=select-input> <select id=cm-layout name=layout><option value=box>box</option><option value="box inline">box inline</option><option value="box wide">box wide</option><option value=cloud>cloud</option><option value="cloud inline">cloud inline</option><option value=bar>bar</option><option value="bar inline">bar inline</option></select> <span class=arrow-icon></span></span></label> <label for=cm-position class=select-label><span>Position</span><span class=select-input> <select id=cm-position name=vertical></select> <span class=arrow-icon></span></span></label><div class=checkbox-group><div class="checkbox-div flip"><input type=checkbox id=cm-flip name=flip> <label for=cm-flip>Flip buttons</label></div><div class="checkbox-div weight"><input type=checkbox id=cm-weight name=weight> <label for=cm-weight>Equal weight buttons</label></div></div></div><div class="sub-section preferences-modal"><h4>Preferences Modal</h4><label for=pm-layout class=select-label><span>Layout</span><span class=select-input> <select id=pm-layout name=layout><option value=box>box</option><option value=bar>bar</option><option value="bar wide">bar wide</option></select> <span class=arrow-icon></span></span></label> <label for=pm-position class=select-label><span>Position</span><span class=select-input> <select id=pm-position name=position><option value=left data-excludedLayout=box>left</option><option value=right data-excludedLayout=box>right</option></select> <span class=arrow-icon></span></span></label><div class=checkbox-group><div class="checkbox-div flip"><input type=checkbox id=pm-flip name=flip> <label for=pm-flip>Flip buttons</label></div><div class="checkbox-div weight"><input type=checkbox id=pm-weight name=weight> <label for=pm-weight>Equal weight buttons</label></div></div><button class=styled-btn type=button data-cc=show-preferencesModal>Open Preferences Modal</button></div><div class="sub-section misc"><h4>Misc</h4><div class=checkbox-group><div class=checkbox-div><input type=checkbox id=darkmode-checkbox name=darkmode> <label for=darkmode-checkbox>Enable dark-mode</label></div><div class=checkbox-div><input type=checkbox id=disablePageInteraction-checkbox name=disablePageInteraction> <label for=disablePageInteraction-checkbox>Disable page interaction</label></div><div class=checkbox-div><input type=checkbox id=disableTransitions-checkbox name=disableTransitions> <label for=disableTransitions-checkbox>Disable transitions</label></div></div><button class=styled-btn type=button id=reset-btn>🗑️ Reset demo/config</button></div></div></section><section class=themes-section><div class=section__header><div class=section-title><h3>Themes</h3></div><div class=section-description></div></div><div class=section__body><div class="grid themes"><label for=default-light><input type=radio id=default-light name=theme checked=checked> <span class=input-label><span class=theme-type>(built-in)</span> <span class=theme-name>Light theme</span></span></label> <label for=cc--darkmode><input type=radio id=cc--darkmodename=theme> <span class=input-label><span class=theme-type>(built-in)</span> <span class=theme-name>Dark theme</span></span></label></div></div></section></main><footer data-astro-cid-scinlfmn><p data-astro-cid-scinlfmn>This is an open source banner, which was adjusted for WordPress. The original source code of the banner is brought to you by Orest Bida and many contributors and is released under the MIT License. Check out <a style=color:#bec0c2;text-decoration:underline target=_blank target=_blank data-astro-cid-scinlfmn href=https://github.com/orestbida/cookieconsent aria-label="Github repository" class="github-icon styled-link styled-link__2">github</a>. Copyright © 2020-present <a style=color:#bec0c2;text-decoration:underline target=_blank data-astro-cid-scinlfmn href=https://orestbida.com/contact>Orest Bida</a></p><p data-astro-cid-scinlfmn></p></footer></body></html>1 <!DOCTYPE html><html lang=en><head><meta charset=UTF-8><meta content="width=device-width" name=viewport><script>const queryString=window.location.search,urlParams=new URLSearchParams(queryString),url=urlParams.get("plugin_url_encoded");window.restURL=urlParams.get("rest_url_encoded"),window.nonce=urlParams.get("wp_nonce");const headfiles=[{tag:"script",attributes:[{attr:"as",value:"script"},{attr:"type",value:"module"},{attr:"src",value:`${url}admin/new-banner/_astro/ name=theme> <span class=input-label><span class=theme-type>(built-in)</span> <span class=theme-name>Dark theme</span></span></label></div></div></section></main><footer data-astro-cid-scinlfmn><p data-astro-cid-scinlfmn>This is an open source banner, which was adjusted for WordPress. The original source code of the banner is brought to you by Orest Bida and many contributors and is released under the MIT License. Check out <a style=color:#bec0c2;text-decoration:underline target=_blank target=_blank data-astro-cid-scinlfmn href=https://github.com/orestbida/cookieconsent aria-label="Github repository" class="github-icon styled-link styled-link__2">github</a>. Copyright © 2020-present <a style=color:#bec0c2;text-decoration:underline target=_blank data-astro-cid-scinlfmn href=https://orestbida.com/contact>Orest Bida</a></p><p data-astro-cid-scinlfmn></p></footer></body></html> -
beautiful-and-responsive-cookie-consent/trunk/admin/tpl/admin.php
r3057846 r3074718 15 15 "div" => array( 16 16 "class" => array(), 17 17 18 ), 18 "p" => array(), 19 "br" => array(), 20 "ul" => array(), 21 "ol" => array(), 22 "li" => array(), 23 "h1" => array(), 24 "h2" => array(), 25 "h3" => array(), 26 "h4" => array(), 27 "h5" => array(), 28 "h6" => array(), 29 "hr" => array()); 19 "p" => array("class" => array(), "id" => array()), 20 "br" => array("class" => array(), "id" => array()), 21 "ul" => array("class" => array(), "id" => array()), 22 "ol" => array("class" => array(), "id" => array()), 23 "li" => array("class" => array(), "id" => array()), 24 "h1" => array("class" => array(), "id" => array()), 25 "h2" => array("class" => array(), "id" => array()), 26 "h3" => array("class" => array(), "id" => array()), 27 "h4" => array("class" => array(), "id" => array()), 28 "h5" => array("class" => array(), "id" => array()), 29 "h6" => array("class" => array(), "id" => array()), 30 "hr" => array("class" => array(), "id" => array()), 31 ); 30 32 ?> 31 33 <div class="wrap"> 32 34 33 <script>34 const nscBarConsentType = `<?php echo $exposeJSConsentType ?>`; const nscBarCookieTypes =<?php echo $exposeJSCookieTypes ?>35 </script>35 <script> 36 <?php echo $exposeJSCookieTypes ?> 37 </script> 36 38 37 <div id="nsc_bar_upper_area"> 38 <h1 id="nsc_bar_admin_title"><?php echo esc_html($objSettings->settings_page_configs->page_title) ?></h1> 39 <p><?php echo wp_kses($objSettings->settings_page_configs->description, $allowed_html) ?></p> 40 </div> 41 <?php if (defined("NSC_BARA_FEATURE_ENABLE_NEW_BANNER") && NSC_BARA_FEATURE_ENABLE_NEW_BANNER === true) {?> 39 <div id="nsc_bar_upper_area"> 40 <h1 id="nsc_bar_admin_title"><?php echo esc_html($objSettings->settings_page_configs->page_title) ?></h1> 41 <p><?php echo wp_kses($objSettings->settings_page_configs->description, $allowed_html) ?></p> 42 </div> 42 43 <div class="nsc-bar-selector-new-banner"> 43 <label for="nsc_bar_new_banner_selector" id="nsc_bar_new_banner_selector-label">44 <span class="nsc_bar_new_banner_selector-text">Banner in use is: </span>45 </label>46 <select name="nsc_bar_new_banner_selector" id="nsc_bar_new_banner_selector">47 <option <?php echo $newBannerEnabled === true ? '' : 'selected' ?> value="classic">Classic</option>48 <option <?php echo $newBannerEnabled === true ? 'selected' : '' ?> value="modern">Modern</option>49 </select>44 <label for="nsc_bar_new_banner_selector" id="nsc_bar_new_banner_selector-label"> 45 <span class="nsc_bar_new_banner_selector-text">Banner in use is: </span> 46 </label> 47 <select name="nsc_bar_new_banner_selector" id="nsc_bar_new_banner_selector"> 48 </option> 49 </option> 50 </select> 50 51 </div> 51 <?php }?>52 52 53 <h2 class="nav-tab-wrapper"> 54 <?php 55 //tabs are created 56 foreach ($objSettings->setting_page_fields->tabs as $tab) { 57 if ($newBannerEnabled === true && $tab->newBanner === false) { 58 continue; 53 <h2 class="nav-tab-wrapper"> 54 <?php 55 //tabs are created 56 foreach ($objSettings->setting_page_fields->tabs as $tab) { 57 // not display if new banner is false 58 if ($newBannerEnabled === true && isset($tab->newBanner) && $tab->newBanner === false) { 59 continue; 60 } 61 62 // not display if newBanner is true, but banner is disabled. 63 if ($newBannerEnabled === false && isset($tab->newBanner) && $tab->newBanner === true) { 64 continue; 65 } 66 67 // here all tabs go with newBanner not set at all 68 69 $activeTab = ""; 70 if ($tab->active === true) { 71 $activeTab = 'nav-tab-active'; 72 } 73 echo '<a href="?page=' . esc_attr($objSettings->plugin_slug) . '&tab=' . esc_attr($tab->tab_slug) . '&' . esc_attr($objSettings->additional_tab_link_parameter) . '" class="nav-tab ' . esc_attr($activeTab) . '" >' . esc_html($tab->tabname) . '</a>'; 74 } 75 $active_tab_index = $objSettings->setting_page_fields->active_tab_index; 76 ?> 77 </h2> 78 <?php 79 if (empty($_GET["tab"]) || $_GET["tab"] !== "new_banner") { 80 require NSC_BAR_PLUGIN_DIR . "/admin/tpl/legacy.php"; 59 81 } 60 82 61 if (defined("NSC_BARA_FEATURE_ENABLE_NEW_BANNER") === false && $tab->tab_slug === "new_banner") { 62 continue; 83 if (empty($_GET["tab"]) === false && $_GET["tab"] === "new_banner") { 84 $rest_url = urlencode(get_rest_url()); 85 $nonce = wp_create_nonce('wp_rest'); 86 echo wp_kses($objSettings->setting_page_fields->tabs[$active_tab_index]->tab_description, $allowed_html); 87 if ($premiumAddonInstalled === false) { 88 echo '<script>localStorage.setItem("nscBaraCookieBannerState",JSON.stringify(' . $fallbackStateNewBanner . '));</script>'; 89 } 90 echo '<script>addEventListener("load", (event) => {iFrameResize({ log: false, minHeight: 500 }, "#nsc_bar_new_banner");}); </script><iframe width="100%" id="nsc_bar_new_banner" src="' . NSC_BAR_PLUGIN_URL . 'admin/new-banner/index.html?plugin_url_encoded=' . urlencode(NSC_BAR_PLUGIN_URL) . '&rest_url_encoded=' . $rest_url . '&wp_nonce=' . $nonce . '&cb=' . NSC_BAR_VERSION . '"></iframe>'; 63 91 } 64 92 65 if (defined("NSC_BARA_FEATURE_ENABLE_NEW_BANNER") === true && NSC_BARA_FEATURE_ENABLE_NEW_BANNER === false && $tab->tab_slug === "new_banner") { 66 continue; 67 } 68 69 $activeTab = ""; 70 if ($tab->active === true) { 71 $activeTab = 'nav-tab-active'; 72 } 73 echo '<a href="?page=' . esc_attr($objSettings->plugin_slug) . '&tab=' . esc_attr($tab->tab_slug) . '&' . esc_attr($objSettings->additional_tab_link_parameter) . '" class="nav-tab ' . esc_attr($activeTab) . '" >' . esc_html($tab->tabname) . '</a>'; 74 } 75 $active_tab_index = $objSettings->setting_page_fields->active_tab_index; 76 ?> 77 </h2> 78 <?php 79 if (empty($_GET["tab"]) || $_GET["tab"] !== "new_banner") { 80 require NSC_BAR_PLUGIN_DIR . "/admin/tpl/legacy.php"; 81 } 82 83 if (empty($_GET["tab"]) === false && $_GET["tab"] === "new_banner" && defined("NSC_BARA_FEATURE_ENABLE_NEW_BANNER") && NSC_BARA_FEATURE_ENABLE_NEW_BANNER === true) { 84 $rest_url = urlencode(get_rest_url()); 85 $nonce = wp_create_nonce('wp_rest'); 86 echo wp_kses($objSettings->setting_page_fields->tabs[$active_tab_index]->tab_description, $allowed_html); 87 echo '<script>addEventListener("load", (event) => {iFrameResize({ log: false, minHeight: 500 }, "#nsc_bar_new_banner");}); </script><iframe width="100%" id="nsc_bar_new_banner" src="' . NSC_BAR_PLUGIN_URL . 'admin/new-banner/index.html?plugin_url_encoded=' . urlencode(NSC_BAR_PLUGIN_URL) . '&rest_url_encoded=' . $rest_url . '&wp_nonce=' . $nonce . '&cb=' . NSC_BAR_VERSION . '"></iframe>'; 88 } 89 90 ?> 93 ?> -
beautiful-and-responsive-cookie-consent/trunk/admin/tpl/legacy.php
r3057846 r3074718 1 1 <span id="nsc_settings_content"> 2 <?php if ($displayReview === true) {?> 3 <div id="nsc_bar_notice_please_rate" class="nsc_bar_notice_below_tabs"> 4 <table> 5 <tr> 6 <td> 7 <img id="nsc_bar_notice_please_rate_image" width="150px" src="<?php echo NSC_BAR_PLUGIN_URL ?>/admin/img/rating-stars.png"/> 8 </td> 9 <td> 10 <p>Hi, I noticed you use this plugin for a while now. That's awesome! Could you please do me a big favor and give it a 5-star rating on WordPress? Just to help us spread the word and boost our motivation.</p> 11 <p target="_blank" class="nsc_bar_notice_links"> 12 <a id="nsc_bar_notice_link_one" target="_blank" class="button button-primary" href="https://wordpress.org/support/plugin/beautiful-and-responsive-cookie-consent/reviews/#new-post">Ok, you deserve it</a> 13 <a id="nsc_bar_notice_reviewedAlready" class="nsc_bar_notice_link_two" href="#">I already did</a> 14 </p> 15 <p>If you think we do not deserve a 5-Star rating please contact us to give us a chance to improve, before rating.</p> 16 </td> 17 </tr> 2 <?php if ($displayReview === true) { ?> 3 <div id="nsc_bar_notice_please_rate" class="nsc_bar_notice_below_tabs"> 4 <table> 5 <tr> 6 <td> 7 <img id="nsc_bar_notice_please_rate_image" width="150px" 8 src="<?php echo NSC_BAR_PLUGIN_URL ?>/admin/img/rating-stars.png" /> 9 </td> 10 <td> 11 <p>Hi, I noticed you use this plugin for a while now. That's awesome! Could you please do me a big favor and 12 give it a 5-star rating on WordPress? Just to help us spread the word and boost our motivation.</p> 13 <p target="_blank" class="nsc_bar_notice_links"> 14 <a id="nsc_bar_notice_link_one" target="_blank" class="button button-primary" 15 href="https://wordpress.org/support/plugin/beautiful-and-responsive-cookie-consent/reviews/#new-post">Ok, 16 you deserve it</a> 17 <a id="nsc_bar_notice_reviewedAlready" class="nsc_bar_notice_link_two" href="#">I already did</a> 18 </p> 19 <p>If you think we do not deserve a 5-Star rating please contact us to give us a chance to improve, before 20 rating.</p> 21 </td> 22 </tr> 23 </table> 24 </div> 25 <?php } 26 if ($newBannerEnabled === false) { 27 ?> 28 <table class="form-table nsc_bar_language"> 29 <tbody> 30 <tr id="tr_content_language_setter"> 31 <th scope="row">Language</th> 32 <td> 33 <fieldset> 34 <label><?php echo $form_fields->nsc_bar_get_language_dropdown() ?></label> 35 <p class="description"><?php echo wp_kses($objSettings->addon_lang_description, $allowed_html) ?></p> 36 </fieldset> 37 </td> 38 </tr> 39 </tbody> 18 40 </table> 19 </div> 20 <?php } 21 if ($newBannerEnabled === false) { 22 ?> 23 <table class="form-table nsc_bar_language"> 24 <tbody> 25 <tr id="tr_content_language_setter"> 26 <th scope="row">Language</th> 27 <td> 28 <fieldset> 29 <label><?php echo $form_fields->nsc_bar_get_language_dropdown() ?></label> 30 <p class="description"><?php echo wp_kses($objSettings->addon_lang_description, $allowed_html) ?></p> 31 </fieldset> 32 </td> 33 </tr> 34 </tbody> 35 </table> 36 <hr> 37 <?php }?> 38 <?php echo wp_kses($objSettings->setting_page_fields->tabs[$active_tab_index]->tab_description, $allowed_html) ?> 39 <form action="" method="post"> 41 <hr> 42 <?php } ?> 40 43 41 <?php wp_nonce_field("save_cookie_settings_" . $objSettings->plugin_slug . "--" . $objSettings->setting_page_fields->tabs[$active_tab_index]->tab_slug, 'nsc_bar_nonce');?> 42 <input type="hidden" name="action" value="nsc_bar_cookie_settings_save" /> 43 <input type="hidden" name="option_page" value="<?php echo $objSettings->plugin_slug . $objSettings->setting_page_fields->tabs[$active_tab_index]->tab_slug ?>" /> 44 <?php submit_button();?> 44 <?php echo "<div class='tab_description'>" . wp_kses($objSettings->setting_page_fields->tabs[$active_tab_index]->tab_description, $allowed_html) . " </div>" ?> 45 45 46 <table class="form-table"> 47 <?php foreach ($objSettings->setting_page_fields->tabs[$active_tab_index]->tabfields as $field_configs) { 48 if ($newBannerEnabled === true && isset($field_configs->newBanner) && $field_configs->newBanner === false) { 49 continue; 50 } 46 <form action="" method="post"> 51 47 52 if ($newBannerEnabled === false && isset($field_configs->newBanner) && $field_configs->newBanner === true) { 53 continue; 54 } 55 ?> 56 <tr id="tr_<?php echo esc_attr($field_configs->field_slug) ?>"> 57 <th scope="row"> 58 <?php echo esc_html($field_configs->name) ?> 59 </th> 60 <td> 61 <fieldset> 62 <?php echo $form_fields->nsc_bar_return_form_field($field_configs, $objSettings->plugin_prefix); ?> 63 <?php 64 if (!empty($field_configs->custom_component)) { 65 $rest_url = get_rest_url(); 66 $nonce = wp_create_nonce('wp_rest'); 67 $string = str_replace("{{REST_URL_ENCODED}}", urlencode($rest_url), $field_configs->custom_component); 68 echo str_replace("{{WP_NONCE}}", $nonce, $string); 69 } 70 ?> 71 <p class="description"><?php echo wp_kses($field_configs->helpertext, $allowed_html) ?></p> 72 </fieldset> 73 </td> 74 </tr> 75 <?php }?> 76 </table> 77 </form> 48 <?php wp_nonce_field("save_cookie_settings_" . $objSettings->plugin_slug . "--" . $objSettings->setting_page_fields->tabs[$active_tab_index]->tab_slug, 'nsc_bar_nonce'); ?> 49 <input type="hidden" name="action" value="nsc_bar_cookie_settings_save" /> 50 <input type="hidden" name="option_page" 51 value="<?php echo $objSettings->plugin_slug . $objSettings->setting_page_fields->tabs[$active_tab_index]->tab_slug ?>" /> 52 <?php submit_button(); ?> 53 54 <table class="form-table"> 55 <?php foreach ($objSettings->setting_page_fields->tabs[$active_tab_index]->tabfields as $field_configs) { 56 if ($newBannerEnabled === true && isset($field_configs->newBanner) && $field_configs->newBanner === false) { 57 continue; 58 } 59 60 if ($newBannerEnabled === false && isset($field_configs->newBanner) && $field_configs->newBanner === true) { 61 continue; 62 } 63 ?> 64 <tr id="tr_<?php echo esc_attr($field_configs->field_slug) ?>"> 65 <th scope="row"> 66 <?php echo esc_html($field_configs->name) ?> 67 </th> 68 <td> 69 <fieldset> 70 <?php echo $form_fields->nsc_bar_return_form_field($field_configs, $objSettings->plugin_prefix); ?> 71 <?php 72 if (!empty($field_configs->custom_component)) { 73 $rest_url = get_rest_url(); 74 $nonce = wp_create_nonce('wp_rest'); 75 $string = str_replace("{{REST_URL_ENCODED}}", urlencode($rest_url), $field_configs->custom_component); 76 echo str_replace("{{WP_NONCE}}", $nonce, $string); 77 } 78 ?> 79 <p class="description"><?php echo wp_kses($field_configs->helpertext, $allowed_html) ?></p> 80 </fieldset> 81 </td> 82 </tr> 83 <?php } ?> 84 </table> 85 </form> 78 86 </span> 79 <?php require 'sidebar.php'; ?>87 <?php require 'sidebar.php';?> -
beautiful-and-responsive-cookie-consent/trunk/admin/tpl/premium_addon_desc.html
r2985696 r3074718 1 1 <div class="nsc_bar_notice_premium_addon_hint"> 2 2 <p> 3 <strong>Premium Feature:</strong> To use this feature get the premium add-on from 4 <a target="_blank" href="https://beautiful-cookie-banner.com/">beautiful-cookie-banner.com</a> and support the 5 further development of this plugin. 3 <strong>Unlock this premium feature and a lot more by getting the premium add-on.</strong> See here a list of all 4 available features: <a target="_blank" href="https://beautiful-cookie-banner.com/">beautiful-cookie-banner.com</a>. 5 By making a purchase, you're not just enhancing your experience; you're also contributing to the ongoing development 6 of this plugin. 6 7 </p> 7 8 </div> -
beautiful-and-responsive-cookie-consent/trunk/class/class-nsc_bar_admin_settings.php
r3057846 r3074718 36 36 wp_register_script('nsc_bar_consentmode_js', NSC_BAR_PLUGIN_URL . 'admin/js/admin.consentmode.min.js', array(), NSC_BAR_VERSION); 37 37 wp_enqueue_script('nsc_bara_admin_iframeresizerjs', NSC_BAR_PLUGIN_URL . 'admin/js/iframeResizer/iframeResizer.min.js', array(), NSC_BAR_VERSION, true); 38 wp_localize_script('nsc_bar_consentmode_js', 'phpVars', array( 39 'restURL' => get_rest_url(), 40 'nonce' => wp_create_nonce('wp_rest'), 41 )); 38 wp_localize_script( 39 'nsc_bar_consentmode_js', 40 'phpVars', 41 array( 42 'restURL' => get_rest_url(), 43 'nonce' => wp_create_nonce('wp_rest'), 44 ) 45 ); 42 46 wp_enqueue_script('nsc_bar_consentmode_js'); 43 47 } … … 80 84 $exposeJSCookieTypes = json_encode($validator->esc_array_for_js($this->plugin_configs->nsc_bar_get_option("cookietypes")), JSON_UNESCAPED_UNICODE); 81 85 $newBannerEnabled = $this->plugin_configs->nsc_bar_new_banner_enabled(); 86 87 82 88 require NSC_BAR_PLUGIN_DIR . "/admin/tpl/admin.php"; 83 89 // for testing … … 140 146 return false; 141 147 } 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 142 257 } -
beautiful-and-responsive-cookie-consent/trunk/class/class-nsc_bar_cookie_handler.php
r3057846 r3074718 19 19 public function nsc_bar_set_itp_cookie() 20 20 { 21 if ($this->plugin_configs->nsc_bar_get_option('activate_banner') == true && 22 $this->plugin_configs->nsc_bar_get_option('backend_cookie_conversion') == true) { 21 if ( 22 $this->plugin_configs->nsc_bar_get_option('activate_banner') == true && 23 $this->plugin_configs->nsc_bar_get_option('backend_cookie_conversion') == true 24 ) { 23 25 24 26 $expiryDate = $this->get_expiry_date($this->cookie_configs['name'], $this->cookie_configs['expirydays']); … … 77 79 public function nsc_bar_delete_cookie_for_preview() 78 80 { 79 if ($this->plugin_configs->nsc_bar_new_banner_enabled() === false && $this->plugin_configs->nsc_bar_get_option('activate_test_banner') == true && 80 stripos($_SERVER["REQUEST_URI"], "page=nsc_bar-cookie-consent") !== false) { 81 if ( 82 $this->plugin_configs->nsc_bar_new_banner_enabled() === false && $this->plugin_configs->nsc_bar_get_option('activate_test_banner') == true && 83 stripos($_SERVER["REQUEST_URI"], "page=nsc_bar-cookie-consent") !== false 84 ) { 81 85 $this->nsc_bar_delete_cookie(); 82 86 } … … 150 154 public function nsc_bar_delete_cookie($delete_detailed = true) 151 155 { 152 if (isset($_COOKIE[$this->cookie_configs['name']])) { 156 157 if (is_string($this->cookie_configs['name']) && isset($_COOKIE[$this->cookie_configs['name']])) { 153 158 unset($_COOKIE[$this->cookie_configs['name']]); 154 159 $this->set_cookie($this->cookie_configs['name'], "emptyvalue", time() - 3600, $this->cookie_configs['path'], $this->cookie_configs['domain']); -
beautiful-and-responsive-cookie-consent/trunk/class/class-nsc_bar_db_upgrader.php
r2860379 r3074718 59 59 private function do_update_from_u20($db_version) 60 60 { 61 // if empty we know its version < 2.0. because then was the db version introduced. 62 if (!empty($db_version)) { 61 if (version_compare($db_version, "2.0", ">=")) { 63 62 return true; 64 63 } … … 84 83 85 84 if ($save) { 86 return $banner_configs->nsc_bar_save_banner_settings( "xx");85 return $banner_configs->nsc_bar_save_banner_settings(); 87 86 } else { 88 87 return true; … … 98 97 private function get_database_version() 99 98 { 100 return get_option(NSC_BAR_SLUG_DBVERSION, null);99 return get_option(NSC_BAR_SLUG_DBVERSION, ); 101 100 } 102 101 } -
beautiful-and-responsive-cookie-consent/trunk/class/class-nsc_bar_frontend.php
r3057846 r3074718 103 103 $this->dataLayerName = $nsc_bar_banner_config->nsc_bar_get_cookie_setting("dataLayerName", $this->plugin_configs->nsc_bar_return_settings_field_default_value("dataLayerName")); 104 104 echo "<script id='nsc_bar_get_dataLayer_banner_init_script' nowprocket data-pagespeed-no-defer data-cfasync data-no-optimize='1' data-no-defer='1' type='text/javascript'>"; 105 echo '!function( ){const e=' . json_encode($this->escape_cookies($cookies), JSON_UNESCAPED_UNICODE) . ',o="' . esc_js($this->dataLayerName) . '",n=Object.keys(e);const t={event:"beautiful_cookie_consent_initialized"};for(let o=0;o<n.length;o++)t[n[o]]=i(n[o],"' . esc_js($this->compliance_type) . '")||e[n[o]].defaultValue,"dismiss"===t[n[o]]&&(t[n[o]]="allow");function i(e,o){if("newBanner"!==o)return s(e);let n=s("' . esc_js($this->cookie_name) . '");return!!n&&(n=decodeURIComponent(n),!!n&&(n=JSON.parse(n),!!n&&(!0===n.categories.includes(e)?"allow":"deny")))}function s(e){const o=`; ${document.cookie}`.split(`; ${e}=`);if(2===o.length)return o.pop().split(";").shift()}window[o]=window[o]||[],window[o].push(t)}();';105 echo '!function()}();'; 106 106 echo "</script>"; 107 107 return; -
beautiful-and-responsive-cookie-consent/trunk/class/class-nsc_bar_plugin_configs.php
r3057846 r3074718 107 107 public function getConsentCookieName() 108 108 { 109 110 111 112 113 114 115 116 109 117 $banner_configs = new nsc_bar_banner_configs; 110 118 $cookieName = $banner_configs->nsc_bar_get_cookie_setting("cookie_name", $this->nsc_bar_return_settings_field_default_value("cookie_name")); 111 112 if ($this->nsc_bar_new_banner_enabled()) { 113 $cookieName = $banner_configs->nsc_bar_get_cookie_setting("cookie_name_nb", $this->nsc_bar_return_settings_field_default_value("cookie_name_nb")); 119 if (is_array($cookieName)) { 120 $cookieName = $this->getLastArrayEntry($cookieName); 114 121 } 115 122 return $cookieName; 123 124 125 126 127 128 129 130 131 132 116 133 } 117 134 … … 171 188 return ""; 172 189 } 173 if (strpos($this->settings_as_object->setting_page_fields->tabs[$tab_index]->$type, ".html") === false || 174 !file_exists(NSC_BAR_PLUGIN_DIR . "/admin/tpl/" . $this->settings_as_object->setting_page_fields->tabs[$tab_index]->$type)) { 190 if ( 191 strpos($this->settings_as_object->setting_page_fields->tabs[$tab_index]->$type, ".html") === false || 192 !file_exists(NSC_BAR_PLUGIN_DIR . "/admin/tpl/" . $this->settings_as_object->setting_page_fields->tabs[$tab_index]->$type) 193 ) { 175 194 return $this->settings_as_object->setting_page_fields->tabs[$tab_index]->$type; 176 195 } … … 223 242 } 224 243 } 244 245 246 247 248 249 250 251 252 225 253 } -
beautiful-and-responsive-cookie-consent/trunk/class/class-nsc_bar_save_form_fields.php
r3065666 r3074718 109 109 } 110 110 111 112 113 111 114 private function override_other_addon_configs($updated, $saved_language_configs) 112 115 { -
beautiful-and-responsive-cookie-consent/trunk/nsc_bar-cookie-consent.php
r3065666 r3074718 4 4 Description: An easy way to get a beautiful GDPR Cookie Consent Banner. Customize it to match your compliance requirements and website layout. Highly customisable and responsive. 5 5 Author: Beautiful Cookie Banner 6 Version: 4. 0.16 Version: 4. 7 7 Author URI: https://beautiful-cookie-banner.com 8 8 Text Domain: bar-cookie-consent … … 32 32 define("NSC_BAR_PLUGIN_VERSION", "2.2"); 33 33 define("NSC_BAR_SLUG_DBVERSION", "nsc_bar_db_version"); 34 define("NSC_BAR_VERSION", "4. 0.1");34 define("NSC_BAR_VERSION", "4."); 35 35 36 36 require dirname(__FILE__) . "/class/class-nsc_bar_admin_error.php"; -
beautiful-and-responsive-cookie-consent/trunk/plugin-configs.json
r3057846 r3074718 19 19 "tab_slug": "general", 20 20 "active": false, 21 "newBanner": true,22 21 "tabfields": [ 23 22 { … … 94 93 }, 95 94 { 96 "tabname": "Banner Settings for 'modern'",95 "tabname": "Banner ", 97 96 "tab_description": "premium_addon_desc.html", 98 97 "tab_tipps": "", 99 98 "tab_slug": "new_banner", 100 99 "active": false, 101 "tabfields": [], 102 "newBanner": true 100 "tabfields": [] 103 101 }, 104 102 { … … 628 626 "tab_slug": "googleconsentmode", 629 627 "active": false, 630 "newBanner": true,631 628 "tabfields": [ 632 629 { … … 847 844 "tab_slug": "block_services", 848 845 "active": false, 849 "newBanner": true,850 846 "tabfields": [ 851 847 { … … 890 886 "tab_slug": "cookie_settings", 891 887 "active": false, 892 "newBanner": true,893 888 "tabfields": [ 894 889 { … … 914 909 "name": "Cookie Name", 915 910 "newBanner": true, 916 "save_in_db": false911 "save_in_db": e 917 912 }, 918 913 { … … 946 941 "tab_slug": "advanced_config", 947 942 "active": false, 948 "newBanner": true,949 943 "tabfields": [ 950 944 { … … 979 973 "tab_slug": "statistics", 980 974 "active": false, 981 "newBanner": true,982 975 "tabfields": [ 983 976 { … … 1063 1056 { 1064 1057 "tabname": "Google Tag Manager", 1065 "tab_description": " Using the free <a target='_blank' href='https://support.google.com/tagmanager/answer/6102821?hl=en'>Google Tag Manager</a> (GTM) to manage all your tracking codes has a lot of <a target='_blank' href='https://marketingplatform.google.com/intl/en/about/tag-manager/features/'>benefits</a>. It makes it easy to manage all your tracking codes and to activate/deactivate them.<br><br>The free version of this plugin supports the GTM by pushing the consent status to the dataLayer. With the premium add-on this plugin manages the injecting of the GTM on the page. When using 'blocking services', this plugin takes care of loading the GTM and when not to load it. All this <strong>without the need of a reload</strong> of the page after the user consented. And in some cases it will fix challenges with caching plugins.<br>You get the premium add-on here: <a target='_blank' href='https://beautiful-cookie-banner.com/'>https://beautiful-cookie-banner.com/</a>.<br><br><hr>",1058 "tab_description": ">", 1066 1059 "tab_tipps": "", 1067 1060 "tab_slug": "gtm", 1068 1061 "active": false, 1069 "newBanner": true,1070 1062 "tabfields": [ 1071 1063 { -
beautiful-and-responsive-cookie-consent/trunk/readme.txt
r3065675 r3074718 6 6 Requires PHP: 7.0.0 7 7 License: GPLv3 8 Stable tag: 4. 0.18 Stable tag: 4. 9 9 10 10 Free and beautiful Cookie Consent Banner to make your website compliant. Google Consent Mode v2 support. Not loading any files from 3rd party servers. … … 111 111 == Changelog == 112 112 113 114 115 116 117 113 118 = 4.0.1 = 114 119 * FIX: PHP Parse Error in class-nsc_bar_save_form_fields.php on line 75
Note: See TracChangeset
for help on using the changeset viewer.