Startseite und Heroes - Hero-Slideshow (11 Motive inkl. Febrü) mit Infokarte, Laufzeit-Linie, größeren Klickflächen, Goldrahmen und mobiler Karte unter dem Bild; Zeile über der Überschrift, neue Vertrauenspunkte - Hero-Stil auf Marken, Über uns und Kontakt übertragen, Breadcrumb entfernt - Gründer-Leiste, Vision-Box auf Ocker, Showroom-Display in Box mit „Größer ansehen“/Vollbild - Akzentfarbe #a8741f, größere Serif-Überschriften in der Interior-Welt - Marken: Bildpause mit Zitat; Vereine aktualisiert und verlinkt Inhalte - Lektorat aller angezeigten Texte, /about-Korrekturen, Rechtstexte (DDG, TDDDG, Hosting Hetzner) - Ablauf Maßanfertigung überall einheitlich, Magazin-Beitrag neu, alte Beiträge offline, deutsches Datum/Lesezeit, FAQ Projektausstattung, Otterpohl - Referenzen-Seite per CMS-Schalter ausblendbar CMS und Technik - Tote Sektionen, Felder, Seiten und Komponenten entfernt und archiviert (dev/2026-08-28/archiv-*) - Entwurf /entwurf, Farb-Schalter und /welcome entfernt; Test-Routen nur noch lokal - Seitenbaum-Beschreibungen geprüft, fehlende CMS-Felder ergänzt, Markenliste aus „Kernmarken“ - Admin-Bildvorschauen repariert, verwendete Bilder in die Mediathek übernommen - Seeder für das Deployment siehe dev/2026-08-28/entwicklungsplan.md Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
85 lines
5.5 KiB
PHP
85 lines
5.5 KiB
PHP
<?php
|
||
|
||
namespace Database\Seeders;
|
||
|
||
use Database\Seeders\Concerns\ReplacesCmsTexts;
|
||
use Illuminate\Database\Seeder;
|
||
|
||
/**
|
||
* Lektorat aller angezeigten Texte (06.10.2026, Nachtrag 22).
|
||
*
|
||
* Tauscht genau die Textstellen aus {@see self::REPLACEMENTS} – Tippfehler, gerade Anführungszeichen,
|
||
* Kommas, „…“ statt „...“, Otterpohl als vierte Kernmarke in Aufzählungen, „die Tischlerei Otterpohl“
|
||
* statt „unsere Tischlerei“ – in allen CMS-Sektionen
|
||
* (auch Rechtstexten), Marken und Magazinbeiträgen. Alles andere bleibt; steht eine Stelle nicht
|
||
* (mehr) drin, passiert dort nichts. Mehrfaches Ausführen ist unbedenklich. Die Lang-Dateien und
|
||
* Marken-Seeder tragen dieselben Korrekturen für frische Installationen.
|
||
*
|
||
* php artisan db:seed --class=ProofreadingCorrectionsSeeder
|
||
*/
|
||
class ProofreadingCorrectionsSeeder extends Seeder
|
||
{
|
||
use ReplacesCmsTexts;
|
||
|
||
/** @var array<string, string> alte Stelle → neue Stelle */
|
||
public const REPLACEMENTS = [
|
||
'Rotpunkt Küchen jetzt bei B2in Interior – jetzt Beratungstermin sichern' => 'Rotpunkt Küchen neu bei B2in Interior – jetzt Beratungstermin sichern',
|
||
'CABINET, Rotpunkt Küchen, Febrü und ein Netzwerk' => 'CABINET, Rotpunkt Küchen, Febrü, Otterpohl Möbelservice und ein Netzwerk',
|
||
'mit CABINET, Rotpunkt Küchen, Febrü und einem Netzwerk' => 'mit CABINET, Rotpunkt Küchen, Febrü, Otterpohl Möbelservice und einem Netzwerk',
|
||
'CABINET, Rotpunkt Küchen und Febrü –' => 'CABINET, Rotpunkt Küchen, Febrü und Otterpohl Möbelservice –',
|
||
'von der Montage über das Aufmaß bis zu' => 'vom Aufmaß über die Montage bis zu',
|
||
'"Meine Mission' => '„Meine Mission',
|
||
'Zuhause der Menschen."' => 'Zuhause der Menschen.“',
|
||
'Unser Kontakt-Nummer' => 'Unsere Telefonnummer',
|
||
'Unser Büro-Standort' => 'Unser Bürostandort',
|
||
'Ihre Nachricht...' => 'Ihre Nachricht …',
|
||
'Wird gesendet...' => 'Wird gesendet …',
|
||
'Bitte wählen...' => 'Bitte wählen …',
|
||
'Warum das Dubai Escrow-System' => 'Warum das Dubai-Escrow-System',
|
||
'einen der sichersten und transparentesten regulatorischen Rahmenwerke der Welt geschaffen, der Investorengelder' => 'eines der sichersten und transparentesten regulatorischen Rahmenwerke der Welt geschaffen, das Investorengelder',
|
||
'"Hidden Champions"' => '„Hidden Champions“',
|
||
'Diese Logistik macht den Standort unvergleichlich.' => 'Diese Anbindung macht den Standort unvergleichlich.',
|
||
'über Tausende Kilometer Entfernung' => 'aus Tausenden Kilometern Entfernung',
|
||
'die in Dubai florierende Umsätze generiert' => 'die in Dubai hohe Umsätze generiert',
|
||
'"Turnkey"' => '„Turnkey“',
|
||
'oft gesichert durch Zugänge zu deutschen' => 'oft gesichert durch Zugang zu deutschen',
|
||
'um sofortige Lösungen zu erzwingen' => 'um schnelle Lösungen zu erzwingen',
|
||
'("Hidden Gems")' => '(„Hidden Gems“)',
|
||
'Das Konzept "Local for Local"' => 'Das Konzept „Local for Local“',
|
||
'"Was ist heute in meiner Nähe verfügbar?"' => '„Was ist heute in meiner Nähe verfügbar?“',
|
||
'Support your Locals – Ein Gewinn' => 'Support your Locals – ein Gewinn',
|
||
'Das "David gegen Goliath"-Prinzip' => 'Das „David-gegen-Goliath“-Prinzip',
|
||
'der für einen Schrank zu schmal und für nichts zu breit ist' => 'der für einen Schrank zu schmal und zum Leerlassen zu breit ist',
|
||
'„Maß oder nicht"' => '„Maß oder nicht“',
|
||
'Registergericht: Amtsg.' => 'Registergericht: Amtsg.',
|
||
'Irland („Google")' => 'Irland („Google“)',
|
||
'von „http://" auf „https://" wechselt' => 'von „http://“ auf „https://“ wechselt',
|
||
'(„B2in", „wir", „uns")' => '(„B2in“, „wir“, „uns“)',
|
||
'(„Connecting Design and Property")' => '(„Connecting Design and Property“)',
|
||
'<strong>B2In GmbH</strong>' => '<strong>B2in GmbH</strong>',
|
||
'Unsere Aufgabe ist es herauszufinden,' => 'Unsere Aufgabe ist es, herauszufinden,',
|
||
'Für den Anfang reicht uns ein Bild und ein grobes Maß völlig aus.' => 'Für den Anfang reichen uns ein Bild und ein grobes Maß völlig aus.',
|
||
'vom durchdachten Home-Office' => 'vom durchdachten Homeoffice',
|
||
'Ob Home-Office oder ganze Büroetage' => 'Ob Homeoffice oder ganze Büroetage',
|
||
'ins Zuhause fügt statt es zu besetzen' => 'ins Zuhause fügt, statt es zu besetzen',
|
||
'Ruhe und Flexibilität sind planbar.' => 'Ruhe und Flexibilität sind planbar',
|
||
'erst, wenn Ihre Lieferung vollständig und unversehrt bei uns geprüft wurde' => 'erst, wenn Ihre Lieferung bei uns eingegangen und auf Vollständigkeit und Unversehrtheit geprüft ist',
|
||
'an ihre Grenzen kommen' => 'an ihre Grenzen stoßen',
|
||
'mit unserer Tischlerei, die auf Wunsch' => 'mit der Tischlerei Otterpohl, die auf Wunsch',
|
||
'Unsere Tischlerei baut auf und ergänzt' => 'Die Tischlerei Otterpohl baut auf und ergänzt',
|
||
];
|
||
|
||
/** @var array<string, string> ganze Werte, die nur als Ganzes getauscht werden (Leistungstitel) */
|
||
public const EXACT_VALUES = [
|
||
'Home-Office' => 'Homeoffice',
|
||
];
|
||
|
||
public function run(): void
|
||
{
|
||
$count = $this->replaceCmsTexts(self::REPLACEMENTS, self::EXACT_VALUES);
|
||
|
||
$this->command?->info($count > 0
|
||
? "Lektorat: {$count} Textstelle(n) korrigiert."
|
||
: 'Lektorat: bereits aktuell, nichts geändert.');
|
||
}
|
||
}
|