{"id":732,"date":"2026-11-03T09:25:47","date_gmt":"2026-11-03T09:25:47","guid":{"rendered":"https:\/\/yohann.shop\/richieste-relative-alla-privacy-gdpr\/"},"modified":"2026-11-03T09:25:47","modified_gmt":"2026-11-03T09:25:47","slug":"richieste-relative-alla-privacy-gdpr","status":"publish","type":"page","link":"https:\/\/yohann.shop\/it\/richieste-relative-alla-privacy-gdpr\/","title":{"rendered":"Richieste relative alla privacy GDPR"},"content":{"rendered":"<style>\n    #form-gdpr-access-data-request,\n    #form-gdpr-correct-info-request,\n    #form-gdpr-delete-data-request {\n        display: none;\n    }\n    #gdpr_page button {\n      background-color: transparent;\n      border: 0;\n      border-bottom: 1px solid black;\n      padding: 0px;\n    }\n\n    \/* Modal background *\/\n    #data-verification-background {\n      display: none;\n      position: fixed;\n      z-index: 1;\n      padding: 24px 16px;\n      left: 0;\n      top: 0;\n      width: 100%;\n      height: 100%;\n      overflow: auto;\n      background-color: rgb(0,0,0);\n      background-color: rgba(15, 23, 42, 0.5);\n      opacity: unset;\n      z-index: 9999;\n      align-items: center;\n      justify-content: center;\n    }\n    \/* Modal Content *\/\n    #data-verification-modal {\n      background-color: #fefefe;\n      margin: 0;\n      padding: 20px 22px;\n      border: 1px solid #d0d7de;\n      border-radius: 14px;\n      box-shadow: 0 24px 60px rgba(15, 23, 42, 0.22);\n      width: min(100%, 620px);\n      max-height: calc(100vh - 48px);\n      overflow-y: auto;\n      opacity: 1;\n    }\n    \/* Modal Close Button *\/\n   .data-verification-close {\n      color: #4b5563;\n      float: right;\n      font-size: 24px;\n      font-weight: 500;\n      line-height: 22px;\n      background-color: transparent;\n      border: 0;\n      width: 30px;\n      height: 30px;\n      border-radius: 8px;\n      padding: 0;\n      transition: background-color 0.2s ease, color 0.2s ease;\n    }\n   .data-verification-close:hover {\n      color: #111827;\n      background-color: #f3f4f6;\n      text-decoration: none;\n      cursor: pointer;\n    }\n    \/* Checkbox Text *\/\n    #data-verification-container {\n      display: flex;\n      align-items: flex-start;\n      gap: 12px;\n      margin-top: 8px;\n    }\n    #data-verification-container p {\n      display: block;\n      padding: 0;\n      margin: 0;\n      line-height: 1.5;\n      font-size: 15px;\n      color: #1f2937;\n      width: auto;\n    }\n    #data-verification-container a, #data-verification-container a:hover{\n      text-decoration: underline !important;\n      color: #2563eb;\n      font-weight: 600;\n    }\n    #data-verification-container input {\n      opacity: 0;\n      width: 0;\n      height: 0;\n      margin: 0;\n      padding: 0;\n    }\n    \/* Checkbox Icon *\/\n    #data-verification-icon {\n      cursor: pointer;\n      position: relative;\n      margin: 2px 0 0;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      width: 24px;\n      height: 24px;\n      -webkit-tap-highlight-color: transparent;\n      transform: translate3d(0, 0, 0);\n      flex: 0 0 24px;\n    }\n    #data-verification-icon:before {\n      content: \"\";\n      position: absolute;\n      top: -7px;\n      left: -7px;\n      width: 32px;\n      height: 32px;\n      border-radius: 50%;\n      background: rgba(34,50,84,0.03);\n      opacity: 0;\n      transition: opacity 0.2s ease;\n    }\n    #data-verification-icon svg {\n      position: relative;\n      z-index: 1;\n      fill: none;\n      stroke-linecap: round;\n      stroke-linejoin: round;\n      stroke: #94a3b8;\n      stroke-width: 1.5;\n      transform: translate3d(0, 0, 0);\n      transition: all 0.2s ease;\n    }\n    #data-verification-icon svg path {\n      stroke-dasharray: 60;\n      stroke-dashoffset: 0;\n    }\n    #data-verification-icon svg polyline {\n      stroke-dasharray: 22;\n      stroke-dashoffset: 66;\n    }\n    #data-verification-icon:hover:before {\n      opacity: 1;\n    }\n    #data-verification-container:hover #data-verification-icon svg {\n      stroke: #2563eb;\n    }\n    #data-verification-icon.clicked svg {\n      stroke: #2563eb;\n    }\n    #data-verification-icon.clicked svg path {\n      stroke-dashoffset: 60;\n      transition: all 0.3s linear;\n    }\n    #data-verification-icon.clicked svg polyline {\n      stroke-dashoffset: 42;\n      transition: all 0.2s linear;\n      transition-delay: 0.15s;\n    }\n\n    \/* Accessibility design *\/\n    #data-verification-icon:focus,.data-verification-close:focus, #data-verification-container input:focus ~ #data-verification-icon svg, #data-verification-container a:focus {\n      box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.28);\n      transition: all 0.3s ease;\n      outline: none;\n      transform: scale(1.06);\n    }\n\n    \/* Loading Element *\/\n   .loading {\n        display: none;\n        top:50vh;\n        left:50vw;\n        position:fixed;\n    }\n   .loading:not(:required):after {\n      content: '';\n      display: block;\n      font-size: 10px;\n      width: 1em;\n      height: 1em;\n      margin-top: -0.5em;\n      -webkit-animation: spinner 1500ms infinite linear;\n      -moz-animation: spinner 1500ms infinite linear;\n      -ms-animation: spinner 1500ms infinite linear;\n      -o-animation: spinner 1500ms infinite linear;\n      animation: spinner 1500ms infinite linear;\n      border-radius: 0.5em;\n      -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;\n      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;\n    }\n    #gdpr_page.list-unstyled li button {\n      cursor: pointer;\n    }\n    #gdpr_page.form-gdpr-request form label {\n      display: block;\n      margin-bottom: 10px;\n      font-weight: 600;\n    }\n    #gdpr_page.form-gdpr-request form input[type=\"email\"] {\n      display: inline-block;\n      width: 100%;\n      max-width: 420px;\n      padding: 12px 14px;\n      margin: 0 10px 12px 0;\n      border: 1px solid #d0d7de;\n      border-radius: 10px;\n      font-size: 16px;\n      line-height: 1.4;\n      box-sizing: border-box;\n      vertical-align: middle;\n      transition: border-color 0.2s ease, box-shadow 0.2s ease;\n      background-color: #fff;\n      color: #1f2328;\n    }\n    #gdpr_page.form-gdpr-request form input[type=\"email\"]:focus {\n      border-color: #4c8bf5;\n      box-shadow: 0 0 0 3px rgba(76, 139, 245, 0.2);\n      outline: none;\n    }\n    #gdpr_page.form-gdpr-request form input[type=\"submit\"] {\n      display: inline-block;\n      min-height: 42px;\n      padding: 10px 18px;\n      margin-bottom: 12px;\n      border: 0;\n      border-radius: 10px;\n      background-color: #111827;\n      color: #fff;\n      font-size: 15px;\n      font-weight: 600;\n      line-height: 1;\n      cursor: pointer;\n      vertical-align: middle;\n      transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;\n    }\n    #gdpr_page.form-gdpr-request form input[type=\"submit\"]:hover {\n      background-color: #1f2937;\n      transform: translateY(-1px);\n    }\n    #gdpr_page.form-gdpr-request form input[type=\"submit\"]:focus {\n      box-shadow: 0 0 0 3px rgba(76, 139, 245, 0.25);\n      outline: none;\n    }\n    #gdpr_page.form-gdpr-request form input[type=\"button\"].btn,\n    #gdpr_page.form-gdpr-request form button.btn {\n      display: inline-block;\n      margin-top: 8px;\n      margin-bottom: 12px;\n      padding: 10px 18px;\n      font-size: 14px;\n      font-weight: 600;\n      color: #fff;\n      background-color: #111827;\n      border: none;\n      border-radius: 8px;\n      cursor: pointer;\n      line-height: 1;\n      vertical-align: middle;\n      transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;\n    }\n    #gdpr_page.form-gdpr-request form input[type=\"button\"].btn:hover,\n    #gdpr_page.form-gdpr-request form button.btn:hover {\n      background-color: #1f2937;\n      transform: translateY(-1px);\n    }\n    #gdpr_page.form-gdpr-request form input[type=\"button\"].btn:focus,\n    #gdpr_page.form-gdpr-request form button.btn:focus {\n      box-shadow: 0 0 0 3px rgba(76, 139, 245, 0.25);\n      outline: none;\n    }\n    #gdpr_page.form-gdpr-request form input[type=\"button\"].btn:disabled,\n    #gdpr_page.form-gdpr-request form button.btn:disabled {\n      opacity: 0.65;\n      cursor: not-allowed;\n      transform: none;\n    }\n    #gdpr_page.form-gdpr-request form.gdpr-request-success {\n      display: block;\n      margin: 0 0 12px;\n      color: #15803d;\n      font-size: 14px;\n      line-height: 1.4;\n      font-weight: 600;\n    }\n    #gdpr_page.form-gdpr-request form.gdpr-request-error {\n      display: block;\n      margin: 0 0 12px;\n      color: #b91c1c;\n      font-size: 14px;\n      line-height: 1.4;\n      font-weight: 600;\n    }\n   .show-isense {\n      transition: opacity 400ms !important;\n    }\n   .hide-isense {\n      opacity: 0 !important;\n      transition: 0.4s ease-out;\n    }\n\n    \/* Modal changes on mobile resolution*\/\n    @media only screen and (max-width: 600px) {\n      #data-verification-modal {\n        width: 100%;\n        padding: 16px;\n      }\n    }\n\n    \/* Animation *\/\n    @-webkit-keyframes spinner {\n      0% {\n        -webkit-transform: rotate(0deg);\n        -moz-transform: rotate(0deg);\n        -ms-transform: rotate(0deg);\n        -o-transform: rotate(0deg);\n        transform: rotate(0deg);\n      }\n      100% {\n        -webkit-transform: rotate(360deg);\n        -moz-transform: rotate(360deg);\n        -ms-transform: rotate(360deg);\n        -o-transform: rotate(360deg);\n        transform: rotate(360deg);\n      }\n    }\n    @-moz-keyframes spinner {\n      0% {\n        -webkit-transform: rotate(0deg);\n        -moz-transform: rotate(0deg);\n        -ms-transform: rotate(0deg);\n        -o-transform: rotate(0deg);\n        transform: rotate(0deg);\n      }\n      100% {\n        -webkit-transform: rotate(360deg);\n        -moz-transform: rotate(360deg);\n        -ms-transform: rotate(360deg);\n        -o-transform: rotate(360deg);\n        transform: rotate(360deg);\n      }\n    }\n    @-o-keyframes spinner {\n      0% {\n        -webkit-transform: rotate(0deg);\n        -moz-transform: rotate(0deg);\n        -ms-transform: rotate(0deg);\n        -o-transform: rotate(0deg);\n        transform: rotate(0deg);\n      }\n      100% {\n        -webkit-transform: rotate(360deg);\n        -moz-transform: rotate(360deg);\n        -ms-transform: rotate(360deg);\n        -o-transform: rotate(360deg);\n        transform: rotate(360deg);\n      }\n    }\n    @keyframes spinner {\n      0% {\n        -webkit-transform: rotate(0deg);\n        -moz-transform: rotate(0deg);\n        -ms-transform: rotate(0deg);\n        -o-transform: rotate(0deg);\n        transform: rotate(0deg);\n      }\n      100% {\n        -webkit-transform: rotate(360deg);\n        -moz-transform: rotate(360deg);\n        -ms-transform: rotate(360deg);\n        -o-transform: rotate(360deg);\n        transform: rotate(360deg);\n      }\n    }\n<\/style><div id=\"gdpr_page\" class=\"col-sm-12\"><div><p><strong>Rispettiamo la tua privacy.<\/strong> Se ti trovi nello Spazio economico europeo (SEE), hai determinati diritti ai sensi del Regolamento generale sulla protezione dei dati (GDPR). Utilizza le opzioni seguenti per esercitare i tuoi diritti in relazione ai dati personali che conserviamo su di te.<\/p><\/div><p><strong>Come elaboriamo la tua richiesta<\/strong> Quando invii una richiesta tramite questa pagina, il nostro fornitore di servizi di conformit\u00e0 <strong>(Consentmo)<\/strong> elabora il tuo indirizzo email e le informazioni tecniche (come l&#8217;indirizzo IP) esclusivamente per verificare ed evadere la tua richiesta, prevenire abusi e tenere traccia della conformit\u00e0. Per maggiori dettagli, consulta <a href=\"https:\/\/www.consentmo.com\/end-user-dpa\" target=\"_blank\" aria-label=\"Consentmo's Data Processing Policy (opens in a new tab)\">l&#8217;Informativa sul trattamento dei dati di Consentmo<\/a>.<\/p><br><h2> Accedi o scarica i miei dati<\/h2><p> \u00c8 possibile richiedere una copia dei dati personali che conserviamo su di voi, inclusi i dettagli dell&#8217;account e la cronologia degli ordini. \u00c8 possibile richiedere i propri dati in un formato portatile (CSV o PDF). <\/p><ul id=\"gdpr_access_data_compliance_requests\" class=\"gdpr-compliance-requests list-unstyled\"><li> <button id=\"btn-gdpr-access-data-request\" aria-label=\"Request my data\" aria-controls=\"form-gdpr-access-data-request\" aria-expanded=\"false\">Richiedi i miei dati<\/button><\/li><\/ul><div id=\"form-gdpr-access-data-request\" class=\"form-gdpr-request\"><form> <label for=\"form-gdpr-access-data-request-email\">Inserisci il tuo indirizzo email per confermare la tua identit\u00e0<\/label> <input type=\"email\" name=\"email\" id=\"form-gdpr-access-data-request-email\" placeholder=\"example@email.com\" autocomplete=\"email\" autocorrect=\"off\" autocapitalize=\"off\" autofocus=\"\"><input type=\"submit\" id=\"form-gdpr-access-data-request-submit\" class=\"btn\" value=\"Invia\"><\/form><\/div><p> <em>Tempi di risposta: Rispondiamo entro un mese. Se la tua richiesta \u00e8 complessa, potremmo estendere questo periodo, come consentito dalla legge, e te lo comunicheremo.<\/em><\/p><br><h2> Correggi le mie informazioni<\/h2><p> Se ritieni che i tuoi dati personali siano inesatti o incompleti (ad esempio, un indirizzo di spedizione errato o un nome scritto in modo errato), puoi aggiornarli qui. <\/p><ul id=\"gdpr_correct_info_compliance_requests\" class=\"gdpr-compliance-requests list-unstyled\"><li> <button id=\"btn-gdpr-correct-info-request\" aria-label=\"Correct my information\" aria-controls=\"form-gdpr-correct-info-request\" aria-expanded=\"false\">Correggi le mie informazioni<\/button><\/li><\/ul><div id=\"form-gdpr-correct-info-request\" class=\"form-gdpr-request\"><form> <label for=\"form-gdpr-correct-info-request-email\">Inserisci il tuo indirizzo email per confermare la tua identit\u00e0<\/label> <input type=\"email\" name=\"email\" id=\"form-gdpr-correct-info-request-email\" placeholder=\"example@email.com\" autocomplete=\"email\" autocorrect=\"off\" autocapitalize=\"off\" autofocus=\"\"><input type=\"submit\" id=\"form-gdpr-correct-info-request-submit\" class=\"btn\" value=\"Invia\"><\/form><\/div><br><h2> Elimina i miei dati<\/h2><p> \u00c8 possibile richiedere la cancellazione dei propri dati personali associati a questo negozio (noto anche come &quot;Diritto all&#8217;oblio&quot;). <\/p><ul id=\"gdpr_delete_data_compliance_requests\" class=\"gdpr-compliance-requests list-unstyled\"><li> <button id=\"btn-gdpr-delete-data-request\" aria-label=\"Request deletion\" aria-controls=\"form-gdpr-delete-data-request\" aria-expanded=\"false\">Richiesta di cancellazione<\/button><\/li><\/ul><div id=\"form-gdpr-delete-data-request\" class=\"form-gdpr-request\"><form><label for=\"form-gdpr-delete-data-request-email\">Inserisci il tuo indirizzo email per confermare la tua identit\u00e0<\/label> <input type=\"email\" name=\"email\" id=\"form-gdpr-delete-data-request-email\" placeholder=\"example@email.com\" autocomplete=\"email\" autocorrect=\"off\" autocapitalize=\"off\" autofocus=\"\"><input type=\"submit\" class=\"btn\" id=\"form-gdpr-delete-data-request-submit\" value=\"Invia\"><\/form><\/div><p> <em>Importante: alcune informazioni potrebbero essere conservate laddove richiesto dalla legge o per scopi legittimi (ad esempio, fiscali, di prevenzione delle frodi e di sicurezza).<\/em><\/p><br><h2> Gestisci le preferenze sulla privacy<\/h2><p> Puoi personalizzare la tua esperienza scegliendo esattamente quali tipi di cookie e tecnologie ci consenti di utilizzare (ad esempio, abilitando i cookie analitici ma disabilitando quelli di marketing). Puoi aggiornare queste impostazioni specifiche in qualsiasi momento. <\/p><ul id=\"gdpr_manage_privacy_preferences_compliance_requests\" class=\"gdpr-compliance-requests list-unstyled\"><li> <button id=\"btn-gdpr-manage-privacy-preferences\" aria-label=\"Update Cookie Settings\">Aggiorna le impostazioni dei cookie<\/button><\/li><\/ul><br><h2> Ritirare il consenso<\/h2><p> Hai il diritto di revocare in qualsiasi momento il tuo consenso al marketing tramite Shopify per le tecnologie di tracciamento. Questa revoca avr\u00e0 effetto sul tuo utilizzo futuro del nostro negozio e interromper\u00e0 la raccolta dei dati per scopi facoltativi. <\/p><div id=\"form-gdpr-withdraw-consent-request\" class=\"form-gdpr-request\"><form action=\"#\" onsubmit=\"return false;\"><div id=\"gdpr-withdraw-email-wrap\" class=\"gdpr-instant-email-wrap\" style=\"display: none; margin-bottom: 12px;\"> <label for=\"gdpr-withdraw-email\">Inserisci il tuo indirizzo email per identificare la tua richiesta<\/label> <input type=\"email\" id=\"gdpr-withdraw-email\" placeholder=\"example@email.com\" autocomplete=\"email\" style=\"display: block; width: 100%; max-width: 400px; margin-top: 6px;\"><p id=\"gdpr-withdraw-email-error\" class=\"gdpr-request-error\" role=\"alert\" style=\"display: none;\"><\/p><\/div><input type=\"button\" class=\"btn\" id=\"form-gdpr-withdraw-consent-request-submit\" value=\"Withdraw consent\" aria-label=\"Withdraw consent and disable optional tracking\"><p id=\"gdpr-withdraw-success\" class=\"gdpr-request-success\" role=\"status\" aria-live=\"polite\" style=\"display: none;\"><\/p><p id=\"gdpr-withdraw-error\" class=\"gdpr-request-error\" role=\"alert\" aria-live=\"polite\" style=\"display: none;\"><\/p><\/form><\/div><br><h2> Limitare o opporsi al trattamento dei dati<\/h2><p> \u00c8 possibile richiedere la limitazione del trattamento dei propri dati personali o opporsi a determinate attivit\u00e0 di trattamento (come il marketing diretto o il trattamento basato su interessi legittimi).<\/p><p> Per esercitare questi diritti, vi preghiamo di contattarci al seguente indirizzo:<\/p><p> \ud83d\udce7 info@yohann.com<\/p><br><h2> Informazioni sui contatti<\/h2><p> Per domande sui tuoi diritti in materia di privacy o su questa pagina, contatta:<\/p><p> <strong>Email:<\/strong> info@yohann.com<\/p><p> <strong>Indirizzo:<\/strong> Schwarzwaldstra\u00dfe 61, 79539 L\u00f6rrach, Germania<\/p><br><h2> Presentare un reclamo<\/h2><p> Se ritieni che non abbiamo affrontato adeguatamente le tue preoccupazioni, hai il diritto di presentare un reclamo all&#8217;Autorit\u00e0 nazionale per la protezione dei dati (DPA).<\/p><\/div><script>window.__CONSENTMO_CUSTOMER_IDENTIFICATION={\"withdraw_consent\":false,\"do_not_sell\":false,\"limit_use\":false};window.__CONSENTMO_CUSTOMER_IDENTIFICATION_I18N={\"invalidEmail\":\"Please enter a valid email address.\",\"emailLabelIdentify\":\"Enter your email to identify your request\"};<\/script><script src=\"https:\/\/cdn.consentmo.com\/js\/privacy_customer_identification.js?v=1789549329\"><\/script><script>\n\n     \/* SLIDE UP *\/\n     let slideUp = (target, duration=500) => {\n        target.style.transitionProperty = 'height, margin, padding';\n        target.style.transitionDuration = duration + 'ms';\n        target.style.boxSizing = 'border-box';\n        target.style.height = target.offsetHeight + 'px';\n        target.offsetHeight;\n        target.style.overflow = 'hidden';\n        target.style.height = 0;\n        target.style.paddingTop = 0;\n        target.style.paddingBottom = 0;\n        target.style.marginTop = 0;\n        target.style.marginBottom = 0;\n        window.setTimeout( () => {\n            target.style.display = 'none';\n            target.style.removeProperty('height');\n            target.style.removeProperty('padding-top');\n            target.style.removeProperty('padding-bottom');\n            target.style.removeProperty('margin-top');\n            target.style.removeProperty('margin-bottom');\n            target.style.removeProperty('overflow');\n            target.style.removeProperty('transition-duration');\n            target.style.removeProperty('transition-property');\n        }, duration);\n    }\n\n    \/* SLIDE DOWN *\/\n    let slideDown = (target, duration=500) => {\n      setTimeout(function(){\n        target.style.removeProperty('display');\n        let display = window.getComputedStyle(target).display;\n        if (display === 'none') display = 'block';\n\n          target.style.display = display;\n          \n          let height = target.offsetHeight;\n          \n          target.style.overflow = 'hidden';\n          target.style.height = 0;\n          target.style.paddingTop = 0;\n          target.style.paddingBottom = 0;\n          target.style.marginTop = 0;\n          target.style.marginBottom = 0;\n          target.offsetHeight;\n          target.style.boxSizing = 'border-box';\n          target.style.transitionProperty = \"height, margin, padding\";\n          target.style.transitionDuration = duration + 'ms';\n          target.style.height = height + 'px';\n\n          target.style.removeProperty('padding-top');\n          target.style.removeProperty('padding-bottom');\n          target.style.removeProperty('margin-top');\n          target.style.removeProperty('margin-bottom');\n          \n          window.setTimeout( () => {\n              target.style.removeProperty('height');\n              target.style.removeProperty('overflow');\n              target.style.removeProperty('transition-duration');\n              target.style.removeProperty('transition-property');\n          }, duration);\n       }, 100)\n    }\n\n    \/* TOOGLE *\/\n    var slideToggle = (target, duration = 500) => {\n        if (window.getComputedStyle(target).display === 'none') {\n            return slideDown(target, duration);\n        } else {\n            return slideUp(target, duration);\n        }\n    }\n\n    \/* FADE *\/\n    var toggleFadeiSense = (elem, show) => {\n        if (show) {\n            elem.style.display = elem.id === 'data-verification-background' ? 'flex' : 'block';\n            setTimeout(function(){\n                elem.classList.add('show-isense');\n                elem.classList.remove('hide-isense');\n            },20)\n        } else {\n            elem.classList.remove('show-isense');\n            elem.classList.add('hide-isense');\n            setTimeout(() => {\n                elem.style.display = 'none';\n            }, 400)\n        }\n    }\n\n    var gdprSlideUpAll = function() {\n        slideUp(document.querySelector('#form-gdpr-access-data-request'), 100);\n        if(document.querySelector('#btn-gdpr-access-data-request')) document.querySelector('#btn-gdpr-access-data-request').setAttribute(\"aria-expanded\", \"false\");\n        slideUp(document.querySelector('#form-gdpr-correct-info-request'), 100);\n        if(document.querySelector('#btn-gdpr-correct-info-request')) document.querySelector('#btn-gdpr-correct-info-request').setAttribute(\"aria-expanded\", \"false\");\n        slideUp(document.querySelector('#form-gdpr-delete-data-request'), 100);\n        if(document.querySelector('#btn-gdpr-delete-data-request')) document.querySelector('#btn-gdpr-delete-data-request').setAttribute(\"aria-expanded\", \"false\");\n        if(document.querySelector('#gdpr_page button')) document.querySelector('#gdpr_page button').setAttribute(\"aria-expanded\", \"false\");\n    };\n\n    \/** Instant withdraw consent: same as cookie banner Reject (deny + consent record). *\/\n    (function() {\n        var WITHDRAW_SUCCESS_MSG = 'Your consent has been withdrawn. All optional tracking has been disabled for this browser.';\n        var GEO_PRIMARY = 'https:\/\/wekre6r5lsxxzzbnlltsbyfm6i0dcqrs.lambda-url.eu-central-1.on.aws';\n        var GEO_FALLBACK = 'https:\/\/workers.consentmo.com\/action\/geo';\n        var CONSENT_PRIMARY = 'https:\/\/4nbp277fevb5pvm2ditk5w6swe0biflq.lambda-url.eu-central-1.on.aws';\n        var CONSENT_FALLBACK = 'https:\/\/workers.consentmo.com\/action\/consent';\n\n        function getDeviceTypeInline() {\n            var ua = navigator.userAgent || '';\n            if (\/(tablet|ipad|playbook|silk)|(android(?!.*mobi))\/i.test(ua)) return 't';\n            if (\/Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Kindle|Silk-Accelerated|(hpw|web)OS|Opera M(obi|ini)\/.test(ua)) return 'm';\n            return 'd';\n        }\n\n        function int2ip(ipInt) {\n            return ((ipInt >>> 24) + '.' + ((ipInt >> 16) & 255) + '.' + ((ipInt >> 8) & 255) + '.' + (ipInt & 255));\n        }\n\n        function setConsentCookie(name, value, days) {\n            var expires = '';\n            if (days) {\n                var date = new Date();\n                date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);\n                expires = '; expires=' + date.toUTCString();\n            }\n            var secure = location.protocol === 'https:' ? '; Secure' : '';\n            document.cookie = name + '=' + encodeURIComponent(value || '') + expires + '; path=\/; SameSite=Lax' + secure;\n        }\n\n        function expireCookie(name) {\n            document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=\/';\n            var host = location.hostname;\n            if (host) {\n                document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=\/; domain=' + host;\n                var parts = host.split('.');\n                if (parts.length >= 2) {\n                    document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=\/; domain=.' + parts.slice(-2).join('.');\n                }\n            }\n        }\n\n        function clearCategoryFromSettings(settings, cat) {\n            if (!settings) return;\n            var raw = settings[cat + '_cookies'] || '';\n            raw.split('n').map(function(c) { return c.trim(); }).filter(Boolean).forEach(function(n) { expireCookie(n); });\n            if (cat === 'marketing' && settings.youtube_iframe_options && settings.youtube_iframe_options.enabled) {\n                ['VISITOR_INFO1_LIVE', 'YSC', 'SOCS', '__Secure-3PSID', '__Secure-1PSID'].forEach(expireCookie);\n            }\n        }\n\n        function parseGdprSettings() {\n            var out = {\n                cookieName: '',\n                consentDuration: 365,\n                paUsrId: 0,\n                saleRegion: false,\n                manageSale: '',\n                saleCheckbox: '',\n                saleText: '',\n                settings: null\n            };\n            try {\n                var raw = localStorage.getItem('gdprCache');\n                if (!raw) return out;\n                var cache = JSON.parse(raw);\n                out.saleRegion = !!cache.userIsInSaleOfDataRegion;\n                if (cache.getCookieConsentSettings) {\n                    var s = JSON.parse(cache.getCookieConsentSettings);\n                    out.settings = s;\n                    out.cookieName = s.cookie_name != null ? String(s.cookie_name) : '';\n                    out.consentDuration = parseInt(s.consent_duration, 10) || 365;\n                    out.paUsrId = parseInt(s.pa_usr_id, 10) || 0;\n                    out.manageSale = String(s.manage_sale_of_data || '');\n                    out.saleCheckbox = String(s.sale_of_data_checkbox || '');\n                    out.saleText = String(s.sale_of_data_text || '');\n                }\n            } catch (e) {}\n            return out;\n        }\n\n        function userInSalesRegionFromParsed(parsed) {\n            return !!(parsed && parsed.saleRegion && parsed.manageSale === '1' && parsed.saleText && parsed.saleCheckbox);\n        }\n\n        function appendGdprCache(key, val) {\n            try {\n                var g = JSON.parse(localStorage.getItem('gdprCache') || '{}');\n                g[key] = val;\n                localStorage.setItem('gdprCache', JSON.stringify(g));\n            } catch (e) {}\n        }\n\n        function getConsentIdentifier() {\n            var STORAGE_KEY = 'csmConsentIdentifier';\n            try {\n                var stored = localStorage.getItem(STORAGE_KEY);\n                if (stored) {\n                    var data = JSON.parse(stored);\n                    if (data.consentIdentifier && data.expiresAt && new Date(data.expiresAt) > new Date()) {\n                        return data.consentIdentifier;\n                    }\n                    localStorage.removeItem(STORAGE_KEY);\n                }\n            } catch (e) {}\n            var bytes = new Uint8Array(32);\n            if (window.crypto && window.crypto.getRandomValues) {\n                window.crypto.getRandomValues(bytes);\n            } else {\n                for (var i = 0; i < bytes.length; i++) bytes[i] = Math.floor(Math.random() * 256);\n            }\n            var hex = '';\n            for (var j = 0; j < bytes.length; j++) hex += ('0' + bytes[j].toString(16)).slice(-2);\n            try {\n                var exp = new Date();\n                exp.setDate(exp.getDate() + 365);\n                localStorage.setItem(STORAGE_KEY, JSON.stringify({\n                    consentIdentifier: hex,\n                    createdAt: new Date().toISOString(),\n                    expiresAt: exp.toISOString()\n                }));\n            } catch (e2) {}\n            return hex;\n        }\n\n        function normalizeGeo(geo) {\n            var addInfo = geo &#038;&#038; geo.add_info != null ? String(geo.add_info) : '';\n            var longIpRegex = \/^-?d{1,12}$\/;\n            var ip = longIpRegex.test(addInfo) ? int2ip(parseInt(addInfo, 10)) : addInfo;\n            return {\n                ip: ip,\n                country: (geo &#038;&#038; geo.country) || '',\n                region: (geo &#038;&#038; (geo.state || geo.regionCode)) || '',\n                region_name: (geo &#038;&#038; geo.region) || '',\n                city: (geo &#038;&#038; geo.city) || ''\n            };\n        }\n\n        function fetchGeo() {\n            return fetch(GEO_PRIMARY, { method: 'GET', headers: { 'Accept': 'application\/json' } })\n               .then(function(r) { return r.json(); })\n               .catch(function() {\n                    return fetch(GEO_FALLBACK, { method: 'GET', headers: { 'Accept': 'application\/json' } })\n                       .then(function(r2) { return r2.json(); });\n                })\n               .catch(function() {\n                    return fetch('https:\/\/www.cloudflare.com\/cdn-cgi\/trace', { method: 'GET' })\n                       .then(function(r3) { return r3.text(); })\n                       .then(function(text) {\n                            var ip = '';\n                            text.split('n').forEach(function(line) {\n                                var p = line.split('=');\n                                if (p[0] === 'ip') ip = p[1] || '';\n                            });\n                            return { add_info: ip, country: 'US', state: '', region: '', city: '' };\n                        });\n                });\n        }\n\n        function applyShopifyCustomerPrivacy(blockedCategoriesComma) {\n            var isA = blockedCategoriesComma.indexOf('analytics') >= 0;\n            var isM = blockedCategoriesComma.indexOf('marketing') >= 0;\n            var isF = blockedCategoriesComma.indexOf('functionality') >= 0;\n            var isS = blockedCategoriesComma.indexOf('saleofdata') >= 0;\n            var parsed = parseGdprSettings();\n            var payload = { analytics: !isA, marketing: !isM, preferences: !isF };\n            if (userInSalesRegionFromParsed(parsed) || isS) {\n                payload.sale_of_data = !isS;\n            }\n            var doSet = function() {\n                if (typeof Shopify !== 'undefined' && Shopify.customerPrivacy && typeof Shopify.customerPrivacy.setTrackingConsent === 'function') {\n                    Shopify.customerPrivacy.setTrackingConsent(payload, function() {});\n                }\n            };\n            if (typeof Shopify === 'undefined') return;\n            if (Shopify.customerPrivacy && typeof Shopify.customerPrivacy.setTrackingConsent === 'function') {\n                doSet();\n            } else if (typeof Shopify.loadFeatures === 'function') {\n                Shopify.loadFeatures([{ name: 'consent-tracking-api', version: '0.1' }], function(err) {\n                    if (!err) doSet();\n                });\n            }\n        }\n\n        function postConsent(bodyObj) {\n            var body = JSON.stringify(bodyObj);\n            var opts = { method: 'POST', headers: { 'Content-Type': 'text\/plain' }, body: body };\n            return fetch(CONSENT_PRIMARY, opts).then(function(r) {\n                if (r.ok) return r;\n                throw new Error('consent primary failed');\n            }).catch(function() {\n                return fetch(CONSENT_FALLBACK, opts).then(function(r2) {\n                    if (r2.ok) return r2;\n                    throw new Error('consent fallback failed');\n                });\n            });\n        }\n\n        \/** Logs customer\/withdraw_consent to GDPR requests (same consent_identifier as consent record for cross-reference). Fire-and-forget. *\/\n        function logInstantWithdrawGdprRequest(consentIdentifier, ipAddress) {\n            try {\n                if (typeof Shopify === 'undefined' || !Shopify.shop || !consentIdentifier) return;\n                var email = '';\n                if (typeof ConsentmoCustomerIdentification !== 'undefined') {\n                    email = ConsentmoCustomerIdentification.resolveSubmitEmail(\n                        'withdraw_consent',\n                        'gdpr-withdraw-email',\n                        function() { return consentIdentifier; }\n                    );\n                }\n                if (!email) {\n                    try {\n                        if (Shopify.customerEmail) email = String(Shopify.customerEmail).trim();\n                        if (!email && window.ShopifyAnalytics && window.ShopifyAnalytics.meta && window.ShopifyAnalytics.meta.page) {\n                            var pe = window.ShopifyAnalytics.meta.page.customerEmail;\n                            if (pe) email = String(pe).trim();\n                        }\n                    } catch (e0) {}\n                }\n                if (!email) {\n                    email = String(consentIdentifier) + '@guest.withdraw.consentmo.com';\n                }\n                var customerId = 0;\n                try {\n                    if (typeof Shopify !== 'undefined' && typeof Shopify.customer_id !== 'undefined') customerId = Shopify.customer_id;\n                    else if (typeof __st !== 'undefined' && __st.cid != null) customerId = __st.cid;\n                } catch (e1) {}\n                var formData = new FormData();\n                formData.append('shop', Shopify.shop);\n                formData.append('email', email);\n                formData.append('type', 'customer\/withdraw_consent');\n                formData.append('sourceOfRequest', 1);\n                formData.append('consentGiven', 1);\n                formData.append('page', 'gdpr');\n                formData.append('lang', Shopify.locale ? Shopify.locale : '');\n                formData.append('gtranslateLang', (typeof isenseGDPR !== 'undefined' && isenseGDPR.Cookies) ? isenseGDPR.Cookies.get('googtrans') : '');\n                formData.append('ipAddress', ipAddress || '');\n                formData.append('instant_withdraw', '1');\n                if (customerId) formData.append('customer_id', customerId);\n                fetch('https:\/\/app.consentmo.com\/gdprRequests\/submitRequest', { method: 'POST', body: formData }).catch(function() {});\n            } catch (e) {}\n        }\n\n        window.csmHandleWithdrawConsentGdpr = function(btn) {\n            if (typeof Shopify === 'undefined' || !Shopify.shop) {\n                var errEl = document.getElementById('gdpr-withdraw-error');\n                if (errEl) {\n                    errEl.textContent = 'Store context is unavailable. Please try again from the shop.';\n                    errEl.style.display = 'block';\n                }\n                return;\n            }\n            if (typeof ConsentmoCustomerIdentification !== 'undefined'\n                && !ConsentmoCustomerIdentification.validateEmail('gdpr-withdraw-email', 'gdpr-withdraw-email-error', 'withdraw_consent')) {\n                return;\n            }\n            if (btn && btn.disabled) return;\n            var errBox = document.getElementById('gdpr-withdraw-error');\n            var okBox = document.getElementById('gdpr-withdraw-success');\n            if (errBox) errBox.style.display = 'none';\n            if (okBox) okBox.style.display = 'none';\n\n            var parsed = parseGdprSettings();\n            var blocked = userInSalesRegionFromParsed(parsed)\n                ? 'analytics,marketing,functionality,saleofdata'\n                : 'analytics,marketing,functionality';\n            var cookieSuffix = parsed.cookieName || '';\n            var duration = parsed.consentDuration || 365;\n\n            setConsentCookie('cookieconsent_status' + cookieSuffix, 'deny', duration);\n            setConsentCookie('cookieconsent_preferences_disabled', blocked, duration);\n            appendGdprCache('cookieconsent_status' + cookieSuffix, 'deny');\n            appendGdprCache('cookieconsent_preferences_disabled', blocked);\n\n            clearCategoryFromSettings(parsed.settings, 'analytics');\n            clearCategoryFromSettings(parsed.settings, 'marketing');\n            clearCategoryFromSettings(parsed.settings, 'functionality');\n\n            applyShopifyCustomerPrivacy(blocked);\n\n            if (btn) {\n                btn.disabled = true;\n                btn.setAttribute('aria-disabled', 'true');\n            }\n\n            fetchGeo()\n               .then(function(geo) {\n                    var n = normalizeGeo(geo);\n                    if (!n.ip) {\n                        throw new Error('no ip');\n                    }\n                    var customerId = 0;\n                    if (typeof Shopify.customer_id !== 'undefined') {\n                        customerId = Shopify.customer_id;\n                    } else if (typeof __st !== 'undefined' && __st.cid != null) {\n                        customerId = __st.cid;\n                    }\n                    var body = {\n                        consent_identifier: getConsentIdentifier(),\n                        shop: Shopify.shop,\n                        customer_id: customerId,\n                        ip: n.ip,\n                        country: n.country,\n                        region: n.region,\n                        region_name: n.region_name,\n                        city: n.city,\n                        device: getDeviceTypeInline(),\n                        pa_usr_id: parsed.paUsrId || 0,\n                        blocked_cookies: blocked + ',',\n                        accepted_page: window.location.origin + window.location.pathname,\n                        interaction_button: 5,\n                        is_sale_of_data_enabled: userInSalesRegionFromParsed(parsed)\n                    };\n                    return postConsent(body).then(function() {\n                        logInstantWithdrawGdprRequest(body.consent_identifier, n.ip);\n                    });\n                })\n               .then(function() {\n                    if (okBox) {\n                        okBox.textContent = WITHDRAW_SUCCESS_MSG;\n                        okBox.style.display = 'block';\n                    }\n                })\n               .catch(function() {\n                    if (errBox) {\n                        errBox.textContent = 'Your preferences were updated, but we could not log this action. Please try again later.';\n                        errBox.style.display = 'block';\n                    }\n                    if (btn) {\n                        btn.disabled = false;\n                        btn.removeAttribute('aria-disabled');\n                    }\n                });\n        };\n    })();\n\n    var email, type, consentGiven = false;\n    var activeSubmitButton = null;\n    var successMessage = 'Your request has been submitted successfully. Please check your email for more information.';\n    var verificationModalContent = '<div id=\"data-verification-background\"><div class=\"loading\"><\/div><div id=\"data-verification-modal\"><button class=\"data-verification-close\" aria-label=\"Close\">\u00d7<\/button> <div id=\"data-verification-container\"><input type=\"checkbox\" aria-labelledby=\"gdpr-modal-container-text\"> <label id=\"data-verification-icon\" aria-label=\"Data verification icon\"><svg width=\"24px\" height=\"24px\" viewBox=\"0 0 18 18\"><path d=\"M1,9 L1,3.5 C1,2 2,1 3.5,1 L14.5,1 C16,1 17,2 17,3.5 L17,14.5 C17,16 16,17 14.5,17 L3.5,17 C2,17 1,16 1,14.5 L1,9 Z\"><\/path><\/path><polyline points=\"1 9 7 14 15 4\"><\/polyline><\/svg><\/label><p id=\"gdpr-modal-container-text\"> Acconsento alla raccolta del mio indirizzo email e del mio indirizzo IP al fine di elaborare questa richiesta. Per maggiori informazioni, consulta <a href=\"https:\/\/www.consentmo.com\/privacy-policy-terms-of-service\/en\" target=\"_blank\" aria-label=\"Privacy Policy link (opens in a new tab)\">l'Informativa sulla privacy<\/a>.<\/p><\/div><\/div><\/div>'; var isEmailValid = function(email) { let regex = \/^(([^&lt;&gt;()[]\\.,;:s@&quot;]+(.[^&lt;&gt;()[]\\.,;:s@&quot;]+)*)|(&quot;.+&quot;))@(([[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 gdprSendRequest = function(callback) { fetch('https:\/\/www.cloudflare.com\/cdn-cgi\/trace', { method: 'GET' , headers: { 'Content-Type': 'text\/plain', }, }).then(resp =&gt; resp.text()).then(resp =&gt; { 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', 1); formData.append('ipAddress', ipInfo); formData.append('consentGiven', consentGiven); formData.append('page', 'gdpr'); formData.append('lang', Shopify.locale ? Shopify.locale : ''); formData.append('gtranslateLang', (typeof isenseGDPR !== 'undefined' &amp;&amp; isenseGDPR.Cookies) ? isenseGDPR.Cookies.get('googtrans') : ''); fetch('https:\/\/app.consentmo.com\/gdprRequests\/submitRequest', { method: 'POST', body: formData }).then(resp =&gt; resp.json()).then(resp =&gt; { if (!resp.error) { showInlineSuccessMessage(); } else { showInlineErrorMessage(resp.message); } if (typeof callback == 'function') { callback(resp); } }).catch(error =&gt; { showInlineErrorMessage(error.message || 'Si \u00e8 verificato un errore. Riprova.'); }) } else { showInlineErrorMessage(resp.message || 'Si \u00e8 verificato un errore. Riprova.'); } }) } 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; } document.addEventListener(&quot;DOMContentLoaded&quot;, function() { \/\/Aggiungi il modale al body, altrimenti non rimarr\u00e0 centrato (anche se la posizione \u00e8 fissa) document.querySelector(&quot;body&quot;).insertAdjacentHTML( 'beforeend', verificationModalContent); \/\/ Quando l'utente fa clic su <span>(x), chiudi il modale 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(); \/\/ Rileva il clic su un href, perch\u00e9 viene sovrascritto. if(e.target.tagName === &quot;A&quot;) { window.open(e.target.href, '_blank'); return; } document.querySelector('#data-verification-icon').classList.add(&quot;clicked&quot;); setTimeout(()=&gt;{ toggleFadeiSense(document.querySelector(&quot;#data-verification-modal&quot;), false); document.querySelector('#data-verification-background.loading').style.display = 'inline-block'; consentGiven = true; gdprSendRequest(function(resp) { consentGiven = false; closeVerificationModal(); }); }, 400); }); }); function openVerificationModal(){ if(!isEmailValid(email)) { showInlineErrorMessage('Email non valida'); return; } toggleFadeiSense(document.querySelector(&quot;#data-verification-modal&quot;), true); toggleFadeiSense(document.querySelector('#data-verification-background'), true); document.querySelector('#data-verification-container input').focus(); } function closeVerificationModal(){ toggleFadeiSense(document.querySelector(&quot;#data-verification-background&quot;), false); document.querySelector('#data-verification-icon').classList.remove(&quot;clicked&quot;); document.querySelector('#data-verification-background.loading').style.display = 'none'; \/\/ Metti a fuoco il pulsante del tipo di richiesta che \u00e8 stato selezionato let gdprForms = document.querySelectorAll('.form-gdpr-request'); gdprForms.forEach(function(gdprForm) { if (gdprForm.id === 'form-gdpr-withdraw-consent-request') return; if (gdprForm.style.display !== &quot;none&quot;) { let gdprFormLinks = gdprForm.previousElementSibling.querySelectorAll('li'); if (gdprFormLinks.length === 1) { gdprFormLinks[0].querySelector('button').focus(); } else { \/\/ Logica di focus per le richieste di portabilit\u00e0 dei dati gdprFormLinks = gdprForm.parentElement; if (gdprFormLinks.nodeName === 'LI') { gdprFormLinks.querySelector('button').focus(); } } } }); } \/\/ Accedi o scarica i miei dati document.querySelector('#btn-gdpr-access-data-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; gdprSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-gdpr-access-data-request'), 200); this.setAttribute(&quot;aria-expanded&quot;, &quot;true&quot;); } else { slideUp(document.querySelector('#form-gdpr-access-data-request'), 200); this.setAttribute(&quot;aria-expanded&quot;, &quot;false&quot;); } }); document.querySelector('#form-gdpr-access-data-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-gdpr-access-data-request-email').value; type = 'customer\/report'; openVerificationModal(); }); \/\/ Correggi le mie informazioni document.querySelector('#btn-gdpr-correct-info-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; gdprSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-gdpr-correct-info-request'), 200); this.setAttribute(&quot;aria-expanded&quot;, &quot;true&quot;); } else { slideUp(document.querySelector('#form-gdpr-correct-info-request'), 200); this.setAttribute(&quot;aria-expanded&quot;, &quot;false&quot;); } }); document.querySelector('#form-gdpr-correct-info-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-gdpr-correct-info-request-email').value; type = 'customer\/edit'; openVerificationModal(); }); \/\/ Elimina i miei dati document.querySelector('#btn-gdpr-delete-data-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; gdprSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-gdpr-delete-data-request'), 200); this.setAttribute(&quot;aria-expanded&quot;, &quot;true&quot;); } else { slideUp(document.querySelector('#form-gdpr-delete-data-request'), 200); this.setAttribute(&quot;aria-expanded&quot;, &quot;false&quot;); } }); document.querySelector('#form-gdpr-delete-data-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-gdpr-delete-data-request-email').value; type = 'customer\/delete'; openVerificationModal(); }); \/\/ Revoca il consenso (sempre visibile; rifiuto immediato - nessun passaggio di espansione) document.querySelector('#form-gdpr-withdraw-consent-request-submit').addEventListener('click', function(e) { e.preventDefault(); if (typeof window.csmHandleWithdrawConsentGdpr === 'function') { window.csmHandleWithdrawConsentGdpr(this); } }); \/\/ Gestisci le preferenze sulla privacy document.querySelector('#btn-gdpr-manage-privacy-preferences').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('Le impostazioni dei cookie non sono disponibili in questa pagina.'); }); \/\/ Navigazione da tastiera nel modale di verifica dei dati per l'accessibilit\u00e0 document.addEventListener(&quot;DOMContentLoaded&quot;, function() { document.querySelector('#data-verification-modal').addEventListener('keydown', function(e) { let isTabPressed = e.keyCode === 9 || e.key === &quot;Tab&quot; || e.code === &quot;Tab&quot;; let isEscapePressed = e.keyCode === 27 || e.key === &quot;Escape&quot; || e.code === &quot;Escape&quot;; let isSpacePressed = event.keyCode === 32 || e.key === &quot; &quot; || event.code === &quot;Space&quot;; let isEnterPressed = event.keyCode === 13 || e.key === &quot;Enter&quot; || event.code === &quot;Enter&quot;; let dataVerificationCloseButton = document.querySelector('.data-verification-close'); let dataVerificationCheckbox = document.querySelector('#data-verification-container input'); let dataVerificationLink = document.querySelector('#data-verification-container a'); \/\/ Questa funzione ci risparmia la fatica di chiamare e.preventDefault() dopo ogni focus let executeFocus = (focusElement) =&gt; {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 &amp;&amp; if (document.activeElement === dataVerificationCloseButton) { executeFocus(dataVerificationLink); } } else { if (dataVerificationLink &amp;&amp; document.activeElement === dataVerificationLink) { executeFocus(dataVerificationCloseButton); } } } }); }); if (typeof ConsentmoCustomerIdentification !== 'undefined') { ConsentmoCustomerIdentification.initPage({ withdraw_consent: 'gdpr-withdraw-email-wrap' }); }<\/span><\/script><span><\/span>","protected":false},"excerpt":{"rendered":"<p>Rispettiamo la tua privacy. Se ti trovi nello Spazio economico europeo (SEE), hai determinati diritti ai sensi del Regolamento generale sulla protezione dei dati (GDPR). Utilizza le opzioni seguenti per esercitare i tuoi diritti in relazione ai dati personali che conserviamo su di te. Come elaboriamo la tua richiesta Quando invii una richiesta tramite questa [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-732","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/yohann.shop\/it\/wp-json\/wp\/v2\/pages\/732","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/yohann.shop\/it\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/yohann.shop\/it\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/yohann.shop\/it\/wp-json\/wp\/v2\/comments?post=732"}],"version-history":[{"count":0,"href":"https:\/\/yohann.shop\/it\/wp-json\/wp\/v2\/pages\/732\/revisions"}],"wp:attachment":[{"href":"https:\/\/yohann.shop\/it\/wp-json\/wp\/v2\/media?parent=732"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}