Ablehnungskategorien live aus der DB (rejection_categories)
/richtlinien rendert jetzt alle aktiven Kategorien aus der neuen rejection_categories-Tabelle (stabiler code als Anker, public_label/desc, optionale Beispiele) statt der statischen K1-K6-Liste. Kategorien werden nie geloescht, nur deaktiviert; neue Kategorien erscheinen ohne Textaenderung und ohne neue AGB-Version (AGB par. 7 Abs. 3 verweist nicht abschliessend). Seeder legt K1-K6 idempotent an; Versionszeile der Seite kommt aus legal_documents. Go-Live-Checkliste um beide Seeder ergaenzt. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
196f83a377
commit
c54c6943b7
8 changed files with 213 additions and 18 deletions
|
|
@ -4,22 +4,20 @@
|
|||
@section('meta_description', 'Veröffentlichungsrichtlinien für Pressemitteilungen auf presseecho.de und businessportal24.com: Prüfverfahren, Anforderungen und Ablehnungskategorien.')
|
||||
|
||||
@php
|
||||
// Rechtstexte-Architektur E3: Rahmentext v0.1 (03.07.2026). Die
|
||||
// Ablehnungskategorien sind hier zum Launch statisch (K1–K6); das
|
||||
// rejection_categories-System (live aus der DB) ist R3.1-Backlog.
|
||||
// Rechtstexte-Architektur E3: statischer Rahmentext + dynamische
|
||||
// Kategorienliste aus rejection_categories — neue/angepasste Kategorien
|
||||
// erscheinen ohne Textänderung. Version/Stand aus legal_documents.
|
||||
$host = request()->getHost();
|
||||
$isHub = str_contains($host, 'pressekonto');
|
||||
$brandKey = $isHub ? 'pressekonto' : (str_contains($host, 'presseecho') ? 'presseecho' : 'businessportal24');
|
||||
$contactEmail = (string) config('legal.contact_email');
|
||||
|
||||
$rejectionCategories = [
|
||||
['code' => 'K1', 'label' => 'Rechtswidrige Inhalte', 'desc' => 'Inhalte, die gegen geltendes Recht verstoßen — etwa strafbare Inhalte, Verstöße gegen das Wettbewerbs- oder Heilmittelwerberecht, Angebote verbotener Produkte oder Dienstleistungen.'],
|
||||
['code' => 'K2', 'label' => 'Explizite oder jugendgefährdende Inhalte', 'desc' => 'Pornografische, gewaltverherrlichende oder anderweitig jugendgefährdende Darstellungen in Text oder Bild.'],
|
||||
['code' => 'K3', 'label' => 'Hass und Diskriminierung', 'desc' => 'Inhalte, die Menschen wegen ihrer Herkunft, Religion, Geschlechtsidentität, sexuellen Orientierung, Behinderung oder vergleichbarer Merkmale herabwürdigen oder zu Hass aufrufen.'],
|
||||
['code' => 'K4', 'label' => 'Irreführung und Falschbehauptung', 'desc' => 'Nachweislich falsche Tatsachenbehauptungen, erfundene Studien oder Zitate, Täuschung über den Absender sowie gesundheits- oder finanzbezogene Heilsversprechen ohne Grundlage.'],
|
||||
['code' => 'K5', 'label' => 'Rechte Dritter', 'desc' => 'Verletzung von Urheber-, Marken- oder Persönlichkeitsrechten — etwa fremde Texte oder Bilder ohne Lizenz, unbefugte Namensnennung, herabsetzende Aussagen über Dritte.'],
|
||||
['code' => 'K6', 'label' => 'Kein Pressecharakter / Spam', 'desc' => 'Reine Werbe- oder Verkaufstexte ohne Nachrichtenwert, Keyword-Spam, automatisch generierte Masseninhalte ohne inhaltliche Substanz, Duplikate bereits veröffentlichter Mitteilungen.'],
|
||||
];
|
||||
$rejectionCategories = \App\Models\RejectionCategory::query()->active()->ordered()->get();
|
||||
|
||||
$guidelinesDocument = \App\Models\LegalDocument::current(\App\Models\LegalDocument::TYPE_RICHTLINIEN);
|
||||
$guidelinesStand = $guidelinesDocument
|
||||
? 'Stand: '.$guidelinesDocument->effectiveFromFormatted().' · Version '.$guidelinesDocument->version
|
||||
: 'Stand: 3. Juli 2026 · Version 0.1';
|
||||
@endphp
|
||||
|
||||
@section('content')
|
||||
|
|
@ -27,7 +25,7 @@
|
|||
eyebrow="Rechtliches"
|
||||
title="Veröffentlichungsrichtlinien"
|
||||
breadcrumb="Richtlinien"
|
||||
updated="Stand: 3. Juli 2026 · Version 0.1"
|
||||
updated="{{ $guidelinesStand }}"
|
||||
>
|
||||
<div class="pm-body max-w-[760px]">
|
||||
<p>
|
||||
|
|
@ -69,12 +67,15 @@
|
|||
|
||||
<div class="max-w-[760px] mt-4 border border-bg-rule divide-y divide-bg-rule">
|
||||
@foreach ($rejectionCategories as $category)
|
||||
<div id="{{ $category['code'] }}" class="px-5 py-4 scroll-mt-6">
|
||||
<div id="{{ $category->code }}" class="px-5 py-4 scroll-mt-6">
|
||||
<div class="flex items-baseline gap-3">
|
||||
<span class="font-mono text-[12px] font-bold text-ink-3 flex-shrink-0">{{ $category['code'] }}</span>
|
||||
<span class="font-mono text-[12px] font-bold text-ink-3 flex-shrink-0">{{ $category->code }}</span>
|
||||
<div>
|
||||
<h3 class="text-[14.5px] font-semibold text-ink m-0">{{ $category['label'] }}</h3>
|
||||
<p class="text-[13px] leading-[1.6] text-ink-2 mt-1.5 mb-0">{{ $category['desc'] }}</p>
|
||||
<h3 class="text-[14.5px] font-semibold text-ink m-0">{{ $category->public_label }}</h3>
|
||||
<p class="text-[13px] leading-[1.6] text-ink-2 mt-1.5 mb-0">{{ $category->public_desc }}</p>
|
||||
@if ($category->examples)
|
||||
<p class="text-[12px] leading-[1.6] text-ink-3 mt-1.5 mb-0">Beispiele: {{ $category->examples }}</p>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue