<стиль>
#form-gdpr-edit-account-request,
#form-gdpr-data-account-request,
#form-gdpr-personal-data-report-request,
#form-gdpr-delete-account-request {
дисплей: нет;
}
Кнопка #gdpr_page {
цвет фона: прозрачный;
граница: 0;
нижняя граница: 1 пиксель, сплошной черный;
отступ: 0 пикселей;
}
/* Модальный фон */
#data-verification-background {
дисплей: нет;
положение: фиксированное;
z-индекс: 1;
отступ-верх: Calc(50vh - 83px);
слева: 0;
верх: 0;
ширина: 100%;
высота: 100%;
переполнение: авто;
цвет фона: RGB (0,0,0);
цвет фона: rgba(0,0,0,0.4);
непрозрачность: не установлена;
z-индекс: 9999;
}
/* Модальное содержимое */
#data-verification-modal {
цвет фона: #fefefe;
маржа: авто;
отступ: 16 пикселей;
граница: 1 пиксель, сплошная #888;
ширина: 38%;
непрозрачность: 1;
}
/* Модальная кнопка закрытия */
.data-verification-close {
цвет: #аааааа;
плавать: вправо;
размер шрифта: 28 пикселей;
начертание шрифта: жирный;
высота строки: 17 пикселей;
}
.data-verification-close:hover,
.data-verification-close:focus {
цвет: #000;
текстовое оформление: нет;
курсор: указатель;
}
/* Текст флажка */
#data-verification-container p {
отображение: встроенный блок;
заполнение: 0;
маржа: 0;
высота строки: 24 пикселей;
отступ слева: 10 пикселей;
вертикальное выравнивание: сверху;
ширина: расчет (100 % – 45 пикселей);
}
#data-verification-container a, #data-verification-container a:hover{
оформление текста: подчеркнуть! важно;
цвет: #4285f4;
}
/* Значок флажка */
#data-verification-icon {
курсор: указатель;
положение: относительное;
маржа: авто;
ширина: 18 пикселей;
высота: 18 пикселей;
-webkit-tap-highlight-color: прозрачный;
трансформировать: Translate3d (0, 0, 0);
поле сверху: 2 пикселя;
}
#data-verification-icon:before {
содержание: "";
позиция: абсолютная;
верх: -7 пикселей;
слева: -7 пикселей;
ширина: 32 пикселей;
высота: 32 пикселей;
радиус границы: 50%;
фон: rgba(34,50,84,0.03);
непрозрачность: 0;
переход: непрозрачность 0,2 с, легкость;
}
#data-verification-icon svg {
положение: относительное;
z-индекс: 1;
заливка: нет;
штрих-линейная крышка: круглая;
соединение штрих-линии: круглый;
штрих: #c8ccd4;
ширина штриха: 1,5;
трансформировать: Translate3d (0, 0, 0);
переход: все 0,2 секунды легкости;
}
#data-verification-icon путь SVG {
удар-дашаррай: 60;
штрих-дашоффсет: 0;
}
#data-verification-icon svg ломаная {
удар-дашаррай: 22;
смещение штриха-тире: 66;
}
#data-verification-icon:hover:before {
непрозрачность: 1;
}
#data-verification-container:hover #data-verification-icon svg {
штрих: #4285f4;
}
#data-verification-icon.clicked svg {
штрих: #4285f4;
}
#data-verification-icon.clicked путь SVG {
смещение штриха-тире: 60;
переход: все 0,3 с линейные;
}
#data-verification-icon.clicked ломаная линия svg {
смещение штриха-тире: 42;
переход: все 0,2 с линейные;
задержка перехода: 0,15 с;
}
/* Загрузка элемента */
.загрузка {
дисплей: нет;
верх: 50вх;
слева: 50vw;
положение: фиксированное;
}
.loading:not(:required):после {
содержание: '';
дисплей: блок;
размер шрифта: 10 пикселей;
ширина: 1эм;
высота: 1ем;
маржа-верх: -0,5em;
-webkit-animation: спиннер 1500 мс, бесконечный линейный;
-moz-анимация: спиннер 1500 мс, бесконечная линейная;
-ms-анимация: спиннер 1500 мс, бесконечная линейная;
-o-анимация: спиннер 1500 мс, бесконечная линейная;
анимация: спиннер 1500 мс, бесконечная линейная;
радиус границы: 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 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,1эм-1,1ем 0 0;
}
#gdpr_page .list-unstyled li button {
курсор: указатель;
}
.show-isense {
переход: непрозрачность 400 мс !важно;
}
.hide-isense {
непрозрачность: 0 !важно;
переход: замедление 0,4 с;
}
/* Модальные изменения мобильного разрешения*/
Только экран @media и (максимальная ширина: 600 пикселей) {
#data-verification-modal {
ширина: 90%;
}
}
/* Анимация */
@-webkit-keyframes счетчик {
0% {
-webkit-transform: поворот (0 градусов);
-moz-transform: поворот (0град);
-ms-transform: поворот (0град);
-o-transform: поворот (0град);
преобразование: поворот (0 градусов);
}
100% {
-webkit-transform: поворот (360 градусов);
-moz-transform: поворот (360 градусов);
-ms-transform: поворот (360 градусов);
-o-transform: поворот (360 градусов);
преобразование: поворот (360 градусов);
}
}
@-moz-keyframes счетчик {
0% {
-webkit-transform: поворот (0 градусов);
-moz-transform: поворот (0град);
-ms-transform: поворот (0град);
-o-transform: поворот (0град);
преобразование: поворот (0 градусов);
}
100% {
-webkit-transform: поворот (360 градусов);
-moz-transform: поворот (360 градусов);
-ms-transform: поворот (360 градусов);
-o-transform: поворот (360 градусов);
преобразование: поворот (360 градусов);
}
}
@-o-keyframes счетчик {
0% {
-webkit-transform: поворот (0 градусов);
-moz-transform: поворот (0град);
-ms-transform: поворот (0град);
-o-transform: поворот (0град);
преобразование: поворот (0 градусов);
}
100% {
-webkit-transform: поворот (360 градусов);
-moz-transform: поворот (360 градусов);
-ms-transform: поворот (360 градусов);
-o-transform: поворот (360 градусов);
преобразование: поворот (360 градусов);
}
}
@keyframes счетчик {
0% {
-webkit-transform: поворот (0 градусов);
-moz-transform: поворот (0град);
-ms-transform: поворот (0град);
-o-transform: поворот (0град);
преобразование: поворот (0 градусов);
}
100% {
-webkit-transform: поворот (360 градусов);
-moz-transform: поворот (360 градусов);
-ms-transform: поворот (360 градусов);
-o-transform: поворот (360 градусов);
преобразование: поворот (360 градусов);
}
}
стиль>
Приложение, используемое для обеспечения соответствия этого сайта GDPR/CCPA/APPI/PIPEDA, собирает ваш IP-адрес и адрес электронной почты для обработки данных. Дополнительную информацию см. в
Политике конфиденциальности и amp; Условия использования
а>
Исправление данных
Вы можете использовать ссылку ниже, чтобы обновить данные своей учетной записи, если они неточны.
Изменить информацию своей учетной записи
<форма>
Введите адрес электронной почты, чтобы подтвердить свою личность
форма>
Переносимость данных
Вы можете использовать ссылки ниже, чтобы загрузить все данные, которые мы храним и используем, для повышения удобства работы в нашем магазине.
Запросы GDPR< /button>
Личное информация
Заказы
<форма>
Введите адрес электронной почты, чтобы подтвердить свою личность
форма>
Доступ к персональным данным
Вы можете использовать ссылку ниже, чтобы запросить отчет, который будет содержать всю личную информацию, которую мы храним для вас.
<форма>
Введите адрес электронной почты, чтобы подтвердить свою личность
форма>
Право на забвение
Используйте эту опцию, если хотите удалить свои личные и другие данные из нашего магазина. Имейте в виду, что этот процесс приведет к удалению вашей учетной записи, и вы больше не сможете получить к ней доступ или использовать .
Запросить удаление личных данных
<форма>
Введите адрес электронной почты, чтобы подтвердить свою личность
форма>
<скрипт>
/* СЛАЙД ВВЕРХ */
letlideUp = (цель, длительность=500) => {
target.style.transitionProperty = 'высота, поле, отступ';
target.style.transitionDuration = продолжительность + 'мс';
target.style.boxSizing = 'border-box';
target.style.height = target.offsetHeight + 'px';
цель.offsetHeight;
target.style.overflow = 'скрытый';
цель.стиль.высота = 0;
target.style.paddingTop = 0;
target.style.paddingBottom = 0;
target.style.marginTop = 0;
target.style.marginBottom = 0;
window.setTimeout( () => {
target.style.display = 'нет';
target.style.removeProperty('высота');
target.style.removeProperty('padding-top');
target.style.removeProperty('padding-bottom');
target.style.removeProperty('margin-top');
target.style.removeProperty('маржа-дно');
target.style.removeProperty('переполнение');
target.style.removeProperty('продолжительность перехода');
target.style.removeProperty('переходное свойство');
}, продолжительность);
}
/* СЛАЙЗ ВНИЗ */
пусть слайдДаун = (цель, продолжительность = 500) => {
setTimeout(функция(){
target.style.removeProperty('display');
пусть display = window.getComputedStyle(target).display;
if (display === 'none') display = 'block';
target.style.display = отображение;
пусть высота = target.offsetHeight;
target.style.overflow = 'скрытый';
цель.стиль.высота = 0;
target.style.paddingTop = 0;
target.style.paddingBottom = 0;
target.style.marginTop = 0;
target.style.marginBottom = 0;
цель.offsetHeight;
target.style.boxSizing = 'border-box';
target.style.transitionProperty = "высота, поле, отступ";
target.style.transitionDuration = продолжительность + 'мс';
target.style.height = высота + 'px';
target.style.removeProperty('padding-top');
target.style.removeProperty('padding-bottom');
target.style.removeProperty('margin-top');
target.style.removeProperty('маржа-дно');
window.setTimeout( () => {
target.style.removeProperty('высота');
target.style.removeProperty('переполнение');
target.style.removeProperty('продолжительность перехода');
target.style.removeProperty('переходное свойство');
}, продолжительность);
}, 100)
}
/* ТУГЛ */
var слайдToggle = (цель, продолжительность = 500) => {
if (window.getComputedStyle(target).display === 'none') {
вернуть слайдDown(цель, продолжительность);
} еще {
вернуть слайдВверх (цель, продолжительность);
}
}
/* ТУСКНЕТЬ */
var toggleFadeiSense = (elem, show) => {
если (показать) {
elem.style.display = "блокировать";
setTimeout(функция(){
elem.classList.add('show-isense');
elem.classList.remove('hide-isense');
},20)
} еще {
elem.classList.remove('show-isense');
elem.classList.add('hide-isense');
setTimeout(() => {
elem.style.display = 'нет';
}, 400)
}
}
вар gdprSlideUpAll = функция() {
слайдUp(document.querySelector('#form-gdpr-edit-account-request'), 100);
слайдUp(document.querySelector('#form-gdpr-data-account-request'), 100);
слайдUp(document.querySelector('#form-gdpr-personal-data-report-request'), 100);
слайдUp(document.querySelector('#form-gdpr-delete-account-request'), 100);
document.querySelector('#gdpr_page button').setAttribute("aria-expanded", "false");
};
вар электронная почта, тип, согласиегивен = ложь;
varverificationModalContent = '
';
вар gdprSendRequest = функция (обратный вызов) {
fetch('https://www.cloudflare.com/cdn-cgi/trace', {
метод: 'GET',
заголовки: {
«Тип контента»: «текст/обычный»,
},
})
.then(соответственно => соотв.текст())
.then(соответственно => {
если (!resp.error) {
пусть ipInfo = соответственно;
пусть formData = новый FormData();
formData.append('магазин', Shopify.shop);
formData.append('электронная почта', электронная почта);
formData.append('тип', тип);
formData.append('sourceOfRequest', 1);
formData.append('ipAddress', ipInfo);
formData.append('consentGiven', согласиеGiven);
formData.append('страница', 'gdpr');
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', {
метод: 'POST',
тело: formData
})
.then(соответственно => соотв.json())
.then(соответственно => {
если (!resp.error) {
gdprSlideUpAll();
если (соответственно.message.length) {
оповещение (соответственно.сообщение);
} еще {
alert('Ваш запрос успешно отправлен. Пожалуйста, проверьте свою электронную почту для получения дополнительной информации.');
}
} еще {
оповещение (соответственно.сообщение);
}
if (обратный вызов typeof == 'function') {
обратный вызов (соответственно);
}
})
.catch(ошибка => {
предупреждение (ошибка.сообщение);
})
}
еще {
оповещение (соответственно.сообщение);
}
})
}
//Добавляем модальное окно к телу, иначе оно не будет оставаться по центру (даже если позиция фиксирована)
document.querySelector("body").insertAdjacentHTML('beforeend', VerificationModalContent);
document.addEventListener("DOMContentLoaded", function() {
// Когда пользователь нажимает
(x), закрываем модальное окно
document.querySelector('.data-verification-close').addEventListener('click', function(e) {
е.preventDefault();
закрытьVerificationModal();
});
document.querySelector('#data-verification-icon, #data-verification-container p').addEventListener('click', function(e) {
е.preventDefault();
// Обнаруживаем щелчок по ссылке, поскольку она перезаписана.
if(e.target.tagName === "A") {
window.open(e.target.href, '_blank');
возвращаться;
}
document.querySelector('#data-verification-icon').classList.add("нажат");
setTimeout(()=>{
toggleFadeiSense(document.querySelector("#data-verification-modal"), false);
document.querySelector('#data-verification-background .loading').style.display = 'inline-block';
согласиегивен = правда;
gdprSendRequest(функция(соответственно) {
согласиегивен = ложь;
закрытьVerificationModal();
});
}, 400);
});
});
функция openVerificationModal(){
toggleFadeiSense(document.querySelector("#data-verification-modal"), true);
toggleFadeiSense(document.querySelector('#data-verification-background'), true);
}
функция closeVerificationModal(){
toggleFadeiSense(document.querySelector("#data-verification-background"), false);
document.querySelector('#data-verification-icon').classList.remove("нажат");
document.querySelector('#data-verification-background .loading').style.display = 'none';
}
document.querySelector('#btn-gdpr-edit-account-request').addEventListener('click', function(e) {
е.preventDefault();
gdprSlideUpAll();
слайдDown(document.querySelector('#form-gdpr-edit-account-request'), 200);
this.setAttribute("aria-expanded", "true");
});
document.querySelector('#form-gdpr-edit-account-request-submit').addEventListener('click', function(e) {
е.preventDefault();
электронная почта = document.querySelector('#form-gdpr-edit-account-request-email').value;
тип = 'клиент/редактировать';
openVerificationModal();
});
document.querySelectorAll('#btn-gdpr-requests-request, #btn-gdpr-personal-information-request, #btn-gdpr-orders-request').forEach(element => {
element.addEventListener('click', function(e) {
е.preventDefault();
gdprSlideUpAll();
тип = '';
переключатель(this.getAttribute('id')) {
случай «btn-gdpr-requests-request»:
тип = 'клиент/запросы';
перерыв;
случай 'btn-gdpr-запрос-личной-информации':
тип = 'клиент/personal_info';
перерыв;
случай «btn-gdpr-orders-request»:
тип = 'клиент/заказы';
перерыв;
}
document.querySelector('#form-gdpr-data-account-request-request-type').value = type;
слайдDown(document.querySelector('#form-gdpr-data-account-request'), 200);
this.setAttribute("aria-expanded", "true");
})
});
document.querySelector('#form-gdpr-data-account-request-submit').addEventListener('click', function(e) {
е.preventDefault();
электронная почта = document.querySelector('#form-gdpr-data-account-request-email').value;
type = document.querySelector('#form-gdpr-data-account-request-request-type').value;
openVerificationModal();
});
document.querySelector('#btn-gdpr-personal-data-report-request').addEventListener('click', function(e) {
е.preventDefault();
gdprSlideUpAll();
слайдDown(document.querySelector('#form-gdpr-personal-data-report-request'), 200);
this.setAttribute("aria-expanded", "true");
});
document.querySelector('#form-gdpr-personal-data-report-request-submit').addEventListener('click', function(e) {
е.preventDefault();
электронная почта = document.querySelector('#form-gdpr-personal-data-report-request-email').value;
тип = 'клиент/отчет';
openVerificationModal();
});
document.querySelector('#btn-gdpr-delete-account-request').addEventListener('click', function(e) {
е.preventDefault();
gdprSlideUpAll();
слайдDown(document.querySelector('#form-gdpr-delete-account-request'), 200);
this.setAttribute("aria-expanded", "true");
});
document.querySelector('#form-gdpr-delete-account-request-submit').addEventListener('click', function(e) {
е.preventDefault();
электронная почта = document.querySelector('#form-gdpr-delete-account-request-email').value;
тип = 'клиент/удалить';
openVerificationModal();
});
скрипт>