GDPR Senden Anforderungsfunktion und Ladeanzeige 1500ms Unendliche Rotation um 360 Grad
```html
#form-gdpr-aktualisierung-konto-anfrage,
#form-gdpr-anfragen-anfrage,
#form-gdpr-persönliche-informationsanfrage,
#form-gdpr-bestellungen-anfrage,
#form-gdpr-personal-data-report-anfrage,
#form-gdpr-konto-löschen-anfrage {
anzeige: keine;
}
#gdpr_seite button {
hintergrundfarbe: transparent;
rand: 0;
rand-unten: 1px solid schwarz;
padding: 0px;
}
/* Modal-Hintergrund */
#data-verification-hintergrund {
anzeigen: keine;
position: fixed;
z-index: 1;
padding-top: calc(50vh - 83px);
links: 0;
oben: 0;
breite: 100%;
höhe: 100%;
overflow: auto;
hintergrundfarbe: rgb(0,0,0);
hintergrundfarbe: rgba(0,0,0,0.4);
opazität: unset;
z-index: 9999;
}
/* Modal-Inhalt */
#data-verification-modal {
hintergrundfarbe: #fefefe;
rand: auto;
padding: 16px;
rand: 1px solid #888;
breite: 38%;
opazität: 1;
}
/* Modal-Schließen-Button */
.data-verification-close {
farbe: #aaaaaa;
float: right;
schriftgröße: 28px;
schriftgewicht: bold;
zeilenhöhe: 17px;
hintergrundfarbe: transparent;
rand: 0px;
padding: 0px;
}
.data-verification-close:hover {
farbe: #000;
textdekoration: keine;
cursor: pointer;
}
/* Checkbox-Text */
#data-verification-container p {
anzeigen: inline-block;
padding: 0;
margin: 0;
zeilenhöhe: 24px;
padding-left: 10px;
vertikale-Ausrichtung: top;
width: calc(100% - 45px);
}
#data-verification-container a, #data-verification-container a:hover{
textdekoration: underline!important;
farbe: #4285f4;
}
#data-verification-container input {
opacity: 0;
breite: 0;
höhe: 0;
margin: 0;
padding: 0;
}
/* 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;
}
/* Barrierefreiheitsdesign */
#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);
transition: all 0.3s ease;
outline: none;
transform: scale(1.06);
}
/* Ladeelement */
.loading {
anzeigen: keine;
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;
}
#gdpr_seite .list-unstyled li button {
cursor: pointer;
}
.show-isense {
transition: opacity 400ms !important;
}
.hide-isense {
opacity: 0 !important;
transition: 0.4s ease-out;
}
/* Modal-Änderungen bei mobiler Auflösung*/
@media only screen and (max-width: 600px) {
#data-verification-modal {
width: 90%;
}
}
/* 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);
}
}
Wenn Sie eine Anfrage zum Zugriff auf personenbezogene Daten (DSAR) über unsere Compliance-Seite einreichen, verarbeitet unser Compliance-Anbieter, Consentmo, Ihre IP-Adresse und E-Mail ausschließlich zum Zweck der Erfüllung Ihrer Anfrage. Dies gewährleistet eine sichere und verifizierte Handhabung Ihrer persönlichen Informationen. Für weitere Details zur Verwaltung Ihrer Daten können Sie die Datenschutzrichtlinie von Consentmo überprüfen, indem Sie auf diesen Link klicken: Consentmo’s Datenschutzrichtlinie.
Datenkorrektur
Wenn Ihre Kontodaten ungenau sind oder aktualisiert werden müssen, können Sie diese effizient mithilfe des unten bereitgestellten Links korrigieren. Diese Funktion stellt sicher, dass Ihre persönlichen Informationen, die für ein nahtloses Nutzungserlebnis mit unseren Produkten wie Damenhandtaschen & Geldbörsen, aktuell und genau bleiben.
Datenübertragbarkeit
Wir ermöglichen es Ihnen, alle Daten, die wir speichern und die dazu verwendet werden, Ihr Einkaufserlebnis zu verbessern, insbesondere beim Durchstöbern unserer exquisiten Kollektion von Damenhandtaschen & Geldbörsen, herunterzuladen. Dadurch behalten Sie die volle Kontrolle und den Zugriff auf Ihre persönlichen Daten.
Zugriff auf persönliche Daten
Sie können einen umfassenden Bericht anfordern, der alle von uns gespeicherten persönlichen Informationen über Sie detailliert auflistet. Wir verpflichten uns, innerhalb von 30 Tagen auf Ihre Anfrage zu antworten und Ihnen Transparenz sowie Zugriff auf Ihre Daten zu gewähren. Dieser Prozess wird durch die Funktion gdprsendrequest_RESP erleichtert, um eine sichere Übermittlung Ihrer Informationen zu gewährleisten.
Recht auf Vergessenwerden
Mit dieser Option können Sie Ihre persönlichen und anderweitigen Daten dauerhaft aus unserem Shop entfernen. Bitte beachten Sie, dass die Einleitung dieses Prozesses zur Löschung Ihres Kontos führt, das dann nicht mehr zugänglich ist. Die Ladeanimation, die einem Spinner von 1500 ms unendlich rotierend entspricht, zeigt die Verarbeitung Ihrer Anfrage an.
Recht auf Einschränkung der Verarbeitung
Unter bestimmten Umständen haben Sie das Recht, zu beantragen, dass wir die Verarbeitung Ihrer persönlichen Daten beschränken oder vorübergehend einstellen. Für Unterstützung bei der Ausübung dieses Rechts wenden Sie sich bitte direkt an stiledonnabags@gmail.com.
Widerspruchsrecht
Sie haben das Recht, bestimmten Arten der Datenverarbeitung zu widersprechen, einschließlich Direktmarketing und Verarbeitung basierend auf berechtigten Interessen. Um Ihren Widerspruch einzureichen und sicherzustellen, dass Ihre Präferenzen respektiert werden, wenden Sie sich bitte an uns unter stiledonnabags@gmail.com.
Kontaktinformationen
Bei Fragen zu Ihren persönlichen Daten oder Datenschutzrechten wenden Sie sich bitte an unseren Datenschutzbeauftragten (DPO) unter den folgenden Kontaktdaten:
E-Mail: stiledonnabags@gmail.com
Adresse: Via Testulla 149, 95122 Catania Catania, Italien
Recht, eine Beschwerde einzureichen
Sollten Sie das Gefühl haben, dass Ihre Anliegen nicht ausreichend bearbeitet wurden, haben Sie das Recht, eine Beschwerde bei Ihrer nationalen Datenschutzbehörde einzureichen.
/* Nach oben -Slide*/
let slideUp = (ziel, dauer=500) => {
ziel.style.transitionProperty = 'height, margin, padding';
ziel.style.transitionDuration = dauer + 'ms';
ziel.style.boxSizing = 'border-box';
ziel.style.height = ziel.offsetHeight + 'px';
ziel.offsetHeight;
ziel.style-overflow: hidden;
ziel.style.height = 0;
ziel.style.paddingTop = 0;
ziel.style.paddingBottom = 0;
ziel.style.marginTop = 0;
ziel.style.marginBottom = 0;
window.setTimeout( () => {
ziel.style.display = 'none';
ziel.style.removeProperty('height');
ziel.style.removeProperty('padding-top');
ziel.style.removeProperty('padding-bottom');
ziel.style.removeProperty('margin-top');
ziel.style.removeProperty('margin-bottom');
ziel.style.removeProperty('overflow');
ziel.style.removeProperty('transition-duration');
ziel.style.removeProperty('transition-property');
}, dauer);
}
/* Nach unten */
let slideDown = (ziel, dauer=500) => {
setTimeout(function(){
ziel.style.removeProperty('display');
let display = window.getComputedStyle(ziel).display;
if (display === 'none') display = 'block';
ziel.style.display = display;
let height = ziel.offsetHeight;
ziel.style.overflow = 'hidden';
ziel.style.height = 0;
ziel.style.paddingTop = 0;
ziel.style.paddingBottom = 0;
ziel.style.marginTop = 0;
ziel.style.marginBottom = 0;
ziel.offsetHeight;
ziel.style.boxSizing = 'border-box';
ziel.style.transitionProperty = "height, margin, padding";
ziel.style.transitionDuration = dauer + 'ms';
ziel.style.height = height + 'px';
ziel.style.removeProperty('padding-top');
ziel.style.removeProperty('padding-bottom');
ziel.style.removeProperty('margin-top');
ziel.style.removeProperty('margin-bottom');
window.setTimeout( () => {
ziel.style.removeProperty('height');
ziel.style.removeProperty('overflow');
ziel.style.removeProperty('transition-duration');
ziel.style.removeProperty('transition-property');
}, dauer);
}, 100)
}
/* Umschalten */
var slideToggle = (ziel, dauer = 500) => {
if (window.getComputedStyle(ziel).display === 'none') {
return slideDown(ziel, dauer);
} else {
return slideUp(ziel, dauer);
}
}
/* Fade */
var toggleFadeiSense = (elem, anzeigen) => {
if (anzeigen) {
elem.style.display = "block";
setTimeout(function(){
elem.classList.add('show-isense');
elem.classList.remove('hide-isense');
},20)
} else {
elem.classList.remove('show-isense');
elem.classList.add('hide-isense');
setTimeout(() => {
elem.style.display = 'none';
}, 400)
}
}
var gdprSlideUpAlle = function() {
slideUp(document.querySelector('#form-gdpr-aktualisierung-konto-anfrage'), 100);
document.querySelector('#btn-gdpr-aktualisierung-konto-anfrage').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-gdpr-anfragen-anfrage'), 100);
document.querySelector('#btn-gdpr-anfragen-anfrage').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-gdpr-persönliche-informationsanfrage'), 100);
document.querySelector('#btn-gdpr-persönliche-informationsanfrage').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-gdpr-bestellungen-anfrage'), 100);
document.querySelector('#btn-gdpr-bestellungen-anfrage').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-gdpr-personal-data-report-anfrage'), 100);
document.querySelector('#btn-gdpr-personal-data-report-anfrage').setAttribute("aria-expanded", "false");
slideUp(document.querySelector('#form-gdpr-konto-löschen-anfrage'), 100);
document.querySelector('#btn-gdpr-konto-löschen-anfrage').setAttribute("aria-expanded", "false");
document.querySelector('#gdpr_seite button').setAttribute("aria-expanded", "false");
};
var email, typ, zustimmungErteilt = false;
var verificationModalInhalt = '
Ich erteile meine Zustimmung zur Erfassung meiner E-Mail und IP-Adresse zum Zweck der Bearbeitung dieser Anfrage. Für mehr Informationen siehe Datenschutzrichtlinie & Nutzungsbedingungen.
var istEmailGültig = 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;
} else {
return regex.test(email);
}
}
var gdprSendeAnfrage = 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();
formData.append('Shop', Shopify.shop);
formData.append('E-Mail', email);
formData.append('Typ', typ);
formData.append('QuelleDerAnfrage', 1);
formData.append('IP-Adresse', ipInfo);
formData.append('ZustimmungErteilt', zustimmungErteilt);
formData.append('Seite', 'gdpr');
formData.append('Sprache', Shopify.locale ? Shopify.locale : '');
formData.append('gtranslateSprache', 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) {
gdprSlideUpAlle();
if (resp.message.length) {
alert(resp.message);
} else {
alert('Ihre Anfrage wurde erfolgreich eingereicht. Bitte prüfen Sie Ihre E-Mail für weitere Informationen.');
}
} else {
alert(resp.message);
}
if (typeof callback == 'function') {
callback(resp);
}
})
.catch(error => {
alert(error.message);
})
}
else {
alert(resp.message);
}
})
}
//Modal an den Körper anhängen, da es sonst nicht zentriert bleibt (auch wenn position: fixed)
document.querySelector("body").insertAdjacentHTML( 'beforeend', verificationModalInhalt);
document.addEventListener("DOMContentLoaded", function() {
// Wenn der Nutzer (x), schließt das 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();
// Erkennen eines Klicks auf einen Link, weil dieser überschrieben ist.
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';
zustimmungErteilt = true;
gdprSendeAnfrage(function(resp) {
zustimmungErteilt = false;
closeVerificationModal();
});
}, 400);
});
});
function openVerificationModal(){
if(!istEmailGültig(email)) {
alert('Ungültige E-Mail');
return;
}
toggleFadeiSense(document.querySelector("#data-verification-modal"), true);
toggleFadeiSense(document.querySelector('#data-verification-background'), true);
document.querySelector('#data-verification-container input').focus();
}
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';
// Fokus auf die Schaltfläche mit dem Anfragetype, die ausgewählt wurde
let gdprFormulare = document.querySelectorAll('.form-gdpr-anfrage');
gdprFormulare.forEach(function(gdprForm) {
if (gdprForm.style.display !== "none") {
gdprFormLinks = gdprForm.previousElementSibling.querySelectorAll('li');
if (gdprFormLinks.length === 1) {
gdprFormLinks[0].querySelector('button').focus();
} else {
// Fokus-Logik für Datenübertragbarkeits-Anfragen
gdprFormLinks = gdprForm.parentElement;
if (gdprFormLinks.nodeName === 'LI') {
gdprFormLinks.querySelector('button').focus();
}
}
}
});
}
document.querySelector('#btn-gdpr-aktualisierung-konto-anfrage').addEventListener('click', function(e) {
e.preventDefault();
let istAusgeklappt = this.getAttribute('aria-expanded') === 'true' ? true : false;
gdprSlideUpAlle();
if(!istAusgeklappt) {
slideDown(document.querySelector('#form-gdpr-aktualisierung-konto-anfrage'), 200);
this.setAttribute("aria-expanded", "true");
} else {
slideUp(document.querySelector('#form-gdpr-aktualisierung-konto-anfrage'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-gdpr-aktualisierung-konto-anfrage-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-gdpr-aktualisierung-konto-anfrage-email').value;
typ = 'kunde/bearbeiten';
gdprSendeAnfrage(function(resp) {
zustimmungErteilt = true;
});
});
document.querySelector('#btn-gdpr-anfragen-anfrage').addEventListener('click', function(e) {
e.preventDefault();
let istAusgeklappt = this.getAttribute('aria-expanded') === 'true' ? true : false;
gdprSlideUpAlle();
if(!istAusgeklappt) {
slideDown(document.querySelector('#form-gdpr-anfragen-anfrage'), 200);
this.setAttribute("aria-expanded", "true");
} else {
slideUp(document.querySelector('#form-gdpr-anfragen-anfrage'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-gdpr-anfragen-anfrage-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-gdpr-anfragen-anfrage-email').value;
typ = 'kunde/anfragen';
gdprSendeAnfrage(function(resp) {
zustimmungErteilt = true;
});
});
document.querySelector('#btn-gdpr-persönliche-informations-anfrage').addEventListener('click', function(e) {
e.preventDefault();
let istAusgeklappt = this.getAttribute('aria-expanded') === 'true' ? true : false;
gdprSlideUpAlle();
if(!istAusgeklappt) {
slideDown(document.querySelector('#form-gdpr-persönliche-informations-anfrage'), 200);
this.setAttribute("aria-expanded", "true");
} else {
slideUp(document.querySelector('#form-gdpr-persönliche-informations-anfrage'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-gdpr-persönliche-informations-anfrage-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-gdpr-persönliche-informations-anfrage-email').value;
typ = 'kunde/persönliche_info';
gdprSendeAnfrage(function(resp) {
zustimmungErteilt = true;
});
});
document.querySelector('#btn-gdpr-bestellungen-anfrage').addEventListener('click', function(e) {
e.preventDefault();
let istAusgeklappt = this.getAttribute('aria-expanded') === 'true' ? true : false;
gdprSlideUpAlle();
if(!istAusgeklappt) {
slideDown(document.querySelector('#form-gdpr-bestellungen-anfrage'), 200);
this.setAttribute("aria-expanded", "true");
} else {
slideUp(document.querySelector('#form-gdpr-bestellungen-anfrage'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-gdpr-bestellungen-anfrage-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-gdpr-bestellungen-anfrage-email').value;
typ = 'kunde/bestellungen';
gdprSendeAnfrage(function(resp) {
zustimmungErteilt = true;
});
});
document.querySelector('#btn-gdpr-personal-data-report-anfrage').addEventListener('click', function(e) {
e.preventDefault();
let istAusgeklappt = this.getAttribute('aria-expanded') === 'true' ? true : false;
gdprSlideUpAlle();
if(!istAusgeklappt) {
slideDown(document.querySelector('#form-gdpr-personal-data-report-anfrage'), 200);
this.setAttribute("aria-expanded", "true");
} else {
slideUp(document.querySelector('#form-gdpr-personal-data-report-anfrage'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-gdpr-personal-data-report-anfrage-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-gdpr-personal-data-report-anfrage-email').value;
typ = 'kunde/bericht';
gdprSendeAnfrage(function(resp) {
zustimmungErteilt = true;
});
});
document.querySelector('#btn-gdpr-konto-löschen-anfrage').addEventListener('click', function(e) {
e.preventDefault();
let istAusgeklappt = this.getAttribute('aria-expanded') === 'true' ? true : false;
gdprSlideUpAlle();
if(!istAusgeklappt) {
slideDown(document.querySelector('#form-gdpr-konto-löschen-anfrage'), 200);
this.setAttribute("aria-expanded", "true");
} else {
slideUp(document.querySelector('#form-gdpr-konto-löschen-anfrage'), 200);
this.setAttribute("aria-expanded", "false");
}
});
document.querySelector('#form-gdpr-konto-löschen-anfrage-submit').addEventListener('click', function(e) {
e.preventDefault();
email = document.querySelector('#form-gdpr-konto-löschen-anfrage-email').value;
typ = 'kunde/löschen';
gdprSendeAnfrage(function(resp) {
zustimmungErteilt = true;
});
});
// Tastaturnavigation im Datenüberprüfungs-Modal für Barrierefreiheit
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 = e.keyCode === 13 || e.key === "Enter" || e.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');
// Diese Funktion erspart uns die Mühe, e.preventDefault() nach jedem Fokussieren aufzurufen
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);
}
} else {
if (dataVerificationLink && document.activeElement === dataVerificationLink) {
executeFocus(dataVerificationCloseButton);
}
}
}
});
```

