From 9689d0762cb43f51bcf8da13f4b5c6f48ccdb5f3 Mon Sep 17 00:00:00 2001
From: DennisBauer <37552885+DennisBauer@users.noreply.github.com>
Date: Thu, 6 Aug 2026 21:49:45 +0200
Subject: [PATCH] fix(legal): remove dead ODR link, fix contact email
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Regulation (EU) 2024/3228 repealed the ODR linking obligation; the
platform stopped accepting complaints on 2025-03-20 and shut down on
2025-07-20. Its URL now redirects to a relocation notice. The § 36
VSBG statement stays.
The imprint email label carried a stray "me" suffix, so the one
contact detail § 5 (1) Nr. 2 DDG mandates rendered wrong in both
locales. Source it from CONTACT_EMAIL in config.ts instead of
duplicating the literal per locale.
Privacy § 11 named only the GitHub repo; Art. 13(1)(a)/(b) GDPR wants
the controller's contact details in the policy itself.
Note: MDX interpolates a link label but not a link destination, so
these use JSX anchors — `[{X}](mailto:{X})` emits a literal
`mailto:%7BX%7D` href and passes both astro check and prettier.
---
src/config.ts | 3 +++
src/pages/de/imprint.mdx | 10 +++++-----
src/pages/de/privacy.mdx | 5 ++++-
src/pages/imprint.mdx | 10 +++++-----
src/pages/privacy.mdx | 5 ++++-
5 files changed, 21 insertions(+), 12 deletions(-)
diff --git a/src/config.ts b/src/config.ts
index 1ca6dd7..ba03d2f 100644
--- a/src/config.ts
+++ b/src/config.ts
@@ -13,5 +13,8 @@ export const ANDROID_PACKAGE = "de.tabmates.androidapp";
export const PLAY_STORE_URL = `https://play.google.com/store/apps/details?id=${ANDROID_PACKAGE}`;
+/** Imprint contact address, forwarded by the c/o service. Shown on the legal pages. */
+export const CONTACT_EMAIL = "tabmates@mail.online-impressum.de";
+
/** Shown on the legal pages. Update when the policy text changes. */
export const PRIVACY_LAST_UPDATED = "2026-07-27";
diff --git a/src/pages/de/imprint.mdx b/src/pages/de/imprint.mdx
index e6dd67f..6aa1242 100644
--- a/src/pages/de/imprint.mdx
+++ b/src/pages/de/imprint.mdx
@@ -5,6 +5,8 @@ title: Impressum
description: Anbieterkennzeichnung gemäß § 5 DDG für tabmates.de.
---
+import { CONTACT_EMAIL } from "../../config";
+
Angaben gemäß § 5 DDG.
## Anbieter
@@ -16,14 +18,12 @@ Europaring 90
## Kontakt
-Email: [tabmates@mail.online-impressum.deme](mailto:tabmates@mail.online-impressum.de)
+Email: {CONTACT_EMAIL}
## Verbraucherstreitbeilegung
-Die Europäische Kommission stellt eine Plattform zur Online-Streitbeilegung (OS)
-bereit: [ec.europa.eu/consumers/odr](https://ec.europa.eu/consumers/odr/). Wir sind
-nicht bereit und nicht verpflichtet, an Streitbeilegungsverfahren vor einer
-Verbraucherschlichtungsstelle teilzunehmen.
+Wir sind nicht bereit und nicht verpflichtet, an Streitbeilegungsverfahren vor einer
+Verbraucherschlichtungsstelle teilzunehmen (§ 36 VSBG).
## Haftung für Inhalte
diff --git a/src/pages/de/privacy.mdx b/src/pages/de/privacy.mdx
index b063311..ce7c460 100644
--- a/src/pages/de/privacy.mdx
+++ b/src/pages/de/privacy.mdx
@@ -6,6 +6,8 @@ description: Welche personenbezogenen Daten die TabMates-App und diese Website v
lastUpdated: 2026-07-29
---
+import { CONTACT_EMAIL } from "../../config";
+
Wir sind die Entwickler von **TabMates**, einer App zum Teilen gemeinsamer Ausgaben
mit Freundinnen und Freunden, Mitbewohnenden und Reisegruppen. Diese Erklärung
beschreibt, welche personenbezogenen Daten die App verarbeitet, warum, und welche
@@ -214,7 +216,8 @@ offiziellen Projekt-Repository zu prüfen.
## 11. Kontakt
Bei Fragen zu dieser Erklärung oder zur Ausübung Ihrer Datenschutzrechte erreichen
-Sie uns über das offizielle GitHub-Repository:
+Sie uns per E-Mail unter {CONTACT_EMAIL} oder
+über das offizielle GitHub-Repository:
[github.com/TabMates/app](https://github.com/TabMates/app). Die postalischen
Kontaktdaten finden Sie im [Impressum](/de/imprint/).
diff --git a/src/pages/imprint.mdx b/src/pages/imprint.mdx
index 2dd8adb..711317c 100644
--- a/src/pages/imprint.mdx
+++ b/src/pages/imprint.mdx
@@ -5,6 +5,8 @@ title: Imprint
description: Provider identification under § 5 DDG for tabmates.de.
---
+import { CONTACT_EMAIL } from "../config";
+
Information pursuant to § 5 DDG (German Digital Services Act).
## Provider
@@ -16,14 +18,12 @@ Europaring 90
## Contact
-Email: [tabmates@mail.online-impressum.deme](mailto:tabmates@mail.online-impressum.de)
+Email: {CONTACT_EMAIL}
## Consumer dispute resolution
-The European Commission provides a platform for online dispute resolution (ODR):
-[ec.europa.eu/consumers/odr](https://ec.europa.eu/consumers/odr/). We are neither
-willing nor obliged to participate in dispute resolution proceedings before a
-consumer arbitration board.
+We are neither willing nor obliged to participate in dispute resolution proceedings
+before a consumer arbitration board (§ 36 VSBG).
## Liability for content
diff --git a/src/pages/privacy.mdx b/src/pages/privacy.mdx
index 7fc8205..0908c38 100644
--- a/src/pages/privacy.mdx
+++ b/src/pages/privacy.mdx
@@ -6,6 +6,8 @@ description: What personal data the TabMates app and this website handle, why, a
lastUpdated: 2026-07-29
---
+import { CONTACT_EMAIL } from "../config";
+
We are the developers of **TabMates**, an app for splitting shared expenses with
friends, flatmates and travel groups. This policy explains what personal data the
app handles, why, and what choices you have. Sections 12 and 13 cover this
@@ -194,7 +196,8 @@ policy periodically within the app or on the official project repository.
## 11. Contact
If you have any questions about this policy or want to exercise your privacy
-rights, you can reach out via the official GitHub repository:
+rights, you can reach us by email at {CONTACT_EMAIL},
+or via the official GitHub repository:
[github.com/TabMates/app](https://github.com/TabMates/app). Postal contact
details are listed in the [imprint](/imprint/).