From 562452c6c719f75aaffc03ea9c737caa9b747e0d Mon Sep 17 00:00:00 2001 From: Tero Halla-aho Date: Thu, 11 Dec 2025 21:32:10 +0200 Subject: [PATCH] Add footer cookie notice --- PROGRESS.md | 1 + app/components/SiteFooter.tsx | 1 + app/globals.css | 7 +++++++ lib/i18n.ts | 6 ++++++ 4 files changed, 15 insertions(+) diff --git a/PROGRESS.md b/PROGRESS.md index 467675c..9bdf8ac 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -81,3 +81,4 @@ - Added site favicon generated from the updated logo (`public/favicon.ico`). - New admin monitoring dashboard at `/admin/monitor` surfaces Hetzner node status, Kubernetes nodes/pods health, and PostgreSQL connection/size checks with auto-refresh. - Netdata installed on k3s node (`node1.lomavuokraus.fi:8443`) and DB host (`db1.lomavuokraus.fi:8443`) behind self-signed TLS + basic auth; DB Netdata includes Postgres metrics via dedicated `netdata` role. +- Footer now includes a minimal cookie usage statement (essential cookies only; site requires acceptance). diff --git a/app/components/SiteFooter.tsx b/app/components/SiteFooter.tsx index 3339a86..a8366be 100644 --- a/app/components/SiteFooter.tsx +++ b/app/components/SiteFooter.tsx @@ -19,6 +19,7 @@ export default function SiteFooter() { Version {version} +

{t('footerCookieNotice')}

); } diff --git a/app/globals.css b/app/globals.css index 40672c8..e1a8856 100644 --- a/app/globals.css +++ b/app/globals.css @@ -466,6 +466,13 @@ p { font-size: 12px; } +.footer-cookie { + margin: 12px 0 0; + font-size: 12px; + color: var(--muted); + line-height: 1.4; +} + .privacy-block ul { margin: 8px 0 0; padding-left: 18px; diff --git a/lib/i18n.ts b/lib/i18n.ts index 64efc8c..d67b7aa 100644 --- a/lib/i18n.ts +++ b/lib/i18n.ts @@ -48,6 +48,8 @@ const baseMessages = { footerAbout: 'About', footerPricing: 'Pricing', footerPrivacy: 'Privacy & cookies', + footerCookieNotice: + 'We use only essential cookies for login and security. By using this site you consent; if you do not accept, please do not use the site.', loginTitle: 'Login', emailLabel: 'Email', passwordLabel: 'Password', @@ -389,6 +391,8 @@ const baseMessages = { footerAbout: 'Tietoa', footerPricing: 'Hinnasto', footerPrivacy: 'Tietosuoja ja evästeet', + footerCookieNotice: + 'Käytämme vain välttämättömiä evästeitä kirjautumiseen ja turvallisuuteen. Käyttämällä sivustoa hyväksyt evästeet; jos et hyväksy, älä käytä sivustoa.', loginTitle: 'Kirjaudu sisään', emailLabel: 'Sähköposti', passwordLabel: 'Salasana', @@ -723,6 +727,8 @@ const svMessages: Record = { evChargingNo: 'Ingen laddning i närheten', evChargingAny: 'Alla', evChargingExplain: 'Finns det EV-laddning på plats eller i närheten?', + footerCookieNotice: + 'Vi använder endast nödvändiga cookies för inloggning och säkerhet. Genom att använda sajten godkänner du cookies; om du inte gör det, använd inte webbplatsen.', }; export const messages = { ...baseMessages, sv: svMessages } as const;