feat(cmp): GDPR-compliant DSE + consent re-open button
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 41s
CI / test-python-voice (push) Successful in 31s
CI / test-bqas (push) Successful in 29s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 41s
CI / test-python-voice (push) Successful in 31s
CI / test-bqas (push) Successful in 29s
- Rewrite Datenschutzerklaerung: cookie section with bp_consent table, legal basis (Art. 6(1)(a) + §25 TDDDG), DPO, Hetzner hosting, Google Fonts DPF, retention periods, all data subject rights (Art. 15-21), supervisory authority (LfD Niedersachsen) - Add "Cookie-Einstellungen" re-open button in footer (Art. 7(3) DSGVO) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -10,7 +10,7 @@ export default function DatenschutzPage() {
|
|||||||
|
|
||||||
<h1 className="text-4xl font-bold mb-8">Datenschutzerklaerung</h1>
|
<h1 className="text-4xl font-bold mb-8">Datenschutzerklaerung</h1>
|
||||||
|
|
||||||
<div className="space-y-6 text-white/60 text-sm">
|
<div className="space-y-6 text-white/60 text-sm leading-relaxed">
|
||||||
<div>
|
<div>
|
||||||
<h2 className="text-lg font-semibold text-white mb-2">1. Verantwortlicher</h2>
|
<h2 className="text-lg font-semibold text-white mb-2">1. Verantwortlicher</h2>
|
||||||
<p>BreakPilot GmbH (i.Gr.)</p>
|
<p>BreakPilot GmbH (i.Gr.)</p>
|
||||||
@@ -19,23 +19,66 @@ export default function DatenschutzPage() {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h2 className="text-lg font-semibold text-white mb-2">2. Hosting</h2>
|
<h2 className="text-lg font-semibold text-white mb-2">2. Datenschutzbeauftragter</h2>
|
||||||
<p>
|
<p>
|
||||||
Diese Website wird auf Servern in Deutschland gehostet.
|
[Wird nach Gruendung benannt]<br />
|
||||||
Es werden keine personenbezogenen Daten an Drittlaender uebermittelt.
|
E-Mail: datenschutz@breakpilot.ai
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h2 className="text-lg font-semibold text-white mb-2">3. Keine Cookies, kein Tracking</h2>
|
<h2 className="text-lg font-semibold text-white mb-2">3. Hosting</h2>
|
||||||
<p>
|
<p>
|
||||||
Diese Website verwendet keine Cookies, kein Tracking und keine Analyse-Tools.
|
Diese Website wird auf Servern der Hetzner Online GmbH in Deutschland gehostet.
|
||||||
Es werden keine personenbezogenen Daten erhoben oder gespeichert.
|
Es findet kein Drittlandtransfer fuer das Hosting statt.
|
||||||
|
Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse an zuverlaessigem Betrieb).
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h2 className="text-lg font-semibold text-white mb-2">4. Server-Logfiles</h2>
|
<h2 className="text-lg font-semibold text-white mb-2">4. Cookies und Einwilligungsverwaltung</h2>
|
||||||
|
<p>
|
||||||
|
Diese Website verwendet ein Consent-Management-System (BreakPilot CMP), um Ihre Cookie-Einstellungen
|
||||||
|
zu verwalten. Beim ersten Besuch wird Ihnen ein Cookie-Banner angezeigt, ueber das Sie Ihre
|
||||||
|
Einwilligung fuer verschiedene Cookie-Kategorien erteilen oder verweigern koennen.
|
||||||
|
</p>
|
||||||
|
<p className="mt-2">
|
||||||
|
<span className="text-white font-medium">Rechtsgrundlage:</span> Art. 6 Abs. 1 lit. a DSGVO (Einwilligung)
|
||||||
|
i.V.m. Paragraph 25 Abs. 1 TDDDG fuer nicht-essenzielle Cookies.
|
||||||
|
Fuer technisch notwendige Cookies: Paragraph 25 Abs. 2 TDDDG (unbedingt erforderlich).
|
||||||
|
</p>
|
||||||
|
<h3 className="text-sm font-semibold text-white mt-4 mb-2">Eingesetzte Cookies</h3>
|
||||||
|
<div className="overflow-x-auto">
|
||||||
|
<table className="w-full text-xs border border-white/10">
|
||||||
|
<thead>
|
||||||
|
<tr className="border-b border-white/10 text-white/80">
|
||||||
|
<th className="text-left px-3 py-2">Name</th>
|
||||||
|
<th className="text-left px-3 py-2">Anbieter</th>
|
||||||
|
<th className="text-left px-3 py-2">Zweck</th>
|
||||||
|
<th className="text-left px-3 py-2">Speicherdauer</th>
|
||||||
|
<th className="text-left px-3 py-2">Typ</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody className="divide-y divide-white/5">
|
||||||
|
<tr>
|
||||||
|
<td className="px-3 py-2 font-mono">bp_consent</td>
|
||||||
|
<td className="px-3 py-2">BreakPilot (First-Party)</td>
|
||||||
|
<td className="px-3 py-2">Speichert Ihre Cookie-Einwilligung</td>
|
||||||
|
<td className="px-3 py-2">12 Monate</td>
|
||||||
|
<td className="px-3 py-2">Notwendig</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<p className="mt-2">
|
||||||
|
Sie koennen Ihre Einwilligung jederzeit widerrufen, indem Sie den Link
|
||||||
|
"Cookie-Einstellungen" im Seitenfuss klicken. Der Widerruf ist gemaess Art. 7 Abs. 3 DSGVO
|
||||||
|
genauso einfach wie die Erteilung der Einwilligung.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2 className="text-lg font-semibold text-white mb-2">5. Server-Logfiles</h2>
|
||||||
<p>
|
<p>
|
||||||
Der Hosting-Provider erhebt technisch notwendige Logfiles (IP-Adresse, Browsertyp, Zeitstempel).
|
Der Hosting-Provider erhebt technisch notwendige Logfiles (IP-Adresse, Browsertyp, Zeitstempel).
|
||||||
Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse an der Sicherheit).
|
Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse an der Sicherheit).
|
||||||
@@ -44,20 +87,76 @@ export default function DatenschutzPage() {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h2 className="text-lg font-semibold text-white mb-2">5. Externe Schriften</h2>
|
<h2 className="text-lg font-semibold text-white mb-2">6. Externe Schriften</h2>
|
||||||
<p>
|
<p>
|
||||||
Diese Website laedt Schriftarten von Google Fonts. Dabei wird Ihre IP-Adresse an Google LLC uebermittelt.
|
Diese Website laedt Schriftarten von Google Fonts. Dabei wird Ihre IP-Adresse an Google LLC,
|
||||||
|
1600 Amphitheatre Parkway, Mountain View, CA 94043, USA uebermittelt.
|
||||||
Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO.
|
Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO.
|
||||||
Weitere Informationen: https://policies.google.com/privacy
|
Google ist unter dem EU-US Data Privacy Framework (DPF) zertifiziert (Angemessenheitsbeschluss
|
||||||
|
der EU-Kommission vom 10. Juli 2023).
|
||||||
|
</p>
|
||||||
|
<p className="mt-1">
|
||||||
|
Weitere Informationen:{' '}
|
||||||
|
<a href="https://policies.google.com/privacy" className="text-accent-electric hover:underline" target="_blank" rel="noopener noreferrer">
|
||||||
|
policies.google.com/privacy
|
||||||
|
</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h2 className="text-lg font-semibold text-white mb-2">6. Ihre Rechte</h2>
|
<h2 className="text-lg font-semibold text-white mb-2">7. Zwecke der Verarbeitung</h2>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li>Bereitstellung und Betrieb der Website (Art. 6 Abs. 1 lit. f DSGVO)</li>
|
||||||
|
<li>Verwaltung Ihrer Cookie-Einwilligungen (Art. 6 Abs. 1 lit. c DSGVO — Nachweispflicht Art. 7 Abs. 1 DSGVO)</li>
|
||||||
|
<li>Kontaktaufnahme per E-Mail (Art. 6 Abs. 1 lit. b DSGVO — vorvertragliche Massnahmen)</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2 className="text-lg font-semibold text-white mb-2">8. Empfaenger und Auftragsverarbeiter</h2>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li>Hetzner Online GmbH, Industriestr. 25, 91710 Gunzenhausen — Hosting (AVV nach Art. 28 DSGVO)</li>
|
||||||
|
<li>Google LLC — Schriftarten (Google Fonts CDN, EU-US DPF)</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2 className="text-lg font-semibold text-white mb-2">9. Speicherdauer</h2>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li>Server-Logfiles: 7 Tage</li>
|
||||||
|
<li>Cookie-Einwilligung (bp_consent): 12 Monate</li>
|
||||||
|
<li>Consent-Nachweis (Backend): 13 Monate (CNIL-Empfehlung)</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2 className="text-lg font-semibold text-white mb-2">10. Ihre Rechte</h2>
|
||||||
|
<p>Sie haben gegenueber uns folgende Rechte bezueglich Ihrer personenbezogenen Daten:</p>
|
||||||
|
<ul className="list-disc list-inside space-y-1 mt-2">
|
||||||
|
<li>Recht auf Auskunft (Art. 15 DSGVO)</li>
|
||||||
|
<li>Recht auf Berichtigung (Art. 16 DSGVO)</li>
|
||||||
|
<li>Recht auf Loeschung (Art. 17 DSGVO)</li>
|
||||||
|
<li>Recht auf Einschraenkung der Verarbeitung (Art. 18 DSGVO)</li>
|
||||||
|
<li>Recht auf Datenuebertragbarkeit (Art. 20 DSGVO)</li>
|
||||||
|
<li>Recht auf Widerspruch (Art. 21 DSGVO)</li>
|
||||||
|
</ul>
|
||||||
|
<p className="mt-2">
|
||||||
|
Zur Ausuebung Ihrer Rechte wenden Sie sich an: datenschutz@breakpilot.ai
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h2 className="text-lg font-semibold text-white mb-2">11. Beschwerderecht</h2>
|
||||||
<p>
|
<p>
|
||||||
Sie haben das Recht auf Auskunft (Art. 15 DSGVO), Berichtigung (Art. 16), Loeschung (Art. 17),
|
Sie haben das Recht, sich bei einer Aufsichtsbehoerde zu beschweren.
|
||||||
Einschraenkung (Art. 18), Datenuebertragbarkeit (Art. 20) und Widerspruch (Art. 21).
|
Zustaendig fuer uns ist:
|
||||||
Beschwerderecht bei der zustaendigen Aufsichtsbehoerde.
|
</p>
|
||||||
|
<p className="mt-1">
|
||||||
|
Die Landesbeauftragte fuer den Datenschutz Niedersachsen<br />
|
||||||
|
Prinzenstrasse 5, 30159 Hannover<br />
|
||||||
|
<a href="https://www.lfd.niedersachsen.de" className="text-accent-electric hover:underline" target="_blank" rel="noopener noreferrer">
|
||||||
|
www.lfd.niedersachsen.de
|
||||||
|
</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,8 +1,14 @@
|
|||||||
'use client'
|
'use client'
|
||||||
|
|
||||||
|
import { Cookie } from 'lucide-react'
|
||||||
import { t } from '@/lib/content'
|
import { t } from '@/lib/content'
|
||||||
import { useApp } from '@/lib/context'
|
import { useApp } from '@/lib/context'
|
||||||
|
|
||||||
|
function reopenConsentBanner() {
|
||||||
|
localStorage.removeItem('bp_consent')
|
||||||
|
window.location.reload()
|
||||||
|
}
|
||||||
|
|
||||||
export default function Footer() {
|
export default function Footer() {
|
||||||
const { lang } = useApp()
|
const { lang } = useApp()
|
||||||
const i = t(lang)
|
const i = t(lang)
|
||||||
@@ -59,9 +65,18 @@ export default function Footer() {
|
|||||||
<p className="text-xs text-white/20">
|
<p className="text-xs text-white/20">
|
||||||
© {year} {i.footer.copyright}. Alle Rechte vorbehalten.
|
© {year} {i.footer.copyright}. Alle Rechte vorbehalten.
|
||||||
</p>
|
</p>
|
||||||
<p className="text-xs text-white/20 font-mono">
|
<div className="flex items-center gap-4">
|
||||||
{i.footer.madeIn}
|
<button
|
||||||
</p>
|
onClick={reopenConsentBanner}
|
||||||
|
className="text-xs text-white/20 hover:text-white/50 transition-colors flex items-center gap-1.5"
|
||||||
|
>
|
||||||
|
<Cookie className="w-3 h-3" />
|
||||||
|
Cookie-Einstellungen
|
||||||
|
</button>
|
||||||
|
<p className="text-xs text-white/20 font-mono">
|
||||||
|
{i.footer.madeIn}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|||||||
Reference in New Issue
Block a user