@@ -373,9 +373,10 @@
- Die Prüfung ist Teil unseres
- Qualitätsversprechens — keine PR-Wand, kein automatisierter Durchlauf. Das gilt für alle Tarife, auch den
- Starter.
+ Die Inhaltsprüfung ist Teil unseres
+ Qualitätsversprechens: Jede Mitteilung wird vor der Veröffentlichung gegen unsere
+ Veröffentlichungsrichtlinien geprüft — bei einer Ablehnung erhalten Sie die Begründung und können eine
+ Überprüfung verlangen. Das gilt für alle Tarife, auch den Starter.
@@ -391,11 +392,13 @@
Ein Konto, beide Portale. Keine versteckten Aufschläge für Reichweite.
- Alle Tarife enthalten die Prüfung, Ihren eigenen Newsroom und die
+ Alle Tarife enthalten die Inhaltsprüfung, Ihren eigenen Newsroom und die
Veröffentlichung auf und ohne Mehrkosten.
+ :serif="false" /> ohne Mehrkosten. Unser Angebot richtet sich
+ ausschließlich an Unternehmen, Selbstständige und Agenturen — die Veröffentlichung
+ erfolgt stets über Ihr Firmenprofil.
@@ -671,7 +674,7 @@
Über veröffentlichen Unternehmen,
Verbände und öffentliche Einrichtungen aus Deutschland, Österreich und der Schweiz.
- Jeder Newsroom wird redaktionell geprüft, bevor Mitteilungen erscheinen — die
+ Jede Mitteilung durchläuft vor der Veröffentlichung unsere Inhaltsprüfung — die
Veröffentlichungen unterliegen unserem Qualitätsstandard und bleiben im Archiv
beider Portale dauerhaft auffindbar.
@@ -755,10 +758,11 @@
- Sobald Sie eine Mitteilung einreichen, prüfen unsere Redakteure formale Korrektheit,
- Quellenqualität, Themenrelevanz und Plausibilität — werktags in der Regel am selben Tag.
- Bei Rückfragen erhalten Sie Feedback direkt an der Mitteilung — kein PR-Filter,
- sondern verlegerische Qualitätssicherung.
+ Sobald Sie eine Mitteilung einreichen, wird sie auf formale Korrektheit, Quellenqualität,
+ Themenrelevanz und die Einhaltung unserer Veröffentlichungsrichtlinien geprüft — werktags
+ in der Regel am selben Tag. Bei einer Ablehnung erhalten Sie die Begründung direkt an der
+ Mitteilung und können eine Überprüfung verlangen; ein abgelehnter Beitrag verbraucht kein
+ Kontingent.
@@ -810,9 +814,14 @@
- Ja. Monats-Tarife sind monatlich kündbar, Jahres-Tarife laufen bis zum Ende des bezahlten
- Zeitraums. Ihr Konto und Ihre Newsroom-Archive bleiben dauerhaft bestehen — auch nach Kündigung
- sind veröffentlichte Mitteilungen weiter im Archiv auffindbar.
+ Ja, alle Tarife sind monatlich kündbar. Bei jährlicher Zahlweise läuft der bereits bezahlte
+ Zeitraum bis zum Ende der zwölf Monate; danach wird monatlich abgerechnet, sofern Sie nicht
+ erneut die jährliche Zahlweise wählen. Kündigen können Sie direkt im Konto oder ohne
+ Anmeldung über
unsere Kündigungsseite.
+ Ihr Konto und Ihre Newsroom-Archive bleiben bestehen — auch nach Kündigung sind
+ veröffentlichte Mitteilungen weiter im Archiv auffindbar.
@@ -868,10 +877,11 @@
Ja — eine Token-basierte REST-API zum Einreichen von Mitteilungen, Statusabfragen und
- Bild-Upload. Die technische Dokumentation finden Sie unter
/docs/api/v1. Den API-Zugang erhalten Sie
- auf Anfrage über den Support.
+ href="{{ route('api', ['edition' => 'de']) }}">API-Seite. Ihre API-Tokens
+ erstellen Sie direkt in Ihrem Konto — Voraussetzung ist eine aktive Buchung
+ (Tarif oder Einzel-Pressemitteilung).
@@ -932,7 +942,6 @@
-
@endsection
diff --git a/resources/views/web/ueber-uns.blade.php b/resources/views/web/ueber-uns.blade.php
deleted file mode 100644
index 882fba57..00000000
--- a/resources/views/web/ueber-uns.blade.php
+++ /dev/null
@@ -1,131 +0,0 @@
-@extends('web.layouts.web-master')
-
-@section('title', 'Über uns')
-@section('meta_description', 'Wir verbinden Unternehmen mit Medien, Journalisten und Multiplikatoren im deutschsprachigen Raum.')
-
-@php
- $brand = config('domains.domains.'.config('app.theme').'.brand', []);
- $brandLabel = ($brand['name'] ?? 'businessportal').($brand['accent'] ?? '');
-
- // Platzhalter-Kennzahlen — vor Go-Live mit echten Werten ersetzen.
- $stats = [
- ['value' => '250.000+', 'label' => 'Veröffentlichte Meldungen'],
- ['value' => '15.000+', 'label' => 'Registrierte Unternehmen'],
- ['value' => '2,5 Mio.', 'label' => 'Monatliche Leser'],
- ['value' => '40+', 'label' => 'Länder'],
- ];
-
- $values = [
- ['title' => 'Qualität vor Quantität', 'text' => 'Wir setzen auf redaktionelle Qualität und kuratieren Inhalte sorgfältig, um höchste Standards zu gewährleisten.'],
- ['title' => 'DACH-Expertise', 'text' => 'Spezialisiert auf den deutschsprachigen Raum mit tiefem Verständnis für regionale Besonderheiten.'],
- ['title' => 'Kundenfokus', 'text' => 'Ihre Zufriedenheit steht im Mittelpunkt. Wir bieten persönlichen Support und maßgeschneiderte Lösungen.'],
- ['title' => 'Innovation & Technologie', 'text' => 'Kontinuierliche Weiterentwicklung unserer Plattform mit modernsten Technologien und Features.'],
- ];
-
- $team = [
- ['name' => 'Dr. Michael Weber', 'role' => 'Gründer & CEO', 'bio' => '15+ Jahre Erfahrung in PR und Unternehmenskommunikation'],
- ['name' => 'Sarah Hoffmann', 'role' => 'Chief Technology Officer', 'bio' => 'Expertin für digitale Plattformen und Skalierung'],
- ['name' => 'Thomas Schneider', 'role' => 'Head of Customer Success', 'bio' => 'Spezialist für Kundenzufriedenheit und Account Management'],
- ['name' => 'Lisa Müller', 'role' => 'Head of Content & Quality', 'bio' => 'Journalistin mit Schwerpunkt digitale Medien'],
- ];
-
- $timeline = [
- ['year' => '10', 'title' => 'Gründung', 'text' => 'Start als kleines Start-up mit der Vision, PR zu demokratisieren.'],
- ['year' => '13', 'title' => 'Expansion', 'text' => 'Erreichen von 1.000 registrierten Unternehmen.'],
- ['year' => '16', 'title' => 'Wachstum', 'text' => 'Launch der Premium-Features und Enterprise-Lösungen.'],
- ['year' => '19', 'title' => 'Innovation', 'text' => 'Einführung KI-gestützter Reichweiten-Analytics.'],
- ['year' => '22', 'title' => 'Marktführer', 'text' => 'Über 10.000 aktive Unternehmenskunden im DACH-Raum.'],
- ['year' => '25', 'title' => 'Zukunft', 'text' => 'Internationalisierung und neue KI-Features.'],
- ];
-@endphp
-
-@section('content')
-
- {{-- Kennzahlen --}}
-
- @foreach ($stats as $stat)
-
-
{{ $stat['value'] }}
-
{{ $stat['label'] }}
-
- @endforeach
-
-
- {{-- Mission --}}
-
-
-
Unsere Mission
-
Professionelle Kommunikation für alle zugänglich machen
-
-
-
- Wir glauben daran, dass jedes Unternehmen – unabhängig von Größe oder Budget – die Möglichkeit
- haben sollte, seine Geschichte zu erzählen und mit relevanten Zielgruppen zu kommunizieren.
-
-
- {{ $brandLabel }} demokratisiert professionelle PR-Arbeit durch innovative Technologie, faire
- Preismodelle und exzellenten Service. Wir schaffen Sichtbarkeit für wichtige Unternehmensnachrichten
- und verbinden Organisationen mit den Menschen, die ihre Botschaften lesen und teilen möchten.
-
-
-
-
- {{-- Werte --}}
- Unsere Werte
-
- @foreach ($values as $value)
-
-
{{ $value['title'] }}
-
{{ $value['text'] }}
-
- @endforeach
-
-
- {{-- Team --}}
- Unser Team
-
- @foreach ($team as $member)
-
-
{{ $member['name'] }}
-
{{ $member['role'] }}
-
{{ $member['bio'] }}
-
- @endforeach
-
-
- {{-- Geschichte / Timeline --}}
- Unsere Geschichte
-
- @foreach ($timeline as $milestone)
-
-
{{ $milestone['year'] }}
-
{{ $milestone['title'] }}
-
{{ $milestone['text'] }}
-
- @endforeach
-
-
- {{-- CTA --}}
-
-
-
Werden Sie Teil unserer Geschichte
-
Veröffentlichen Sie Ihre nächste Pressemitteilung redaktionell geprüft und dauerhaft auffindbar.
-
-
-
-
-@endsection
diff --git a/tests/Feature/Web/HubStaticPageShellTest.php b/tests/Feature/Web/HubStaticPageShellTest.php
index c609ce4d..baf58e1b 100644
--- a/tests/Feature/Web/HubStaticPageShellTest.php
+++ b/tests/Feature/Web/HubStaticPageShellTest.php
@@ -11,9 +11,10 @@ test('static pages on the hub domain render the hub shell', function (string $pa
// Hub-Kopf: Utility-Bar + Hub-Header statt Spoke-Gerüst.
->toContain('Publisher-Hub für')
->toContain('Publisher · Hub')
- // Hub-Footer inkl. gesetzlichem Widerrufsbutton + Modals.
- ->toContain('Vertrag widerrufen')
- ->toContain('open-withdrawal-modal')
+ // Hub-Footer inkl. Selfservice-Kündigungsbutton + Kontakt-Modal.
+ // Der Widerrufs-Button entfällt (Entscheidung E2: B2B-only).
+ ->toContain('Verträge hier kündigen')
+ ->not->toContain('open-withdrawal-modal')
->toContain('open-contact-modal')
// Kein Spoke-Portal-Branding im Gerüst.
->not->toContain('Pressemitteilungen · DACH');
diff --git a/tests/Feature/Web/WithdrawalRequestTest.php b/tests/Feature/Web/WithdrawalRequestTest.php
index 8eac6132..8966f349 100644
--- a/tests/Feature/Web/WithdrawalRequestTest.php
+++ b/tests/Feature/Web/WithdrawalRequestTest.php
@@ -6,18 +6,17 @@ use App\Models\WithdrawalRequest;
use Illuminate\Support\Facades\Mail;
use Tests\TestCase;
-test('the hub shows the legally required withdrawal button and two-step modal', function () {
+test('the withdrawal ui is retired on the hub (B2B-only, decision E2)', function () {
/** @var TestCase $this */
+ // Der Widerrufs-Button/-Modal entfällt seit der B2B-only-Entscheidung
+ // (E2, 03.07.2026); der POST-Endpunkt bleibt schlafend erhalten und ist
+ // bei einer B2C-Öffnung reaktivierbar (samt archivierter Belehrung).
$response = $this->get('https://pressekonto.test/')->assertSuccessful();
$content = $response->getContent();
expect($content)
- ->toContain('Vertrag widerrufen')
- ->toContain('open-withdrawal-modal')
- ->toContain('action="'.route('widerruf.store').'"')
- ->toContain('Jetzt widerrufen')
- // Kein Widerrufsgrund-Feld — darf gesetzlich nicht verlangt werden.
- ->not->toContain('name="reason"');
+ ->not->toContain('Vertrag widerrufen')
+ ->not->toContain('open-withdrawal-modal');
});
test('a withdrawal is persisted and both mails are sent immediately', function () {