// Helper function to get a cookie. // From https://stackoverflow.com/questions/10730362/get-cookie-by-name function getCookie(name) { const value = `; ${document.cookie}`; const parts = value.split(`; ${name}=`); if (parts.length === 2) return parts.pop().split(';').shift(); } document.addEventListener('DOMContentLoaded', event => { // Always try to get the cookie. const cookieValue = getCookie('embeddedCookie'); if (cookieValue) { document.getElementById('cookieValue').innerText = cookieValue; } }); // Check for iOS / Safari. if (!!document.hasStorageAccess) { document.hasStorageAccess().then(result => { // If we don't have access we must request it, but the request // must come from a UI event. if (!result) { // Show the button and tie to the click. const requestStorageAccessButton = document.getElementById('requestStorageAccessButton'); requestStorageAccessButton.style.display = "block"; requestStorageAccessButton.addEventListener("click", event => { // On UI event, consume the event by requesting access. document.requestStorageAccess().then(result => { // Finally, we are allowed! Reload to get the cookie. window.location.reload(); }).catch(err => { // If we get here, it means either our page // was never loaded as a first party page, // or the user clicked 'Don't Allow'. // Either way open that now so the user can request // from there (or learn more about us). window.top.location = window.location.href + "requeststorageaccess.html"; }); }); } }).catch(err => console.error(err)); }