Appisendrequest Functie Reactie en Spinner 1500ms Oneindig Draaien 360graden
#form-appi-edit-account-request,
#form-appi-requests-request,
#form-appi-personal-information-request,
#form-appi-orders-request,
#form-appi-personal-data-report-request,
#form-appi-delete-account-request ,
#form-appi-do-not-sell-request {
display: none;
}
#appi_page button {
background-color: transparent;
border: 0;
border-bottom: 1px solid black;
padding: 0px;
}
/* Modal achtergrond */
#data-verification-background {
display: none;
positie: fixed;
z-index: 1;
padding-top: calc(50vh - 83px);
links: 0;
boven: 0;
breedte: 100%;
hoogte: 100%;
overflow: auto;
achtergrondkleur: rgb(0,0,0);
achtergrondkleur: rgba(0,0,0,0.4);
opacity: unset;
z-index: 9999;
}
/* Modalinhoud */
#data-verification-modal {
background-color: #fefefe;
marge: auto;
padding: 16px;
border: 1px solid #888;
width: 38%;
}
/* Modal Sluitknop */
.data-verification-close {
color: #aaaaaa;
float: right;
font-size: 28px;
font-weight: bold;
line-height: 17px;
background-color: transparent;
border: 0px;
padding: 0px;
}
.data-verification-close:hover {
color: #000;
text-decoration: none;
cursor: pointer;
}
/* Checkbox Tekst */
#data-verification-container p{
display: inline-block;
opvulling: 0;
marge: 0;
lijnhoogte: 24px;
opvulling-links: 10px;
verticale uitlijning: boven;
breedte: calc(100% - 45px);
}
#data-verification-container a, #data-verification-container a:hover{
tekstdecoratie: onderstrepen!important;
kleur: #4285f4;
}
#data-verification-container input {
opacity: 0;
breedte: 0;
hoogte: 0;
marge: 0;
opvulling: 0;
}
/* Checkbox-pictogram */
#data-verification-icon {
cursor: pointer;
positie: relatief;
marge: auto;
breedte: 18px;
hoogte: 18px;
-webkit-tap-highlight-color: transparant;
transform: translate3d(0, 0, 0);
marge-boven: 2px;
}
#data-verification-icon:before {
inhoud: "";
positie: absoluut;
boven: -7px;
links: -7px;
breedte: 32px;
hoogte: 32px;
border-radius: 50%;
achtergrond: rgba(34,50,84,0.03);
opacity: 0;
transition: opacity 0.2s ease;
}
#data-verification-icon svg {
positie: relatief;
z-index: 1;
fill: geen;
stroke-linecap: rond;
stroke-linejoin: rond;
stroke: #c8ccd4;
stroke-width: 1.5;
transform: translate3d(0, 0, 0);
transition: alles 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 {
doorzichtigheid: 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;
overgang: alles 0.3s lineair;
}
#data-verification-icon.clicked svg polyline {
stroke-dashoffset: 42;
overgang: alles 0.2s lineair;
overgangsvertraging: 0.15s;
}
/* Toegankelijkheidsontwerp */
#data-verification-icon:focus, .data-verification-close:focus, #data-verification-container input:focus ~ #data-verification-icon svg, #data-verification-container a:focus {
box-shadow: 0 0 0 3px rgba(21, 156, 228, 0.4);
overgang: alles 0.3s ease;
omtrek: geen;
transform: scale(1.06);
}
#appi_page .list-unstyled li button {
cursor: pointer;
}
.show-isense {
transition: opacity 400ms !important;
}
.hide-isense {
opacity: 0 !important;
transition: 0.4s ease-out;
}
/* Modalwijzigingen bij mobiele resolutie */
@media only screen and (max-width: 600px) {
#data-verification-modal {
width: 90%;
}
}
/* Laadelement */
.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 oneindig lineair;
-moz-animation: spinner 1500ms oneindig lineair;
-ms-animation: spinner 1500ms oneindig lineair;
-o-animation: spinner 1500ms oneindig lineair;
animation: spinner 1500ms oneindig lineair;
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;
}
/* Animatie */
@-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);
}
}
Wanneer u via de compliance-pagina een verzoek tot toegang tot gegevens van de betrokkene (DSAR) indient, verwerkt onze compliance-provider Consentmo alleen het IP-adres en het e-mailadres om het verzoek af te handelen. Deze beperkte gegevensverwerking wordt uitgevoerd om uw privacy te beschermen en tegelijkertijd een efficiënte afhandeling van het verzoek te garanderen. Voor meer informatie, zie het gegevensverwerkingsbeleid van Consentmo.
Correctie van gegevens
Als uw accountgegevens onjuist zijn, kunt u deze eenvoudig bijwerken of corrigeren via de onderstaande link. Deze functie zorgt ervoor dat uw persoonlijke gegevens altijd nauwkeurig en up-to-date zijn, zodat u onze diensten soepel kunt gebruiken.
Dataportabiliteit
Via de onderstaande link kunt u alle gegevens downloaden die wij opslaan en gebruiken voor een betere ervaring in onze winkel. Dit stelt u in staat om uw informatie volledig te beheren en indien nodig over te dragen aan andere diensten. Deze functie is vooral handig bij het controleren van bestelgeschiedenis en persoonlijke informatie van producten zoals dameshandtassen en portemonnees.
Toegang tot persoonlijke gegevens
U kunt een uitgebreid rapport aanvragen met alle persoonlijke gegevens die wij bewaren via de onderstaande link. We zullen binnen 30 dagen op dit verzoek reageren. Dit stelt u in staat om duidelijk te begrijpen hoe uw gegevens worden gebruikt.
Weigering van verkoop van persoonlijke gegevens aan derden
Als u niet akkoord gaat met het verzamelen of verkopen van uw persoonsgegevens aan derden, kunt u een verzoek indienen. Deze optie respecteert uw privacy-instellingen en beschermt u tegen ongewenste gegevensdeling.
Recht om vergeten te worden
Als u uw persoonsgegevens of andere gerelateerde gegevens uit onze winkel wilt laten verwijderen, kunt u deze optie gebruiken. Houd er rekening mee dat uw account hierdoor volledig wordt verwijderd en u daarna geen toegang of gebruik meer heeft. Dit is een belangrijke functie om uw digitale voetafdruk volledig te wissen.
Recht op beperking van verwerking
特定の状況下で、お客様の個人データの処理を制限または一時的に停止するよう要求できます。この権利は、お客様のデータが不正確である場合や、処理に異議を唱える場合に特に重要です。サポートが必要な場合は、stiledonnabags@gmail.comまでご連絡ください。
Recht om bezwaar te maken
ダイレクトマーケティングや正当な利益に基づく処理など、特定のタイプのデータ処理に対して異議を唱える権利があります。この権利は、お客様が望まない目的でデータが使用されるのを防ぐために提供されています。異議の申し立てについては、stiledonnabags@gmail.comまでご連絡ください。
Contactgegevens
Voor vragen over uw persoonsgegevens of privacyrechten kunt u contact opnemen met onze functionaris voor gegevensbescherming (DPO). Wij beloven uw vragen snel en zorgvuldig te beantwoorden.
E-mail: stiledonnabags@gmail.com
Adres: Via Testulla 149, 95122 Catania Catania, Italy
Recht om een klacht in te dienen
Als u ontevreden bent over onze gegevensverwerking, heeft u het recht een klacht in te dienen bij de nationale privacytoezichthouder. Uw rechten staan voorop en wij zorgen ervoor dat uw zorgen adequaat worden opgelost.
/* SLIDE UP */
let slideUp = (target, duration=500) => {
target.style.transitionProperty = 'height, margin, padding';
target.style.transitionDuration = duration + 'ms';
target.style.boxSizing = 'border-box';
target.style.height = target.offsetHeight + 'px';
target.offsetHeight;
target.style.overflow = 'hidden';
target.style.height = 0;
target.style.paddingTop = 0;
target.style.paddingBottom = 0;
target.style.marginTop = 0;
target.style.marginBottom = 0;
window.setTimeout( () => {
target.style.display = 'none';
target.style.removeProperty('height');
target.style.removeProperty('padding-top');
target.style.removeProperty('padding-bottom');
target.style.removeProperty('margin-top');
target.style.removeProperty('margin-bottom');
target.style.removeProperty('overflow');
target.style.removeProperty('transition-duration');
target.style.removeProperty('transition-property');
}, duration);
}
/* SLIDE DOWN */
let slideDown = (target, duration=500) => {
setTimeout(function(){
target.style.removeProperty('display');
let display = window.getComputedStyle(target).display;
if (display === 'none') display = 'block';
target.style.display = display;
let height = target.offsetHeight;
target.style.overflow = 'hidden';
target.style.height = 0;
target.style.paddingTop = 0;
target.style.paddingBottom = 0;
target.style.marginTop = 0;
target.style.marginBottom = 0;
target.offsetHeight;
target.style.boxSizing = 'border-box';
target.style.transitionProperty = "height, margin, padding";
target.style.transitionDuration = duration + 'ms';
target.style.height = height + 'px';
target.style.removeProperty('padding-top');
target.style.removeProperty('padding-bottom');
target.style.removeProperty('margin-top');
target.style.removeProperty('margin-bottom');
window.setTimeout( () => {
target.style.removeProperty('height');
target.style.removeProperty('overflow');
target.style.removeProperty('transition-duration');
target.style.removeProperty('transition-property');
}, duration);
}, 100)
}
/* SCHAKELEN */
var slideToggle = (target, duration = 500) => {
if (window.getComputedStyle(target).display === 'none') {
return slideDown(target, duration);
} anders {
return slideUp(target, duration);
}
}
/* VERVAGEN */
var toggleFadeiSense = (elem, show) => {
if (show) {
elem.style.display = "block";
setTimeout(function(){
elem.classList.add('show-isense');
elem.classList.remove('hide-isense');
},20)
} anders {
elem.classList.remove('show-isense');
elem.classList.add('hide-isense');
setTimeout(() => {
elem.style.display = 'none';
}, 400)
}
}
var appiSlideUpAll = function() {
slideUp(document.querySelector('#form-appi-edit-account-request'), 100);
document.querySelector('#btn-appi-edit-account-request').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-appi-requests-request'), 100);
document.querySelector('#btn-appi-requests-request').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-appi-personal-information-request'), 100);
document.querySelector('#btn-appi-personal-information-request').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-appi-orders-request'), 100);
document.querySelector('#btn-appi-orders-request').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-appi-personal-data-report-request'), 100);
document.querySelector('#btn-appi-personal-data-report-request').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-appi-do-not-sell-request'), 100);
document.querySelector('#btn-appi-do-not-sell-request').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-appi-delete-account-request'), 100);
document.querySelector('#btn-appi-delete-account-request').setAttribute("aria-expanded", "false");
document.querySelector('#appi_page button').setAttribute("aria-expanded", "false");
};
var email, type, consentGiven = false;
var verificationModalContent = '
Ik geef mijn toestemming voor het verzamelen van mijn e-mailadres en IP-adres voor het verwerken van dit verzoek. Voor meer informatie, zie Privacybeleid & Servicevoorwaarden.
';
var isEmailValid = function(email) {
let regex = /^(([^()\[\]\\.,;:\s@"]+(\.[^()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
if (email == '' || email == undefined) {
return false;
} anders {
return regex.test(email);
}
}
var appiSendRequest = 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 });
if (typeof window.Shopify.customerPrivacy !== 'undefined' && typeof window.Shopify.customerPrivacy.setTrackingConsent === 'function') {
window.Shopify.customerPrivacy.setTrackingConsent(
{
"sale_of_data": false,
},
() => { console.log('sale_of_data: false')}
);
} anders {
console.log('Customer Privacy API is niet gedefinieerd op de huidige pagina');
}
if (document.querySelector('.cc-window')) {
document.querySelector('.cc-window').style.display = 'none';
}
// reset popup tekst
document.querySelector('#appi-modal-container-text').innerHTML = 'Ik geef mijn toestemming voor het verzamelen van mijn e-mailadres en IP-adres voor het verwerken van dit verzoek. Voor meer informatie, zie Privacybeleid & Servicevoorwaarden.';
}
formData.append('shop', Shopify.shop);
formData.append('email', email);
formData.append('type', type);
formData.append('sourceOfRequest', 3);
formData.append('ipAddress', ipInfo);
formData.append('consentGiven', toestemmingGegeven);
formData.append('page', 'appi');
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', {
methode: 'POST',
body: formData
})
.then(resp => resp.json())
.then(resp => {
if (!resp.error) {
appiSlideUpAll();
if (resp.message.length) {
alert(resp.message);
} anders {
alert('Uw aanvraag is succesvol ingediend. Controleer uw e-mail voor meer informatie.');
}
} anders {
alert(resp.message);
}
if (typeof callback == 'function') {
callback(resp);
}
})
.catch(error => {
alert(error.message);
})
}
else {
alert(resp.message);
}
})
}
//Modal toevoegen aan body, want anders blijft het niet gecentreerd (zelfs niet als de positie fixed is)
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();
}
// Wanneer de gebruiker op (x) klikt, sluit de modal
document.querySelector('.data-verification-close').addEventListener('click', function(e) {
e.preventDefault();
sluitVerificatieModal();
// Focus de knop van het type verzoek dat is gekozen
let appiForms = document.querySelectorAll('.form-appi-request');
appiForms.forEach(function(appiForm) {
if (appiForm.style.display !== "none") {
let appiFormLinks = appiForm.previousElementSibling.querySelectorAll('li');
if (appiFormLinks.length === 1) {
appiFormLinks[0].querySelector('button').focus();
}
}
});
});
document.querySelector('#data-verification-icon, #data-verification-container p').addEventListener('click', function(e) {
e.preventDefault();
// Detecteer een klik op href, omdat deze wordt overschreven.
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';
toestemmingGegeven = true;
appiVerzoekVerzenden(function(resp) {
toestemmingGegeven = false;
sluitVerificatieModal();
});
}, 400);
});
});
function openVerificatieModal(){
if(!isEmailValid(email)) {
alert('Ongeldig e-mailadres');
return;
}
toggleFadeiSense(document.querySelector("#data-verification-modal"), true);
toggleFadeiSense(document.querySelector('#data-verification-background'), true);
document.querySelector('#data-verification-container input').focus();
}
function sluitVerificatieModal(){
toggleFadeiSense(document.querySelector("#data-verification-background"), false);
document.querySelector('#data-verification-icon').classList.remove("clicked");
document.querySelector('#data-verification-background .loading').style.display = 'none';
// Focus de knop van het type verzoek dat is gekozen
let appiForms = document.querySelectorAll('.form-appi-request');
appiForms.forEach(function(appiForm) {
if (appiForm.style.display !== "none") {
let appiFormLinks = appiForm.previousElementSibling.querySelectorAll('li');
if (appiFormLinks.length === 1) {
appiFormLinks[0].querySelector('button').focus();
} anders {
// Focuslogica voor Data Portability-verzoeken
appiFormLinks = appiForm.parentElement;
if (appiFormLinks.nodeName === 'LI') {
appiFormLinks.querySelector('button').focus();
}
}
}
});
}
document.querySelector('#btn-appi-edit-account-request').addEventListener('click', function(e) {
e.preventDefault();
let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false;
appiSlideUpAll();
if(!isExpanded) {
slideDown(document.querySelector('#form-appi-edit-account-request'), 200);
this.setAttribute("aria-expanded", "true");
} anders {
slideUp(document.querySelector('#form-appi-edit-account-request'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-appi-edit-account-request-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-appi-edit-account-request-email').value;
type = 'customer/edit';
appiVerzoekVerzenden(function(resp) {
toestemmingGegeven = true;
});
});
document.querySelector('#btn-appi-requests-request').addEventListener('click', function(e) {
e.preventDefault();
let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false;
appiSlideUpAll();
if(!isExpanded) {
slideDown(document.querySelector('#form-appi-requests-request'), 200);
this.setAttribute("aria-expanded", "true");
} anders {
slideUp(document.querySelector('#form-appi-requests-request'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-appi-requests-request-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-appi-requests-request-email').value;
type = 'customer/requests';
appiVerzoekVerzenden(function(resp) {
toestemmingGegeven = true;
});
});
document.querySelector('#btn-appi-personal-information-request').addEventListener('click', function(e) {
e.preventDefault();
let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false;
appiSlideUpAll();
if(!isExpanded) {
slideDown(document.querySelector('#form-appi-personal-information-request'), 200);
this.setAttribute("aria-expanded", "true");
} anders {
slideUp(document.querySelector('#form-appi-personal-information-request'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-appi-personal-information-request-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-appi-personal-information-request-email').value;
type = 'customer/personal_info';
appiVerzoekVerzenden(function(resp) {
toestemmingGegeven = true;
});
});
document.querySelector('#btn-appi-orders-request').addEventListener('click', function(e) {
e.preventDefault();
let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false;
appiSlideUpAll();
if(!isExpanded) {
slideDown(document.querySelector('#form-appi-orders-request'), 200);
this.setAttribute("aria-expanded", "true");
} anders {
slideUp(document.querySelector('#form-appi-orders-request'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-appi-orders-request-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-appi-orders-request-email').value;
type = 'customer/orders';
appiVerzoekVerzenden(function(resp) {
toestemmingGegeven = true;
});
});
document.querySelector('#btn-appi-personal-data-report-request').addEventListener('click', function(e) {
e.preventDefault();
let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false;
appiSlideUpAll();
if(!isExpanded) {
slideDown(document.querySelector('#form-appi-personal-data-report-request'), 200);
this.setAttribute("aria-expanded", "true");
} anders {
slideUp(document.querySelector('#form-appi-personal-data-report-request'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-appi-personal-data-report-request-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-appi-personal-data-report-request-email').value;
type = 'customer/report';
appiVerzoekVerzenden(function(resp) {
toestemmingGegeven = true;
});
});
document.querySelector('#btn-appi-do-not-sell-request').addEventListener('click', function(e) {
e.preventDefault();
let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false;
appiSlideUpAll();
if(!isExpanded) {
slideDown(document.querySelector('#form-appi-do-not-sell-request'), 200);
this.setAttribute("aria-expanded", "true");
} anders {
slideUp(document.querySelector('#form-appi-do-not-sell-request'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-appi-do-not-sell-request-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-appi-do-not-sell-request-email').value;
type = 'customer/do-not-sell';
// Controleer of klant is ingelogd
if (__st.cid != undefined) {
document.querySelector('#appi-modal-container-text').innerHTML = 'Ik geef mijn toestemming voor het verzamelen van mijn e-mailadres en IP-adres voor het verwerken van dit verzoek. Voor meer informatie, zie Privacybeleid & Servicevoorwaarden.';
} anders {
document.querySelector('#appi-modal-container-text').innerHTML = 'Ik geef mijn toestemming voor het verzamelen van mijn e-mailadres en IP-adres voor het verwerken van dit verzoek. Voor meer informatie, zie Privacybeleid & Servicevoorwaarden. Opmerking: Als u een gastgebruiker bent of niet bent ingelogd op uw account, is uw afmeldkeuze alleen van kracht voor deze browsersessie.';
}
appiVerzoekVerzenden(function(resp) {
toestemmingGegeven = true;
});
});
document.querySelector('#btn-appi-delete-account-request').addEventListener('click', function(e) {
e.preventDefault();
let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false;
appiSlideUpAll();
if(!isExpanded) {
slideDown(document.querySelector('#form-appi-delete-account-request'), 200);
this.setAttribute("aria-expanded", "true");
} anders {
slideUp(document.querySelector('#form-appi-delete-account-request'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-appi-delete-account-request-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-appi-delete-account-request-email').value;
type = 'customer/delete';
appiVerzoekVerzenden(function(resp) {
toestemmingGegeven = true;
});
});
// Toetsenbordnavigatie in data verificatie modal voor toegankelijkheid
document.querySelector('#data-verification-modal').addEventListener('keydown', function(e) {
let isTabPressed = e.keyCode === 9 || e.key === "Tab" || e.code === "Tab";
let isEscapePressed = e.keyCode === 27 || e.key === "Escape" || e.code === "Escape";
let isSpacePressed = event.keyCode === 32 || e.key === " " || event.code === "Space";
let isEnterPressed = event.keyCode === 13 || e.key === "Enter" || event.code === "Enter";
let dataVerificationCloseButton = document.querySelector('.data-verification-close');
let dataVerificationCheckbox = document.querySelector('#data-verification-container input');
let dataVerificationLink = document.querySelector('#data-verification-container a');
// Deze functie bespaart ons de moeite om e.preventDefault() na elke focusaanroep te moeten aanroepen
let executeFocus = (focusElement) => {focusElement.focus();e.preventDefault();}
if (isEscapePressed) {
if (dataVerificationCloseButton) {
dataVerificationCloseButton.click();
}
}
if (isSpacePressed || isEnterPressed) {
if (document.activeElement === dataVerificationCheckbox) {
document.querySelector('#data-verification-container #data-verification-icon').click();
}
}
if (isTabPressed) {
if (e.shiftKey) {
if (dataVerificationCloseButton && document.activeElement === dataVerificationCloseButton) {
executeFocus(dataVerificationLink);
}
} anders {
if (dataVerificationLink && document.activeElement === dataVerificationLink) {
executeFocus(dataVerificationCloseButton);
}
}
}
});

