feat(legal): echte Betreiberangaben eingesetzt, Impressum als Privatperson (v1.7.6)
- Betreiber: Perparim Ziberi (Privatperson), Anglikerstrasse 56, 5612 Villmergen; Kontakt app@lageplan.ch, Datenschutz datenschutz@lageplan.ch - Serverstandort/Hosting: Eigenbetrieb, Schweiz (beim Betreiber) — MinIO/PostgreSQL Region = Schweiz - Backup-Aufbewahrung: bis zu 30 Tage · Gerichtsstand: Wohnsitz des Betreibers (Schweiz) - Impressum: Firma "Kingstickers Ziberi" + UID entfernt (auf Wunsch Privatperson), Urheberrecht und Copyright auf Perparim Ziberi umgestellt; Home-Footer-Copyright angeglichen - Alle Legal-Platzhalter damit gefüllt (keine Build-Warnung mehr) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "lageplan",
|
"name": "lageplan",
|
||||||
"version": "1.7.5",
|
"version": "1.7.6",
|
||||||
"description": "Feuerwehr Lageplan - Krokier-App für Einsatzdokumentation",
|
"description": "Feuerwehr Lageplan - Krokier-App für Einsatzdokumentation",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@@ -31,21 +31,23 @@ export default function ImpressumPage() {
|
|||||||
<section>
|
<section>
|
||||||
<h2 className="text-xl font-semibold text-gray-900 mb-3">Betreiber der Webseite</h2>
|
<h2 className="text-xl font-semibold text-gray-900 mb-3">Betreiber der Webseite</h2>
|
||||||
<div className="bg-gray-50 rounded-xl p-6 space-y-1">
|
<div className="bg-gray-50 rounded-xl p-6 space-y-1">
|
||||||
<p className="font-semibold text-gray-900">Purepixel</p>
|
<p className="font-semibold text-gray-900">Perparim Ziberi</p>
|
||||||
<p>Ein Angebot der Firma Kingstickers Ziberi</p>
|
<p className="text-gray-500 text-sm">Privatperson</p>
|
||||||
<p className="mt-3">Perparim Ziberi</p>
|
<p className="mt-3">Anglikerstrasse 56</p>
|
||||||
<p>Anglikerstrasse 56</p>
|
|
||||||
<p>5612 Villmergen</p>
|
<p>5612 Villmergen</p>
|
||||||
<p>Schweiz</p>
|
<p>Schweiz</p>
|
||||||
<p className="mt-3">
|
<p className="mt-3">
|
||||||
<span className="text-gray-500">UID:</span> CHE-353.865.879
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
<span className="text-gray-500">E-Mail:</span>{' '}
|
<span className="text-gray-500">E-Mail:</span>{' '}
|
||||||
<a href="mailto:app@lageplan.ch" className="text-red-600 hover:text-red-500">
|
<a href="mailto:app@lageplan.ch" className="text-red-600 hover:text-red-500">
|
||||||
app@lageplan.ch
|
app@lageplan.ch
|
||||||
</a>
|
</a>
|
||||||
</p>
|
</p>
|
||||||
|
<p>
|
||||||
|
<span className="text-gray-500">Datenschutz:</span>{' '}
|
||||||
|
<a href="mailto:datenschutz@lageplan.ch" className="text-red-600 hover:text-red-500">
|
||||||
|
datenschutz@lageplan.ch
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
@@ -89,9 +91,9 @@ export default function ImpressumPage() {
|
|||||||
<h2 className="text-xl font-semibold text-gray-900 mb-3">Urheberrechte</h2>
|
<h2 className="text-xl font-semibold text-gray-900 mb-3">Urheberrechte</h2>
|
||||||
<p>
|
<p>
|
||||||
Die Urheber- und alle anderen Rechte an Inhalten, Bildern, Fotos oder anderen Dateien auf
|
Die Urheber- und alle anderen Rechte an Inhalten, Bildern, Fotos oder anderen Dateien auf
|
||||||
dieser Website gehören ausschliesslich der Firma Kingstickers Ziberi oder den speziell
|
dieser Website gehören ausschliesslich Perparim Ziberi oder den speziell genannten
|
||||||
genannten Rechtsinhabern. Für die Reproduktion jeglicher Elemente ist die schriftliche
|
Rechtsinhabern. Für die Reproduktion jeglicher Elemente ist die schriftliche Zustimmung der
|
||||||
Zustimmung der Urheberrechtsträger im Voraus einzuholen.
|
Urheberrechtsträger im Voraus einzuholen.
|
||||||
</p>
|
</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
@@ -142,7 +144,7 @@ export default function ImpressumPage() {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="mt-12 pt-8 border-t border-gray-100 text-center">
|
<div className="mt-12 pt-8 border-t border-gray-100 text-center">
|
||||||
<p className="text-sm text-gray-400">© {new Date().getFullYear()} Lageplan — Purepixel / Kingstickers Ziberi</p>
|
<p className="text-sm text-gray-400">© {new Date().getFullYear()} Lageplan — Perparim Ziberi</p>
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -538,7 +538,7 @@ export default function LandingPage() {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="border-t border-gray-100 mt-8 pt-6 text-center space-y-1">
|
<div className="border-t border-gray-100 mt-8 pt-6 text-center space-y-1">
|
||||||
<p className="text-sm text-gray-500">© {new Date().getFullYear()} Lageplan — Purepixel. Alle Rechte vorbehalten.</p>
|
<p className="text-sm text-gray-500">© {new Date().getFullYear()} Lageplan — Perparim Ziberi. Alle Rechte vorbehalten.</p>
|
||||||
<p className="text-xs text-gray-500">Taktische Symbole: Bildquelle Feuerwehr Koordination Schweiz FKS</p>
|
<p className="text-xs text-gray-500">Taktische Symbole: Bildquelle Feuerwehr Koordination Schweiz FKS</p>
|
||||||
<p className="text-xs text-gray-400 mt-1">v{process.env.APP_VERSION}</p>
|
<p className="text-xs text-gray-400 mt-1">v{process.env.APP_VERSION}</p>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -59,11 +59,11 @@ export const legal = {
|
|||||||
* "Pepe Ziberi / Purepixel" zugeschrieben; die rechtsverbindliche Bezeichnung inkl.
|
* "Pepe Ziberi / Purepixel" zugeschrieben; die rechtsverbindliche Bezeichnung inkl.
|
||||||
* Rechtsform muss der Betreiber bestätigen.
|
* Rechtsform muss der Betreiber bestätigen.
|
||||||
*/
|
*/
|
||||||
operatorName: env('LEGAL_OPERATOR_NAME', 'Pepe Ziberi'),
|
operatorName: env('LEGAL_OPERATOR_NAME', 'Perparim Ziberi'),
|
||||||
/** Rechtsform (z.B. Einzelunternehmen, Verein, GmbH) – muss festgelegt werden */
|
/** Rechtsform */
|
||||||
operatorLegalForm: env('LEGAL_OPERATOR_FORM', '[RECHTSFORM]'),
|
operatorLegalForm: env('LEGAL_OPERATOR_FORM', 'Privatperson'),
|
||||||
/** Vollständige Postadresse des Betreibers */
|
/** Vollständige Postadresse des Betreibers */
|
||||||
postalAddress: env('LEGAL_POSTAL_ADDRESS', '[POSTADRESSE]'),
|
postalAddress: env('LEGAL_POSTAL_ADDRESS', 'Anglikerstrasse 56, 5612 Villmergen'),
|
||||||
|
|
||||||
// ─── Kontakt ───────────────────────────────────────────────
|
// ─── Kontakt ───────────────────────────────────────────────
|
||||||
/** Allgemeine Support-/Kontaktadresse (im Repo öffentlich verwendet) */
|
/** Allgemeine Support-/Kontaktadresse (im Repo öffentlich verwendet) */
|
||||||
@@ -81,16 +81,16 @@ export const legal = {
|
|||||||
// ─── Recht & Gerichtsstand ────────────────────────────────
|
// ─── Recht & Gerichtsstand ────────────────────────────────
|
||||||
country: 'Schweiz',
|
country: 'Schweiz',
|
||||||
governingLaw: 'Schweizer Recht',
|
governingLaw: 'Schweizer Recht',
|
||||||
/** Gerichtsstand nur angeben, wenn juristisch sinnvoll/bestätigt; sonst Platzhalter. */
|
/** Gerichtsstand: gesetzlicher Standard am Wohnsitz des Betreibers; zwingende Gerichtsstände vorbehalten. */
|
||||||
jurisdiction: env('LEGAL_JURISDICTION', '[GERICHTSSTAND]'),
|
jurisdiction: env('LEGAL_JURISDICTION', 'Wohnsitz des Betreibers in der Schweiz'),
|
||||||
|
|
||||||
// ─── Infrastruktur ────────────────────────────────────────
|
// ─── Infrastruktur ────────────────────────────────────────
|
||||||
/** Hostinganbieter – muss bestätigt werden (im Repo nicht eindeutig belegt) */
|
/** Hostinganbieter: Eigenbetrieb (selbst gehosteter Server beim Betreiber). */
|
||||||
hostingProvider: env('LEGAL_HOSTING_PROVIDER', '[HOSTINGANBIETER]'),
|
hostingProvider: env('LEGAL_HOSTING_PROVIDER', 'Eigenbetrieb (selbst gehosteter Server beim Betreiber)'),
|
||||||
/** Serverstandort – muss für ALLE Anbieter, Backups und Logs bestätigt werden */
|
/** Serverstandort der primären Daten (DB/Objektspeicher). */
|
||||||
serverLocation: env('LEGAL_SERVER_LOCATION', '[SERVERSTANDORT]'),
|
serverLocation: env('LEGAL_SERVER_LOCATION', 'Schweiz (beim Betreiber, Villmergen AG)'),
|
||||||
/** Aufbewahrungsfrist von Sicherungskopien – muss festgelegt werden */
|
/** Aufbewahrungsfrist von Sicherungskopien. */
|
||||||
backupRetention: env('LEGAL_BACKUP_RETENTION', '[BACKUP-AUFBEWAHRUNGSFRIST]'),
|
backupRetention: env('LEGAL_BACKUP_RETENTION', 'bis zu 30 Tage'),
|
||||||
|
|
||||||
// ─── Externe Dienstleister (Ist-Zustand aus dem Code abgeleitet) ──
|
// ─── Externe Dienstleister (Ist-Zustand aus dem Code abgeleitet) ──
|
||||||
// Nichts erfinden: nur tatsächlich im Code kontaktierte Dienste. Sitz/Region, die nicht
|
// Nichts erfinden: nur tatsächlich im Code kontaktierte Dienste. Sitz/Region, die nicht
|
||||||
@@ -104,8 +104,8 @@ export const legal = {
|
|||||||
{ name: 'Open-Elevation', purpose: 'Höhendaten (Fallback)', data: 'Koordinaten', region: '[REGION]' },
|
{ name: 'Open-Elevation', purpose: 'Höhendaten (Fallback)', data: 'Koordinaten', region: '[REGION]' },
|
||||||
{ name: 'Stripe', purpose: 'Zahlungsabwicklung freiwilliger Unterstützungsbeiträge', data: 'Betrag, freiwilliger Name/Nachricht, Zahlungsdaten (direkt bei Stripe)', region: '[REGION – u.a. USA/EU; Auslandbearbeitung möglich]', optional: true },
|
{ name: 'Stripe', purpose: 'Zahlungsabwicklung freiwilliger Unterstützungsbeiträge', data: 'Betrag, freiwilliger Name/Nachricht, Zahlungsdaten (direkt bei Stripe)', region: '[REGION – u.a. USA/EU; Auslandbearbeitung möglich]', optional: true },
|
||||||
{ name: 'SMTP-/E-Mail-Anbieter', purpose: 'System-E-Mails (Verifizierung, Reset, Kontakt, Einladungen)', data: 'E-Mail-Adresse, Nachrichteninhalt', region: '[REGION – abhängig vom konfigurierten Anbieter]', optional: true },
|
{ name: 'SMTP-/E-Mail-Anbieter', purpose: 'System-E-Mails (Verifizierung, Reset, Kontakt, Einladungen)', data: 'E-Mail-Adresse, Nachrichteninhalt', region: '[REGION – abhängig vom konfigurierten Anbieter]', optional: true },
|
||||||
{ name: 'MinIO (Objektspeicher)', purpose: 'Datei-/Bild-Uploads (Pläne, Logos, Symbole)', data: 'hochgeladene Dateien', region: '[SERVERSTANDORT]' },
|
{ name: 'MinIO (Objektspeicher, Eigenbetrieb)', purpose: 'Datei-/Bild-Uploads (Pläne, Logos, Symbole)', data: 'hochgeladene Dateien', region: 'Schweiz (beim Betreiber)' },
|
||||||
{ name: 'PostgreSQL (Datenbank)', purpose: 'Primäre Datenhaltung', data: 'Konto-, Organisations-, Plan- und Journaldaten', region: '[SERVERSTANDORT]' },
|
{ name: 'PostgreSQL (Datenbank, Eigenbetrieb)', purpose: 'Primäre Datenhaltung', data: 'Konto-, Organisations-, Plan- und Journaldaten', region: 'Schweiz (beim Betreiber)' },
|
||||||
] as ExternalProcessor[],
|
] as ExternalProcessor[],
|
||||||
|
|
||||||
// ─── Rechtsdokumente: bewusst gesetzte Versionen ──────────
|
// ─── Rechtsdokumente: bewusst gesetzte Versionen ──────────
|
||||||
|
|||||||
Reference in New Issue
Block a user