From 54a79a4c69971b0308422ef471df61c0e45ede79 Mon Sep 17 00:00:00 2001 From: Alexander Schmidt Date: Mon, 9 Feb 2026 17:14:59 +0100 Subject: [PATCH] feat: add imprint page (draft, 7 languages), add missing translations to legal pages, reorder footer links --- docs/LAUNCH-PLAN.md | 5 + index.html | 3 +- js/components/app-footer.js | 3 +- js/components/app-shell.js | 1 + js/components/pages/page-about.js | 58 ++++- js/components/pages/page-imprint.js | 351 +++++++++++++++++++++++++++ js/components/pages/page-privacy.js | 206 +++++++++++++++- js/components/pages/page-settings.js | 3 +- js/components/pages/page-terms.js | 304 ++++++++++++++++++++++- locales/de.json | 3 +- locales/en.json | 3 +- locales/es.json | 3 +- locales/fr.json | 3 +- locales/it.json | 3 +- locales/pt.json | 3 +- locales/ru.json | 3 +- 16 files changed, 941 insertions(+), 14 deletions(-) create mode 100644 js/components/pages/page-imprint.js diff --git a/docs/LAUNCH-PLAN.md b/docs/LAUNCH-PLAN.md index eb5594c..67c4182 100644 --- a/docs/LAUNCH-PLAN.md +++ b/docs/LAUNCH-PLAN.md @@ -249,6 +249,11 @@ und `twitter:title/description` dynamisch bei jedem Sprachwechsel (i18n-Keys `me - [ ] PHP: `config.php` → `REQUIRE_INVITE_CODE = true` - [ ] Frontend: Invite-Code-Feld in `auth-modal.js` einbauen - [x] Frontend: Meta-Description i18n-Keys in alle 7 Sprachen +- [x] Frontend: Impressum-Seite (Entwurf, alle 7 Sprachen, Platzhalter für Adressdaten) +- [x] Frontend: Datenschutz, AGB, Über uns — alle 7 Sprachen +- [ ] Rechtliches: Impressum-Platzhalter ausfüllen (Name, Adresse, UID) +- [ ] Rechtliches: AGB + Datenschutz durch Fachperson prüfen lassen +- [ ] Rechtliches: Gewerbeanmeldung / Einzelunternehmen - [ ] 10–20 Invite-Codes in Directus erstellen - [ ] Codes verteilen (r/Monero, Matrix, persönlich) - [ ] Feedback-Kanal einrichten (Matrix-Raum) diff --git a/index.html b/index.html index f281943..6b60521 100644 --- a/index.html +++ b/index.html @@ -160,9 +160,10 @@ 1 XMR ≈ ... diff --git a/js/components/app-footer.js b/js/components/app-footer.js index 26445c6..8382e95 100644 --- a/js/components/app-footer.js +++ b/js/components/app-footer.js @@ -60,9 +60,10 @@ class AppFooter extends HTMLElement { 1 XMR ≈ ... ` diff --git a/js/components/app-shell.js b/js/components/app-shell.js index bbe7cef..bc785d9 100644 --- a/js/components/app-shell.js +++ b/js/components/app-shell.js @@ -55,6 +55,7 @@ class AppShell extends HTMLElement { .register('/terms', 'page-terms', lazy('./pages/page-terms.js')) .register('/about', 'page-about', lazy('./pages/page-about.js')) .register('/contact', 'page-contact', lazy('./pages/page-contact.js')) + .register('/imprint', 'page-imprint', lazy('./pages/page-imprint.js')) router.handleRouteChange() } diff --git a/js/components/pages/page-about.js b/js/components/pages/page-about.js index 335cc22..4bf17d3 100644 --- a/js/components/pages/page-about.js +++ b/js/components/pages/page-about.js @@ -55,6 +55,62 @@ class PageAbout extends HTMLElement {
  • Open source & auto-hébergé
  • Exploité depuis la Suisse
  • + `, + it: /* html */` +

    Informazioni su dgray.io

    +

    dgray.io è una piattaforma di annunci incentrata sulla privacy. Gli utenti possono creare annunci e comunicare tramite messaggi crittografati end-to-end — senza rivelare dati personali.

    +

    I pagamenti avvengono esclusivamente in Monero (XMR). Nessun KYC, nessuna email, nessun tracking.

    + +

    Principi

    + + `, + es: /* html */` +

    Acerca de dgray.io

    +

    dgray.io es una plataforma de clasificados centrada en la privacidad. Los usuarios pueden crear anuncios y comunicarse mediante mensajes cifrados de extremo a extremo — sin revelar datos personales.

    +

    Los pagos se realizan exclusivamente en Monero (XMR). Sin KYC, sin email, sin rastreo.

    + +

    Principios

    + + `, + pt: /* html */` +

    Sobre o dgray.io

    +

    dgray.io é uma plataforma de classificados focada em privacidade. Os usuários podem criar anúncios e se comunicar por mensagens criptografadas de ponta a ponta — sem revelar dados pessoais.

    +

    Os pagamentos são feitos exclusivamente em Monero (XMR). Sem KYC, sem email, sem rastreamento.

    + +

    Princípios

    + + `, + ru: /* html */` +

    О dgray.io

    +

    dgray.io — это платформа объявлений с приоритетом конфиденциальности. Пользователи могут создавать объявления и общаться через сквозное шифрование — без раскрытия личных данных.

    +

    Оплата осуществляется исключительно в Monero (XMR). Без KYC, без email, без отслеживания.

    + +

    Принципы

    + ` } return content[lang] || content.de @@ -62,7 +118,7 @@ class PageAbout extends HTMLElement { render() { const lang = getCurrentLanguage() - const backLabel = { de: 'Zurück zur Startseite', en: 'Back to Home', fr: 'Retour à l\'accueil' } + const backLabel = { de: 'Zurück zur Startseite', en: 'Back to Home', fr: 'Retour à l\'accueil', it: 'Torna alla home', es: 'Volver al inicio', pt: 'Voltar ao Início', ru: 'На главную' } this.innerHTML = /* html */`