presseportale/database/seeders/LegalDocumentSeeder.php
Kevin Adametz 9f44546082 web/admin/pdf: gemeinsame Bildnachweis-Auflösung, Detailfenster am Artikelbild, Bestätigungsstand in Kunden- und Adminansicht, Wortwahl „automatisierte Prüfung" (Bildkennzeichnung Block D)
- App\Support\ImageCredit: Foto/Quelle-Zeile, KI-Hinweis mit Herkunft, Verantwortlich-Zeile nur mit Protokoll, sichere Links; PDF-Zeilen mit Bestätigungskennung
- Artikelseite: Overlay (eigenes i-Zeichen, Alpine ohne Plugin, Bottom-Sheet auf Mobil) mit Nachweis, Lizenz, Quelle, KI-Hinweis, Verantwortlich-Zeile, „Bild melden"
- Richtlinien 0.2: Prüfung als automatisiert beschrieben, Abschnitt „Bilder" (Decision-Update 3.5); Taglines, Suche, Newsrooms, Startseiten-CTA, Mails ohne „qualitätsgeprüft"
- Cache-Invalidierung bei Bildwechsel an veröffentlichten Meldungen; PHPStan-Baseline für das Resource bereinigt

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-22 09:44:34 +00:00

34 lines
1.5 KiB
PHP

<?php
namespace Database\Seeders;
use App\Models\LegalDocument;
use Illuminate\Database\Seeder;
/**
* Aktuelle Rechtstext-Fassungen (Stand 03.07.2026, Quelle docs/legal).
* Neue Fassungen werden als neue Zeilen ergänzt (nie überschreiben) —
* updateOrCreate greift über [type, version], damit der Seeder idempotent
* bleibt, ohne bestehende Fassungen zu verändern.
*/
class LegalDocumentSeeder extends Seeder
{
public function run(): void
{
$documents = [
[LegalDocument::TYPE_AGB, '0.6', '2026-07-03', 'B2B-Fassung (E2), anwaltsreif; externe Vorprüfung 11/11 bestätigt'],
[LegalDocument::TYPE_DATENSCHUTZ, '0.3', '2026-07-03', 'B2B-angepasst; host-aware Bausteine Hub/Spokes'],
[LegalDocument::TYPE_RICHTLINIEN, '0.1', '2026-07-03', 'Rahmentext; Kategorien aus rejection_categories'],
[LegalDocument::TYPE_RICHTLINIEN, '0.2', '2026-09-22', 'Prüfung als „automatisiert“ beschrieben, Abschnitt „Bilder“ (Bildkennzeichnung D.6, Decision-Update 3.5)'],
[LegalDocument::TYPE_MELDEVERFAHREN, '0.1', '2026-07-03', 'Drei Wege: DSA / DSGVO / Depublikation'],
[LegalDocument::TYPE_IMPRESSUM, '0.1', '2026-07-03', 'DDG-korrigiert, Verbund-Absatz, DSA-Kontaktpunkt'],
];
foreach ($documents as [$type, $version, $effectiveFrom, $note]) {
LegalDocument::query()->updateOrCreate(
['type' => $type, 'version' => $version],
['effective_from' => $effectiveFrom, 'note' => $note],
);
}
}
}