diff --git a/.env.example b/.env.example index 351b3110..6226e36f 100644 --- a/.env.example +++ b/.env.example @@ -188,9 +188,13 @@ CONTACT_EMAIL_PRESSEKONTO= CONTACT_EMAIL_PRESSEECHO= CONTACT_EMAIL_BUSINESSPORTAL= -# DSA-Kontaktpunkt/Melde-Postfach je Brand (Impressum + /melden; Empfehlung: -# melden@… oder legal@…). Ohne Wert fällt die Anzeige auf CONTACT_EMAIL_* -# bzw. das Betreiber-Postfach zurück. [EXTERN: echte Adressen eintragen] +# Haupt-E-Mail für alle rechtlichen Anliegen (Impressum, Datenschutz, AGB, +# Meldeverfahren, Richtlinien) — auf allen drei Domains identisch. +# Ohne Wert gilt der Default info@pressekonto.com (config/legal.php). +LEGAL_CONTACT_EMAIL= + +# Optionales separates DSA-Melde-Postfach je Brand (Impressum + /melden). +# Ohne Wert fällt die Anzeige auf LEGAL_CONTACT_EMAIL zurück. REPORT_EMAIL_PRESSEKONTO= REPORT_EMAIL_PRESSEECHO= REPORT_EMAIL_BUSINESSPORTAL= diff --git a/config/legal.php b/config/legal.php index 703853ad..d3c77648 100644 --- a/config/legal.php +++ b/config/legal.php @@ -17,4 +17,18 @@ return [ 'agb_version' => '0.6', 'agb_effective_from' => '2026-07-03', + /* + |-------------------------------------------------------------------------- + | Zentrale Rechts-E-Mail + |-------------------------------------------------------------------------- + | + | Haupt-E-Mail für alle rechtlichen Anliegen (Impressum, Datenschutz, + | AGB, Meldeverfahren, Richtlinien) — auf allen drei Domains identisch. + | Support-/Redaktionskontakt bleibt je Brand konfigurierbar + | (config/domains.php, brand.contact_email). + | + */ + + 'contact_email' => env('LEGAL_CONTACT_EMAIL', 'info@pressekonto.com'), + ]; diff --git a/dev/release/entwicklungsplan-release.md b/dev/release/entwicklungsplan-release.md index 7b3bb208..cd951f76 100644 --- a/dev/release/entwicklungsplan-release.md +++ b/dev/release/entwicklungsplan-release.md @@ -16,9 +16,10 @@ R2.2+R2.3 erledigt: Hub-Landing komplett ueberarbeitet (datengetriebenes Tarif-G **Naechste Schritte:** R2.4 (Sitemap/robots/meta) ohne User-Input machbar; R3 Inhalte + R1.2 Stripe-Live [EXTERN]. **03.07. abends — Hub-Inhalts-Audit + Rechtstexte (Entscheidung E2: B2B-only!):** Alle Hub-/Web-Inhalte gegen den echten Funktionsstand geprueft und korrigiert (Startseiten-Claims, FAQ, Hilfe, Veroeffentlichen, API-Doku inkl. OpenAPI); kontakt/ueber-uns zurueckgebaut; Rechtstexte aus docs/legal eingebaut (Impressum echt, AGB v0.6, /richtlinien, /melden); Widerrufs-UI raus (E2), Submit-Modal auf Archiv-Hinweis (T2neu); Preise nach Leistungsbeschreibung v0.2. Details in R3.0–R3.2. **03.07. spaet — Rechtstexte komplett + T1neu + Mail-CI (TAGESABSCHLUSS, Suite: 935 gruen):** Datenschutzerklaerung v0.3 host-aware eingebaut (Hub-/Spoke-Bausteine, Magic-Link 15 Min., Stripe Payments Europe); Cookie-Seite zurueckgebaut (301 -> /datenschutz, Cookies stehen in Abschnitt 4, kein Banner). T1neu umgesetzt: Unternehmer-Pflicht-Checkbox im Buchungs-Modal, protokolliert in `booking_confirmations` (Timestamp/IP/AGB-Version aus `config/legal.php`), CheckoutController erzwingt zeitnahe Bestaetigung serverseitig. System-Mails auf zentrales pressekonto-CI-Layout umgestellt (components/emails/layout, inkl. Framework-Auth-Mails via toMailUsing, EmailBrandingTest). +**06.07. — Zentrale Rechts-E-Mail (User-Entscheidung):** `info@pressekonto.com` ist die Haupt-E-Mail fuer alle rechtlichen Anliegen; zentral in `config/legal.php` (`LEGAL_CONTACT_EMAIL`), alle fuenf Rechtsseiten (Impressum, AGB, Datenschutz, /melden, /richtlinien) nutzen sie domainuebergreifend. Support-/Redaktionskontakt bleibt je Brand (CONTACT_EMAIL_*), REPORT_EMAIL_* ist nur noch optionales separates DSA-Postfach. Live-Domain bestaetigt .com (Deployment-Checkliste), nicht .de. **Wiedereinstieg / naechste Schritte:** 1. **Klaerungsliste Rechtstexte abarbeiten** (User-Antworten offen, siehe Chat 03.07.): Umami installieren oder Datenschutz-Abschnitt 5 vorerst raus · Log-Frist 14 Tage + Backups 4 Wochen mit Server-Konfig abgleichen · Stripe-Entitaet im Dashboard verifizieren · Medienprivileg-Zitierung praezisieren, falls anwaltlich bestaetigt · AGB par. 1 (3): eigene /portale-Seite oder Link auf Hub-#familie ok? · O-B Depublikations-Preisdarstellung bestaetigen. -2. **[EXTERN]:** REPORT_EMAIL_*/CONTACT_EMAIL_*-Postfaecher anlegen (melden@/legal@) · R1.2 Stripe-Live · R1.4 Preisfreigabe · R5.4 Favicons · anwaltliche Freigabe AGB v0.6/Datenschutz v0.3. +2. **[EXTERN]:** Postfach `info@pressekonto.com` anlegen (Haupt-Rechts-Mail, 06.07.); CONTACT_EMAIL_*-Support-Postfaecher je Brand; REPORT_EMAIL_* optional · R1.2 Stripe-Live · R1.4 Preisfreigabe · R5.4 Favicons · anwaltliche Freigabe AGB v0.6/Datenschutz v0.3. 3. **Backlog Rechtstexte-System (R3.1-Rest):** legal_documents-Versionierung + agb_version_id an Buchungen (E3; config/legal.php ist die Uebergangsloesung) · rejection_categories-DB fuer /richtlinien · T10 eigenstaendige DSA-Meldeformulare mit URL-Feld + Vorgangsnummer · T12 Depublikations-Checkout · T13 Melde-Button prominenter an der PM. 4. **Dann:** R6.1 manuelle QA-Checkliste, R6.3 Staging-Rehearsal, R6.4 Go-Live-Kette, R6.5 Git-Hygiene (Branch fix/zeitzone-europe-berlin liegt ~125 Commits vor main — mergen, sobald freigegeben). Offen bleibt ausserdem die User-Entscheidung zu den Legacy-SQL-Dumps in `dev/migration 2026/sql/` (enttracken vor Repo-Sharing). diff --git a/resources/views/livewire/customer/bookings.blade.php b/resources/views/livewire/customer/bookings.blade.php index 4a66d58e..36a70484 100644 --- a/resources/views/livewire/customer/bookings.blade.php +++ b/resources/views/livewire/customer/bookings.blade.php @@ -637,7 +637,7 @@ new #[Layout('components.layouts.app'), Title('Buchungen & Add-ons')] class exte
- {{ __('Mehr als 60 Pressemitteilungen pro Monat, mehrere Teams oder Sonderkonditionen? Enterprise-Konditionen erhalten Sie auf Anfrage über den Support. Inklusive KI-Prüfung und Veröffentlichung.info@pressekonto.com') }} + {{ __('Mehr als 60 Pressemitteilungen pro Monat, mehrere Teams oder Sonderkonditionen? Enterprise-Konditionen erhalten Sie auf Anfrage unter info@pressekonto.com — inklusive Inhaltsprüfung und Veröffentlichung.') }}
diff --git a/resources/views/web/agb.blade.php b/resources/views/web/agb.blade.php index 4e6b72dc..e4319fbe 100644 --- a/resources/views/web/agb.blade.php +++ b/resources/views/web/agb.blade.php @@ -11,7 +11,7 @@ $isHub = str_contains($host, 'pressekonto'); $brandKey = $isHub ? 'pressekonto' : (str_contains($host, 'presseecho') ? 'presseecho' : 'businessportal24'); $brand = config('domains.domains.'.$brandKey.'.brand', []); - $contactEmail = $brand['contact_email'] ?? 'info@businessportal24.com'; + $contactEmail = (string) config('legal.contact_email'); $hubUrl = rtrim((string) config('domains.domain_portal_url', config('app.url')), '/'); $hubLabel = str_replace(['https://', 'http://'], '', $hubUrl); diff --git a/resources/views/web/datenschutz.blade.php b/resources/views/web/datenschutz.blade.php index c5563f45..2fa5d0e5 100644 --- a/resources/views/web/datenschutz.blade.php +++ b/resources/views/web/datenschutz.blade.php @@ -13,7 +13,7 @@ $brandKey = $isHub ? 'pressekonto' : (str_contains($host, 'presseecho') ? 'presseecho' : 'businessportal24'); $brand = config('domains.domains.'.$brandKey.'.brand', []); $portalName = ($brand['name'] ?? '').($brand['accent'] ?? ''); - $contactEmail = $brand['contact_email'] ?? 'info@businessportal24.com'; + $contactEmail = (string) config('legal.contact_email'); $reportEmail = $brand['report_email'] ?? $contactEmail; $hubUrl = rtrim((string) config('domains.domain_portal_url', config('app.url')), '/'); $hubLabel = str_replace(['https://', 'http://'], '', $hubUrl); diff --git a/resources/views/web/impressum.blade.php b/resources/views/web/impressum.blade.php index 6bf88916..4610256e 100644 --- a/resources/views/web/impressum.blade.php +++ b/resources/views/web/impressum.blade.php @@ -11,7 +11,7 @@ $brandKey = $isHub ? 'pressekonto' : (str_contains($host, 'presseecho') ? 'presseecho' : 'businessportal24'); $brand = config('domains.domains.'.$brandKey.'.brand', []); $portalName = ($brand['name'] ?? '').($brand['accent'] ?? ''); - $contactEmail = $brand['contact_email'] ?? 'info@businessportal24.com'; + $contactEmail = (string) config('legal.contact_email'); $reportEmail = $brand['report_email'] ?? $contactEmail; $hubUrl = rtrim((string) config('domains.domain_portal_url', config('app.url')), '/'); @endphp @@ -32,7 +32,7 @@ Deutschland
- E-Mail: info@businessportal24.com
+ E-Mail: {{ $contactEmail }}
Telefon: +49 5206 7076721 (kein telefonischer Support)