Vi respekterer dit privatliv. Afhængigt af hvor du befinder dig, kan du have særlige rettigheder vedrørende dine personoplysninger i henhold til gældende lokal lovgivning om databeskyttelse. Brug mulighederne nedenfor til at indsende en anmodning. Vi gennemgår og besvarer den i overensstemmelse med den lovgivning, der gælder i dit område.
Sådan behandler vi din anmodning Når du indsender en anmodning via denne side, behandler vores complianceudbyder (Consentmo) kun din e-mailadresse og tekniske oplysninger (såsom IP-adresse) for at bekræfte og imødekomme din anmodning, forhindre misbrug og føre dokumentation for overholdelse af reglerne. Du kan få flere oplysninger i Consentmos politik for databehandling.
Sikkerhedsbemærkning: For at beskytte dit privatliv kan vi være nødt til at bekræfte din identitet, før vi kan imødekomme visse anmodninger.
Få adgang til eller download mine data
Du kan anmode om en kopi af de personoplysninger, vi har om dig, herunder kontooplysninger og ordrehistorik. Når det er muligt, leverer vi disse data i et almindeligt anvendt elektronisk format.
Svartid: Vi svarer inden for de tidsfrister, der er fastsat i den lovgivning, som gælder i dit område.
Ret mine oplysninger
Hvis du mener, at de personoplysninger, vi har om dig, er ukorrekte eller ufuldstændige, kan du anmode om en rettelse.
Slet mine data
Du kan anmode om at få slettet de personoplysninger, der er knyttet til vores butik.
⚠ Vigtigt: Vi kan opbevare visse oplysninger, når det er påkrævet ved lov eller af legitime grunde (f.eks. skatteoplysninger, sikkerhed, forebyggelse af svindel eller transaktionsoplysninger).
Dit privatlivsvalg
Administrer dine privatlivsvalg Afhængigt af hvor du befinder dig, kan du have ret til at fravælge salg af dine personoplysninger, trække dit samtykke til sporing tilbage eller tilpasse dine cookieindstillinger.
Andre anmodninger & spørgsmål
Hvis du ønsker at indsende en anden type anmodning (f.eks. en indsigelse mod behandling eller specifikke spørgsmål om samtykke), bedes du kontakte os, så vi kan hjælpe dig.
E-mail: admin@simgasm.com
Kontaktoplysninger
Hvis du har spørgsmål om dine rettigheder vedrørende privatliv eller denne side, bedes du kontakte:
E-mail: admin@simgasm.com
Adresse:
Klager
Hvis du mener, at vi ikke har behandlet dine bekymringer tilstrækkeligt, kan du have ret til at indgive en klage til din lokale databeskyttelsesmyndighed.
Jeg giver samtykke til, at min e-mailadresse og IP-adresse indsamles med henblik på at behandle denne anmodning. Du kan få flere oplysninger i vores privatlivspolitik.
'; 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; } else { return regex.test(email); } } var rowSendRequest = 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('email', email); formData.append('type', type); formData.append('sourceOfRequest', 12); formData.append('ipAddress', ipInfo); formData.append('consentGiven', consentGiven); formData.append('page', 'row'); formData.append('lang', Shopify.locale ? Shopify.locale : ''); formData.append('gtranslateLang', (typeof isenseGDPR !== 'undefined' && isenseGDPR.Cookies) ? isenseGDPR.Cookies.get('googtrans') : ''); fetch('https://app.consentmo.com/gdprRequests/submitRequest', { method: 'POST', body: formData }) .then(resp => resp.json()) .then(resp => { if (!resp.error) { showInlineSuccessMessage(); } else { showInlineErrorMessage(resp.message); } if (typeof callback == 'function') { callback(resp); } }) .catch(error => { showInlineErrorMessage(error.message || 'Noget gik galt. Prøv igen.'); }) } else { showInlineErrorMessage(resp.message || 'Noget gik galt. Prøv igen.'); } }) } function showInlineSuccessMessage() { if (!activeSubmitButton) { return; } var form = activeSubmitButton.closest('form'); if (!form) { return; } var errNode = form.querySelector('.gdpr-request-error'); if (errNode) { errNode.remove(); } var successNode = form.querySelector('.gdpr-request-success'); if (!successNode) { successNode = document.createElement('p'); successNode.className = 'gdpr-request-success'; form.appendChild(successNode); } successNode.textContent = successMessage; } function showInlineErrorMessage(message) { if (!activeSubmitButton) { return; } var form = activeSubmitButton.closest('form'); if (!form) { return; } var successNode = form.querySelector('.gdpr-request-success'); if (successNode) { successNode.remove(); } var errorNode = form.querySelector('.gdpr-request-error'); if (!errorNode) { errorNode = document.createElement('p'); errorNode.className = 'gdpr-request-error'; form.appendChild(errorNode); } errorNode.textContent = message; } // Opsætning af modalens DOM – inde i DOMContentLoaded for de elementer, der tilføjes til
document.addEventListener("DOMContentLoaded", function() { document.querySelector("body").insertAdjacentHTML( 'beforeend', verificationModalContent); 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(); 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; rowSendRequest(function(resp) { consentGiven = false; closeVerificationModal(); }); }, 400); }); }); function openVerificationModal(){ if(!isEmailValid(email)) { showInlineErrorMessage('Ugyldig e-mailadresse'); 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'; let rowForms = document.querySelectorAll('.form-row-request'); rowForms.forEach(function(rowForm) { if (rowForm.style.display !== "none") { let rowFormLinks = rowForm.previousElementSibling.querySelectorAll('li'); if (rowFormLinks.length === 1) { rowFormLinks[0].querySelector('button').focus(); } else { rowFormLinks = rowForm.parentElement; if (rowFormLinks.nodeName === 'LI') { rowFormLinks.querySelector('button').focus(); } } } }); } // Håndtering af knapklik – tilføjes med det samme (IKKE inde i DOMContentLoaded) // så de fungerer, uanset hvornår scriptet kører i forhold til indlæsningen af siden. console.log('[ROW] Scriptet kører. document.readyState =', document.readyState); console.log('[ROW] #btn-row-access-data-request-element:', document.querySelector('#btn-row-access-data-request')); console.log('[ROW] #form-row-access-data-request-element:', document.querySelector('#form-row-access-data-request')); // Få adgang til eller download mine data var btnAccessData = document.querySelector('#btn-row-access-data-request'); if (btnAccessData) { console.log('[ROW] Tilføjer kliklytter til #btn-row-access-data-request'); btnAccessData.addEventListener('click', function(e) { console.log('[ROW] Der blev klikket på "Anmod om datarapport"!'); e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; console.log('[ROW] aria-expanded var:', isExpanded); rowSlideUpAll(); var formEl = document.querySelector('#form-row-access-data-request'); console.log('[ROW] formularelement:', formEl, 'visning:', formEl ? window.getComputedStyle(formEl).display : 'Ikke relevant'); if(!isExpanded) { console.log('[ROW] Viser formularen nedad'); slideDown(formEl, 200); this.setAttribute("aria-expanded", "true"); } else { console.log('[ROW] Skjuler formularen opad'); slideUp(formEl, 200); this.setAttribute("aria-expanded", "false"); } }); } else { console.error('[ROW] MISLYKKEDES: #btn-row-access-data-request blev ikke fundet i DOM!'); } document.querySelector('#form-row-access-data-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-row-access-data-request-email').value; type = 'customer/report'; openVerificationModal(); }); // Ret mine oplysninger document.querySelector('#btn-row-correct-info-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; rowSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-row-correct-info-request'), 200); this.setAttribute("aria-expanded", "true"); } else { slideUp(document.querySelector('#form-row-correct-info-request'), 200); this.setAttribute("aria-expanded", "false"); } }); document.querySelector('#form-row-correct-info-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-row-correct-info-request-email').value; type = 'customer/edit'; openVerificationModal(); }); // Slet mine data document.querySelector('#btn-row-delete-data-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; rowSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-row-delete-data-request'), 200); this.setAttribute("aria-expanded", "true"); } else { slideUp(document.querySelector('#form-row-delete-data-request'), 200); this.setAttribute("aria-expanded", "false"); } }); document.querySelector('#form-row-delete-data-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-row-delete-data-request-email').value; type = 'customer/delete'; openVerificationModal(); }); // Opdater privatlivsindstillinger document.querySelector('#btn-row-update-privacy-settings').addEventListener('click', function(e) { e.preventDefault(); if (typeof showPreferences === 'function') { showPreferences(this); return; } let settingsButton = document.querySelector('.cc-window .cc-settings'); if (settingsButton) { settingsButton.click(); return; } alert('Cookieindstillingerne er ikke tilgængelige på denne side.'); }); // Tastaturnavigation i modalvinduet til dataverificering for at sikre tilgængelighed document.addEventListener("DOMContentLoaded", function() { 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 = e.keyCode === 32 || e.key === " " || e.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'); 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); } } } }); });