#form-ccpa-edit-account-request, #form-ccpa-data-account-request, #form-ccpa-personal-data-report-request, #form-ccpa-delete-account-request , #form-ccpa-do-not-sell-request { display: none; } #ccpa_page button { background-color: transparent; border: 0; border-bottom: 1px solid black; padding: 0px; } /* Modal background */ #data-verification-background { display: none; position: fixed; z-index: 1; padding-top: calc(50vh - 83px); left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgb(0,0,0); background-color: rgba(0,0,0,0.4); opacity: unset; z-index: 9999; } /* Modal Content */ #data-verification-modal { background-color: #fefefe; margin: auto; padding: 16px; border: 1px solid #888; width: 38%; } /* Modal Close Button */ .data-verification-close { color: #aaaaaa; float: right; font-size: 28px; font-weight: bold; line-height: 17px; } .data-verification-close:hover, .data-verification-close:focus { color: #000; text-decoration: none; cursor: pointer; } /* Checkbox Text */ #data-verification-container p{ display: inline-block; padding: 0; margin: 0; line-height: 24px; padding-left: 10px; vertical-align: top; width: calc(100% - 45px); } #data-verification-container a, #data-verification-container a:hover{ text-decoration: underline!important; color: #4285f4; } /* Checkbox Icon */ #data-verification-icon { cursor: pointer; position: relative; margin: auto; width: 18px; height: 18px; -webkit-tap-highlight-color: transparent; transform: translate3d(0, 0, 0); margin-top: 2px; } #data-verification-icon:before { content: ""; position: absolute; top: -7px; left: -7px; width: 32px; height: 32px; border-radius: 50%; background: rgba(34,50,84,0.03); opacity: 0; transition: opacity 0.2s ease; } #data-verification-icon svg { position: relative; z-index: 1; fill: none; stroke-linecap: round; stroke-linejoin: round; stroke: #c8ccd4; stroke-width: 1.5; transform: translate3d(0, 0, 0); transition: all 0.2s ease; } #data-verification-icon svg path { stroke-dasharray: 60; stroke-dashoffset: 0; } #data-verification-icon svg polyline { stroke-dasharray: 22; stroke-dashoffset: 66; } #data-verification-icon:hover:before { opacity: 1; } #data-verification-container:hover #data-verification-icon svg { stroke: #4285f4; } #data-verification-icon.clicked svg { stroke: #4285f4; } #data-verification-icon.clicked svg path { stroke-dashoffset: 60; transition: all 0.3s linear; } #data-verification-icon.clicked svg polyline { stroke-dashoffset: 42; transition: all 0.2s linear; transition-delay: 0.15s; } #ccpa_page .list-unstyled li button { cursor: pointer; } .show-isense { transition: opacity 400ms !important; } .hide-isense { opacity: 0 !important; transition: 0.4s ease-out; } /* Modal changes on mobile resolution*/ @media only screen and (max-width: 600px) { #data-verification-modal { width: 90%; } } /* Loading Element */ .loading { display: none; top:50vh; left:50vw; position:fixed; } .loading:not(:required):after { content: ''; display: block; font-size: 10px; width: 1em; height: 1em; margin-top: -0.5em; -webkit-animation: spinner 1500ms infinite linear; -moz-animation: spinner 1500ms infinite linear; -ms-animation: spinner 1500ms infinite linear; -o-animation: spinner 1500ms infinite linear; animation: spinner 1500ms infinite linear; border-radius: 0.5em; -webkit-box-shadow: rgba(255,255,255, 1) 1.5em 0 0 0, rgba(255,255,255, 1) 1.1em 1.1em 0 0, rgba(255,255,255, 1) 0 1.5em 0 0, rgba(255,255,255, 1) -1.1em 1.1em 0 0, rgba(255,255,255, 1) -1.5em 0 0 0, rgba(255,255,255, 1) -1.1em -1.1em 0 0, rgba(255,255,255, 1) 0 -1.5em 0 0, rgba(255,255,255, 1) 1.1em -1.1em 0 0; box-shadow: rgba(255,255,255, 1) 1.5em 0 0 0, rgba(255,255,255, 1) 1.1em 1.1em 0 0, rgba(255,255,255, 1) 0 1.5em 0 0, rgba(255,255,255, 1) -1.1em 1.1em 0 0, rgba(255,255,255, 1) -1.5em 0 0 0, rgba(255,255,255, 1) -1.1em -1.1em 0 0, rgba(255,255,255, 1) 0 -1.5em 0 0, rgba(255,255,255, 1) 1.1em -1.1em 0 0; } /* Animation */ @-webkit-keyframes spinner { 0% { -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -ms-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); -moz-transform: rotate(360deg); -ms-transform: rotate(360deg); -o-transform: rotate(360deg); transform: rotate(360deg); } } @-moz-keyframes spinner { 0% { -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -ms-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); -moz-transform: rotate(360deg); -ms-transform: rotate(360deg); -o-transform: rotate(360deg); transform: rotate(360deg); } } @-o-keyframes spinner { 0% { -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -ms-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); -moz-transform: rotate(360deg); -ms-transform: rotate(360deg); -o-transform: rotate(360deg); transform: rotate(360deg); } } @keyframes spinner { 0% { -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -ms-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); -moz-transform: rotate(360deg); -ms-transform: rotate(360deg); -o-transform: rotate(360deg); transform: rotate(360deg); } }
'; var ccpaSendRequest = function(callback) { fetch('https://www.cloudflare.com/cdn-cgi/trace', { method: 'GET' , headers: { 'Content-Type': 'text/plain', }, }) .then(resp => resp.text()) .then(resp => { if (!resp.error) { let ipInfo = resp; let formData = new FormData(); if (type === 'customer/do-not-sell') { isenseGDPR.Cookies.set('cookieconsent_preferences_disabled', 'analytics,marketing,functionality,', { expires: 365 }); isenseGDPR.Cookies.set('cookieconsent_status', 'accept_selected', { expires: 365 }); window.Shopify.trackingConsent.setTrackingConsent(false,function() { console.log('setTrackingConsent false')}); if (document.querySelector('.cc-window')) { document.querySelector('.cc-window').style.display = 'none'; } // reset popup text document.querySelector('#ccpa-modal-container-text').innerHTML = 'I give my consent on collecting my email and IP address for the purpose of processing this request. For more check
Privacy Policy & Terms of Service.'; } formData.append('shop', Shopify.shop); formData.append('email', email); formData.append('type', type); formData.append('sourceOfRequest', 2); formData.append('ipAddress', ipInfo); formData.append('consentGiven', consentGiven); formData.append('page', 'ccpa'); formData.append('lang', Shopify.locale ? Shopify.locale : ''); formData.append('gtranslateLang', isenseGDPR.Cookies.get('googtrans') ? isenseGDPR.Cookies.get('googtrans') : ''); fetch('https://gdpr.apps.isenselabs.com/gdprRequests/submitRequest', { method: 'POST', body: formData }) .then(resp => resp.json()) .then(resp => { if (!resp.error) { ccpaSlideUpAll(); if (resp.message.length) { alert(resp.message); } else { alert('Your request has been submitted successfully. Please check your email for more information.'); } } else { alert(resp.message); } if (typeof callback == 'function') { callback(resp); } }) .catch(error => { alert(error.message); }) } else { alert(resp.message); } }) } //Append modal to body, because otherwise it will not stay centered(even if position is fixed) document.querySelector("body").insertAdjacentHTML( 'beforeend', verificationModalContent); document.addEventListener("DOMContentLoaded", function() { let searchParams = new URLSearchParams(window.location.search); let param = searchParams.get('id'); if(param) { document.getElementById(param).scrollIntoView(); } // When the user clicks on (x), close the modal document.querySelector('.data-verification-close').addEventListener('click', function(e) { e.preventDefault(); closeVerificationModal(); }); document.querySelector('#data-verification-icon, #data-verification-container p').addEventListener('click', function(e) { e.preventDefault(); // Detect a href's click, because it is overwritten. if(e.target.tagName === "A") { window.open(e.target.href, '_blank'); return; } document.querySelector('#data-verification-icon').classList.add("clicked"); setTimeout(()=>{ toggleFadeiSense(document.querySelector("#data-verification-modal"), false); document.querySelector('#data-verification-background .loading').style.display = 'inline-block'; consentGiven = true; ccpaSendRequest(function(resp) { consentGiven = false; closeVerificationModal(); }); }, 400); }); }); function openVerificationModal(){ toggleFadeiSense(document.querySelector("#data-verification-modal"), true); toggleFadeiSense(document.querySelector('#data-verification-background'), true); } function closeVerificationModal(){ toggleFadeiSense(document.querySelector("#data-verification-background"), false); document.querySelector('#data-verification-icon').classList.remove("clicked"); document.querySelector('#data-verification-background .loading').style.display = 'none'; } document.querySelector('#btn-ccpa-edit-account-request').addEventListener('click', function(e) { e.preventDefault(); ccpaSlideUpAll(); slideDown(document.querySelector('#form-ccpa-edit-account-request'), 200); this.setAttribute("aria-expanded", "true"); }); document.querySelector('#form-ccpa-edit-account-request-submit').addEventListener('click', function(e) { e.preventDefault(); email = document.querySelector('#form-ccpa-edit-account-request-email').value; type = 'customer/edit'; openVerificationModal(); }); document.querySelectorAll('#btn-ccpa-requests-request, #btn-ccpa-personal-information-request, #btn-ccpa-orders-request').forEach(element => { element.addEventListener('click', function(e) { e.preventDefault(); ccpaSlideUpAll(); type = ''; // Reset the popup message document.querySelector('#ccpa-modal-container-text').innerHTML = 'I give my consent on collecting my email and IP address for the purpose of processing this request. For more check
Privacy Policy & Terms of Service.'; switch(this.getAttribute('id')) { case 'btn-ccpa-requests-request': type = 'customer/requests'; break; case 'btn-ccpa-personal-information-request': type = 'customer/personal_info'; break; case 'btn-ccpa-orders-request': type = 'customer/orders'; break; } document.querySelector('#form-ccpa-data-account-request-request-type').value = type; slideDown(document.querySelector('#form-ccpa-data-account-request'), 200); this.setAttribute("aria-expanded", "true"); }) }); document.querySelector('#form-ccpa-data-account-request-submit').addEventListener('click', function(e) { e.preventDefault(); email = document.querySelector('#form-ccpa-data-account-request-email').value; type = document.querySelector('#form-ccpa-data-account-request-request-type').value; openVerificationModal(); }); document.querySelector('#btn-ccpa-personal-data-report-request').addEventListener('click', function(e) { e.preventDefault(); ccpaSlideUpAll(); slideDown(document.querySelector('#form-ccpa-personal-data-report-request'), 200); this.setAttribute("aria-expanded", "true"); }); document.querySelector('#form-ccpa-personal-data-report-request-submit').addEventListener('click', function(e) { e.preventDefault(); email = document.querySelector('#form-ccpa-personal-data-report-request-email').value; type = 'customer/report'; openVerificationModal(); }); document.querySelector('#btn-ccpa-do-not-sell-request').addEventListener('click', function(e) { e.preventDefault(); ccpaSlideUpAll(); slideDown(document.querySelector('#form-ccpa-do-not-sell-request'), 200); this.setAttribute("aria-expanded", "true"); }); document.querySelector('#form-ccpa-do-not-sell-request-submit').addEventListener('click', function(e) { e.preventDefault(); email = document.querySelector('#form-ccpa-do-not-sell-request-email').value; type = 'customer/do-not-sell'; // Check if customer is logged in if (__st.cid != undefined) { document.querySelector('#ccpa-modal-container-text').innerHTML = 'I give my consent on collecting my email and IP address for the purpose of processing this request. For more check
Privacy Policy & Terms of Service.'; } else { document.querySelector('#ccpa-modal-container-text').innerHTML = 'I give my consent on collecting my email and IP address for the purpose of processing this request. For more check
Privacy Policy & Terms of Service.
Note: If you are a guest user or you are not logged into your account, your opt-out choice will only be effective for this browser session.'; } openVerificationModal(); }); document.querySelector('#btn-ccpa-delete-account-request').addEventListener('click', function(e) { e.preventDefault(); ccpaSlideUpAll(); slideDown(document.querySelector('#form-ccpa-delete-account-request'), 200); this.setAttribute("aria-expanded", "true"); }); document.querySelector('#form-ccpa-delete-account-request-submit').addEventListener('click', function(e) { e.preventDefault(); email = document.querySelector('#form-ccpa-delete-account-request-email').value; type = 'customer/delete'; openVerificationModal(); });