banyaro/backend/static/js/pages/datenschutz.js
rene e62d94546b Rechtliches: Datenschutz + Impressum aktualisiert — SW by-v442, APP_VER 421
Impressum: TMG→DDG, OS-Plattform + VSBG-Hinweis, zweites Kontaktmedium.
DSE: privater Datenschutz-Abschnitt, KI (lokal + Claude Sonnet Fallback mit
SCCs), Push (FCM/APNS), Webcal, Referral, EXIF/GPS, Routen, Widerruf Art.7(3),
BayLDA, Passphrase statt Passwort.
2026-04-27 06:31:49 +02:00

177 lines
9.8 KiB
JavaScript

/* ============================================================
BAN YARO — Datenschutzerklärung
============================================================ */
window.Page_datenschutz = (() => {
const S = {
h2: `font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--c-text);margin:0 0 var(--space-2)`,
p: `font-size:var(--text-sm);color:var(--c-text-secondary);line-height:1.7;margin:0`,
ul: `font-size:var(--text-sm);color:var(--c-text-secondary);line-height:1.7;margin:var(--space-2) 0 0;padding-left:var(--space-5)`,
a: `color:var(--c-primary)`,
};
function sec(title, body) {
return `
<section style="margin-bottom:var(--space-6)">
<h2 style="${S.h2}">${title}</h2>
${body}
</section>`;
}
function init(container) {
container.innerHTML = `
<div style="max-width:640px;margin:0 auto;padding:var(--space-6) var(--space-4)">
<h1 style="font-size:var(--text-2xl);font-weight:var(--weight-bold);
color:var(--c-text);margin:0 0 var(--space-6)">Datenschutzerklärung</h1>
${sec('Verantwortlicher', `
<p style="${S.p}">
René Degelmann, Ringstr. 26, 85560 Ebersberg<br>
E-Mail: <a href="mailto:mail@motocamp.de" style="${S.a}">mail@motocamp.de</a>
</p>`)}
${sec('Deine Daten gehören dir', `
<p style="${S.p}">
Ban Yaro ist eine private Community-App. Dein <strong>Tagebuch</strong>, deine
<strong>persönlichen Notizen</strong>, <strong>Gesundheitsdaten</strong> deines Hundes,
<strong>eigene Routen</strong> und dein <strong>Nutzerprofil</strong> sind
ausschließlich für dich sichtbar — sie werden weder an andere Nutzer noch an Dritte
weitergegeben. Öffentlich sichtbar sind nur Inhalte, die du bewusst veröffentlichst
(z. B. Forenbeiträge, Giftköder-Meldungen, öffentliche Gassi-Treffen).
</p>`)}
${sec('Welche Daten wir verarbeiten', `
<p style="${S.p}">Bei der Registrierung und Nutzung von Ban Yaro werden folgende Daten verarbeitet:</p>
<ul style="${S.ul}">
<li><strong>Accountdaten:</strong> Benutzername, E-Mail-Adresse, Passphrase (verschlüsselt gespeichert)</li>
<li><strong>Hundeprofil:</strong> Name, Rasse, Alter, Foto (freiwillig)</li>
<li><strong>Gesundheitsdaten deines Hundes:</strong> Gewicht, Impfungen, Tierarztbesuche, Medikamente (freiwillig, nur für dich sichtbar)</li>
<li><strong>Tagebuch &amp; Notizen:</strong> Texte, Fotos, Stimmungseinträge (privat, nur für dich)</li>
<li><strong>Standortdaten:</strong> Nur nach expliziter Browser-Freigabe — für Karte, Gassi-Treffen,
Giftköder-Meldungen, Nearby-Alerts und Routenaufzeichnung. Standortdaten werden nicht dauerhaft
gespeichert, außer du speicherst selbst eine Route oder Meldung.</li>
<li><strong>Routendaten:</strong> Aufgezeichnete Routen (GPS-Wegpunkte) werden nur gespeichert,
wenn du sie explizit speicherst; sie sind standardmäßig privat.</li>
<li><strong>Fotos &amp; EXIF-Daten:</strong> Beim Hochladen von Bildern können GPS-Koordinaten
in den EXIF-Metadaten enthalten sein. Diese werden serverseitig ausgelesen, um Fotos auf der
Karte zu verorten — sofern vorhanden. Die Rohdaten werden nicht separat gespeichert.</li>
<li><strong>Inhalte:</strong> Forenbeiträge, Chatnachrichten, öffentliche Gassi-Treffen</li>
<li><strong>Technische Daten:</strong> IP-Adresse (für Sicherheit und Rate-Limiting, max. 30 Tage),
Browser-Typ</li>
</ul>`)}
${sec('Rechtsgrundlage', `
<p style="${S.p}">
Die Verarbeitung erfolgt auf Basis von Art. 6 Abs. 1 lit. b DSGVO (Vertragserfüllung)
für alle zur Bereitstellung des Dienstes notwendigen Daten, sowie Art. 6 Abs. 1 lit. a
DSGVO (Einwilligung) für optionale Funktionen wie Standortfreigabe und
Push-Benachrichtigungen. Einwilligungen können jederzeit mit Wirkung für die Zukunft
widerrufen werden (Art. 7 Abs. 3 DSGVO) — einfach die entsprechende Funktion in den
Einstellungen deaktivieren oder die Browser-Freigabe entziehen.
</p>`)}
${sec('Datenweitergabe', `
<p style="${S.p}">
Deine Daten werden nicht an Dritte verkauft oder zu Werbezwecken weitergegeben.
Öffentliche Inhalte (Forum, Wiki, Giftköder-Karte) sind für alle Nutzer sichtbar.
Profile sind standardmäßig nur für registrierte Nutzer sichtbar.
Admins und Moderatoren können gemeldete Inhalte zur Qualitätssicherung einsehen
(Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO — berechtigtes Interesse an
Plattformsicherheit).
</p>`)}
${sec('KI-Funktionen', `
<p style="${S.p}">
Ban Yaro bietet KI-gestützte Funktionen (Trainingsempfehlungen, Terminvorschläge,
Rassen-Informationen). Diese laufen primär auf einer <strong>lokalen KI auf unserem
eigenen Server in Deutschland</strong> — deine Anfragen verlassen dabei nicht unsere
Infrastruktur.
</p>
<p style="${S.p};margin-top:var(--space-3)">
Als Ausweichlösung bei Nichtverfügbarkeit des lokalen Modells wird
<strong>Claude Sonnet 4.6</strong> von Anthropic, PBC (San Francisco, USA) genutzt.
In diesem Fall wird ausschließlich der Inhalt deiner Anfrage (Prompt-Text) übermittelt —
keine Account- oder Profildaten. Die Übermittlung in die USA erfolgt auf Basis der
EU-Standardvertragsklauseln (Art. 46 Abs. 2 lit. c DSGVO).
Datenschutzerklärung von Anthropic:
<a href="https://www.anthropic.com/privacy" target="_blank" rel="noopener"
style="${S.a}">anthropic.com/privacy</a>.
</p>
<p style="${S.p};margin-top:var(--space-3)">
KI-Empfehlungen sind Vorschläge und ersetzen keine tierärztliche Beratung.
Eine automatisierte Entscheidungsfindung mit rechtlicher Wirkung (Art. 22 DSGVO)
findet nicht statt.
</p>`)}
${sec('Push-Benachrichtigungen', `
<p style="${S.p}">
Wenn du Push-Benachrichtigungen aktivierst, wird ein Abonnement-Token an den
Push-Dienst deines Browsers übermittelt: bei Android/Chrome an
<strong>Firebase Cloud Messaging</strong> (Google LLC, USA), bei iOS/Safari an
<strong>Apple Push Notification Service</strong> (Apple Inc., USA). Diese Dienste
erhalten lediglich den Token und die Benachrichtigung selbst — keine weiteren
Nutzerdaten. Die Übermittlung erfolgt auf Basis deiner Einwilligung
(Art. 6 Abs. 1 lit. a DSGVO), die du jederzeit in den Geräteeinstellungen widerrufen kannst.
</p>`)}
${sec('Kalender-Abo (Webcal)', `
<p style="${S.p}">
Das Kalender-Abo nutzt einen persönlichen Token-Link. Wenn deine Kalender-App
diesen Link regelmäßig abruft, wird dabei deine IP-Adresse an unseren Server
übermittelt. Es werden keine weiteren Daten an Dritte weitergegeben.
</p>`)}
${sec('Einladungslinks (Referral)', `
<p style="${S.p}">
Wenn du Freunde über deinen persönlichen Einladungslink einlädst, wird erfasst,
wie viele Personen sich darüber registriert haben — ohne personenbezogene Daten
der eingeladenen Personen zu speichern. Dir wird lediglich die Anzahl angezeigt.
</p>`)}
${sec('Nutzungsanalyse (Umami)', `
<p style="${S.p}">
Wir verwenden Umami, ein datenschutzfreundliches Analysetool, das ausschließlich auf
unserem eigenen Server betrieben wird. Es werden keine Cookies gesetzt, keine
personenbezogenen Daten erhoben und keine Daten an Dritte weitergegeben.
Erfasst werden lediglich anonyme Seitenaufrufe zur Verbesserung der App
(Art. 6 Abs. 1 lit. f DSGVO — berechtigtes Interesse).
</p>`)}
${sec('Deine Rechte (DSGVO)', `
<p style="${S.p}">
Du hast das Recht auf <strong>Auskunft</strong> (Art. 15), <strong>Berichtigung</strong>
(Art. 16), <strong>Löschung</strong> (Art. 17), <strong>Einschränkung der Verarbeitung</strong>
(Art. 18) sowie <strong>Datenportabilität</strong> (Art. 20). Erteilte Einwilligungen
kannst du jederzeit mit Wirkung für die Zukunft widerrufen (Art. 7 Abs. 3 DSGVO).
Zur Ausübung deiner Rechte wende dich per E-Mail an
<a href="mailto:mail@motocamp.de" style="${S.a}">mail@motocamp.de</a>.<br><br>
Du hast außerdem das Recht, bei der zuständigen Datenschutz-Aufsichtsbehörde
Beschwerde einzulegen:<br>
<strong>Bayerisches Landesamt für Datenschutzaufsicht (BayLDA)</strong><br>
Promenade 27, 91522 Ansbach<br>
<a href="https://www.lda.bayern.de" target="_blank" rel="noopener"
style="${S.a}">www.lda.bayern.de</a>
</p>`)}
${sec('Speicherdauer', `
<p style="${S.p}">
Deine Daten werden gelöscht, sobald du deinen Account löschst. Server-Logs
werden nach 30 Tagen automatisch gelöscht. Öffentlich gepostete Inhalte
(Forenbeiträge, Giftköder-Meldungen) bleiben nach Account-Löschung anonymisiert
erhalten, sofern sie für die Community relevant sind.
</p>`)}
<p style="font-size:var(--text-xs);color:var(--c-text-muted);margin:0">
Stand: April 2026
</p>
</div>
`;
}
function refresh() {}
return { init, refresh };
})();