// Cookie consent banner for Layershop.eu function CookieBanner() { const STORAGE_KEY = "layershop_cookie_consent_v1"; const [open, setOpen] = React.useState(false); const [showSettings, setShowSettings] = React.useState(false); const [prefs, setPrefs] = React.useState({ necessary: true, statistics: true, marketing: true, preferences: true, }); React.useEffect(() => { try { const stored = localStorage.getItem(STORAGE_KEY); if (!stored) { setOpen(true); } } catch (e) { setOpen(true); } // Luister naar klik op "Cookiebeleid" in de footer const onOpenSettings = () => { setOpen(true); setShowSettings(true); }; window.addEventListener("layershop:open-cookie-settings", onOpenSettings); return () => window.removeEventListener("layershop:open-cookie-settings", onOpenSettings); }, []); const save = (values) => { try { localStorage.setItem(STORAGE_KEY, JSON.stringify({ ...values, timestamp: Date.now() })); } catch (e) {} setOpen(false); }; const acceptAll = () => save({ necessary: true, statistics: true, marketing: true, preferences: true }); const onlyNecessary = () => save({ necessary: true, statistics: false, marketing: false, preferences: false }); const saveCustom = () => save(prefs); if (!open) return null; const togglePref = (key) => { if (key === "necessary") return; setPrefs(p => ({ ...p, [key]: !p[key] })); }; return (
We gebruiken cookies om de website goed te laten werken en (optioneel) inzicht te krijgen in het gebruik. Je kunt hieronder je voorkeuren instellen.