recht: Meldeverfahren v2 Phasen 5+7 — DSGVO-Strukturformular, 10-€-Checkout mit KI-Vorprüfung, Triage & Panel-Modal
Phase 7 (Spur D, E2 revidiert): KI-Vorprüfung VOR der Zahlung im Modal — rot lehnt ohne Zahlung ab, gelb/grün führt zum Stripe-Checkout (SinglePurchaseType::Change, 10 € netto), nach Zahlungseingang übernimmt der Webhook die geprüfte Fassung sofort (applyPaid: Snapshot, Sperre, Verlauf). Nur einmal je PM; Obergrenze legal.change_max_distance_percent (50 %) verhindert die verdeckte Selbst-Depublizierung. Phase 5 (Spur B): strukturiertes Schwärzungsformular mit Pflicht-Vorschau im verifizierten Web-Bereich UND als Modal im Kunden-Panel; Admin-Editor wird aus payload.redaction vorbefüllt. Umsetzungsmail LegalRequestExecuted an Antragsteller, Bestätigungsmail PressReleaseChangeApplied (Spur A/D, neuer abbestellbarer Typ press_release_corrected). Außerdem: - Re-Sync-Sperre + Sitemap-Invalidierung fest in depublish() verankert (Lücke im bezahlten Webhook-Pfad geschlossen) - Öffentliche „Rechtliches"-Seite als zweistufige Triage: primär der Portal-Anmeldelink, Formular nur Fallback mit Identifizierungs-Hinweis; Store auf report/dsgvo/personal_rights gehärtet - Panel-Button „Ändern/Melden" öffnet Anliegen-Modal (4 Spuren) statt des Web-Formulars - Pressekontakt-Fallback für Legacy-Bestände (30k PMs ohne Verknüpfung): Detailseite + pressContactEmail() nutzen PM-Kontakt → Firmen-Kontakt → Firmendaten - Korrektur-Gate entity-fest (Editor-Normalisierung zählt nicht als Änderung), toEditorHtml() in Admin-Edit + Korrektur-Panel, Wochenlimit-Hinweis in Text und Bremsen-Meldung Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
b4b2e013d6
commit
9afbedddeb
40 changed files with 2507 additions and 169 deletions
|
|
@ -447,6 +447,28 @@ return [
|
|||
'concern_note' => 'Kostenlose Anliegen setzen wir nach Prüfung direkt um. Bei kostenpflichtigen Anliegen (Depublizierung, inhaltliche Änderung) erhalten Sie vor der Umsetzung eine Zahlungsaufforderung — es entstehen keine Kosten ohne Ihre Bestätigung.',
|
||||
'concern_submit' => 'Anliegen absenden',
|
||||
'flash_concern_received' => 'Vielen Dank. Ihr Anliegen ist unter der Vorgangsnummer :reference eingegangen — Sie erhalten eine Eingangsbestätigung per E-Mail an die Pressekontaktadresse.',
|
||||
'dsgvo_terms_label' => 'Zu entfernende Angaben (ein Begriff pro Zeile)',
|
||||
'dsgvo_terms_placeholder' => "Max Mustermann\nMustermann\nmax@firma.example\n+49 123 456789",
|
||||
'dsgvo_terms_hint' => 'Bitte auch Schreibvarianten angeben (z. B. Nachname allein, Genitiv „Mustermanns"). Ersetzt wird nur ganzwörtlich.',
|
||||
'dsgvo_detach_contacts' => 'Hinterlegte Pressekontakt-Daten von dieser Mitteilung entfernen',
|
||||
'dsgvo_remove_images' => 'Bilder mit Personenbezug entfernen (unser Team wählt die betroffenen Bilder aus)',
|
||||
'dsgvo_note' => 'Es handelt sich um eine Schwärzung/Entfernung in dieser Veröffentlichung. Die Umsetzung erfolgt nach Prüfung durch unser Team; Kopien in Suchmaschinen oder Drittarchiven können zeitweise weiter verfügbar sein.',
|
||||
'dsgvo_validation_empty' => 'Bitte mindestens einen Begriff angeben oder eine der Entfernungs-Optionen auswählen.',
|
||||
'dsgvo_validation_no_hits' => 'Die angegebenen Begriffe kommen in der Mitteilung nicht vor. Bitte prüfen Sie die Schreibweise (Begriffe werden ganzwörtlich gesucht).',
|
||||
'dsgvo_preview_button' => 'Vorschau der Schwärzung anzeigen',
|
||||
'dsgvo_preview_title' => 'Vorschau: So sieht die Mitteilung nach der Schwärzung aus',
|
||||
'dsgvo_preview_hits' => 'Eine Stelle wird ersetzt.|:hits Stellen werden ersetzt.',
|
||||
'dsgvo_preview_field_hits' => 'eine Ersetzung|:hits Ersetzungen',
|
||||
'dsgvo_preview_no_text_hits' => 'Keine Text-Ersetzungen — Ihre Anfrage betrifft nur Kontaktdaten bzw. Bilder.',
|
||||
'dsgvo_preview_contacts' => 'Pressekontakt-Daten werden entfernt.',
|
||||
'dsgvo_preview_images' => 'Bilder mit Personenbezug werden nach Prüfung entfernt.',
|
||||
'dsgvo_preview_confirm' => 'Verbindlich einreichen',
|
||||
'dsgvo_preview_edit_hint' => 'Nicht korrekt? Passen Sie die Begriffe unten an und rufen Sie die Vorschau erneut auf.',
|
||||
'dsgvo_field_title' => 'Titel',
|
||||
'dsgvo_field_subtitle' => 'Untertitel',
|
||||
'dsgvo_field_text' => 'Text',
|
||||
'dsgvo_field_boilerplate' => 'Unternehmens-Boilerplate',
|
||||
'dsgvo_field_keywords' => 'Keywords',
|
||||
],
|
||||
|
||||
'cancellation' => [
|
||||
|
|
|
|||
|
|
@ -446,6 +446,28 @@ return [
|
|||
'concern_note' => 'Free requests are implemented directly after review. For paid requests (depublication, content change) you will receive a payment request before implementation — no costs arise without your confirmation.',
|
||||
'concern_submit' => 'Submit request',
|
||||
'flash_concern_received' => 'Thank you. Your request has been received under case number :reference — you will receive a confirmation of receipt by email to the press contact address.',
|
||||
'dsgvo_terms_label' => 'Details to be removed (one term per line)',
|
||||
'dsgvo_terms_placeholder' => "Max Mustermann\nMustermann\nmax@company.example\n+49 123 456789",
|
||||
'dsgvo_terms_hint' => 'Please also include spelling variants (e.g. surname alone, genitive forms). Replacement is whole-word only.',
|
||||
'dsgvo_detach_contacts' => 'Remove the stored press contact details from this release',
|
||||
'dsgvo_remove_images' => 'Remove images containing personal data (our team selects the affected images)',
|
||||
'dsgvo_note' => 'This is a redaction/removal within this publication. Implementation follows a review by our team; copies in search engines or third-party archives may remain available for some time.',
|
||||
'dsgvo_validation_empty' => 'Please provide at least one term or select one of the removal options.',
|
||||
'dsgvo_validation_no_hits' => 'The terms you provided do not appear in the release. Please check the spelling (terms are matched whole-word).',
|
||||
'dsgvo_preview_button' => 'Show redaction preview',
|
||||
'dsgvo_preview_title' => 'Preview: how the release will look after redaction',
|
||||
'dsgvo_preview_hits' => 'One occurrence will be replaced.|:hits occurrences will be replaced.',
|
||||
'dsgvo_preview_field_hits' => 'one replacement|:hits replacements',
|
||||
'dsgvo_preview_no_text_hits' => 'No text replacements — your request only concerns contact details or images.',
|
||||
'dsgvo_preview_contacts' => 'Press contact details will be removed.',
|
||||
'dsgvo_preview_images' => 'Images containing personal data will be removed after review.',
|
||||
'dsgvo_preview_confirm' => 'Submit bindingly',
|
||||
'dsgvo_preview_edit_hint' => 'Not correct? Adjust the terms below and open the preview again.',
|
||||
'dsgvo_field_title' => 'Title',
|
||||
'dsgvo_field_subtitle' => 'Subtitle',
|
||||
'dsgvo_field_text' => 'Text',
|
||||
'dsgvo_field_boilerplate' => 'Company boilerplate',
|
||||
'dsgvo_field_keywords' => 'Keywords',
|
||||
],
|
||||
|
||||
'cancellation' => [
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue