b2in/database/seeders/WorldSplitCmsSeeder.php
Kevin Adametz 7953a8c9a1 Interior-Farbwelt, Welten-Trennung, Tischlerei und Herkunfts-Sektion
Arbeitsplan 14.09.2026, Punkte 1.1 bis 1.4 (Nachträge 6 bis 10 im Entwicklungsplan):

- Farbwelt Interior (Tanne, Creme, Sand, Ocker, Clay) als Standard, Immobilien-Welt
  behält das bisherige Blau über body.world-immobilien; Logo je Welt, Favicons neu,
  Welten-Wechsler in Kopf- und Fußzeile.
- Saubere Trennung der Welten: eigene Navigation, Ankündigungsleiste, Magazinliste,
  Über-uns-Seite, FAQ, Kontaktseite und Abschluss-CTA für Immobilien; Beiträge tragen
  eine Welt (Migration + Admin-Feld). Abschluss-CTA Ton in Ton statt Grün-zu-Ocker.
- Kontakt: Betreffe in Gruppen Interior / Immobilien / B2in, Marken darin.
  Terminanfrage-Buttons öffnen das Widget mit vorgewähltem Anliegen; Select-Felder
  einheitlich gestaltet.
- Tischlerei als vierte Kernmarke (Platzhalter), Kachelraster 2×2.
- Herkunfts-Sektion „Aus der Region gefertigt“ mit schematischer Standortkarte und
  Ablauf CABINET (Beratung Bielefeld, Fertigung Köln, Aufbau mit Tischlerei).

Deployment: migrate, WorldSplitCmsSeeder, CmsBrandSeeder, OriginSectionCmsSeeder
(Abschnitt 8 im Entwicklungsplan).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-15 12:46:41 +00:00

63 lines
2.2 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
/**
* Trennung der Welten Interior und Immobilien im CMS (Arbeitsplan 14.09.2026, Folge von 1.1).
*
* Zwei Schritte:
*
* 1. **Neue Sektionen anlegen**, falls sie fehlen: Navigation, Ankündigungsleiste, Magazinliste,
* Über-uns-Seite und FAQ der Immobilien-Welt. Bestehende Einträge bleiben unangetastet.
* 2. **Sektionen überschreiben**: die Hauptnavigation (ohne „Immobilien“ – der Welten-Wechsler
* übernimmt), die Einleitung der Magazinliste (ohne Dubai-Bezug) und das Kontaktformular
* beider Welten (Betreffe in Gruppen).
*
* ⚠️ Schritt 2 setzt genau diese beiden Sektionen auf den Stand der Lang-Dateien zurück.
* Vorher ein DB-Backup ziehen, falls die Navigation im Admin geändert wurde.
*
* php artisan db:seed --class=WorldSplitCmsSeeder
*/
class WorldSplitCmsSeeder extends Seeder
{
/** @var array<int, string> */
private const NEW_SECTIONS = [
'header_immobilien',
'announcement_bar_immobilien',
'magazin_list_immobilien',
'faq_immobilien',
'contact_form_immobilien',
'cta_section_immobilien',
'immobilien_about_hero',
'immobilien_our_story',
'immobilien_about_image_break',
'immobilien_our_values',
];
/** @var array<int, string> */
private const OVERWRITE_SECTIONS = [
'header',
'magazin_list',
// Betreffe in Gruppen (Interior / Immobilien / B2in) statt flacher Liste, 15.09.
'contact_form',
'contact_form_immobilien',
];
public function run(): void
{
$create = new CmsContentSeeder;
$create->setCommand($this->command);
$create->onlySections = self::NEW_SECTIONS;
$create->run();
$overwrite = new CmsContentSeeder;
$overwrite->setCommand($this->command);
$overwrite->onlySections = self::OVERWRITE_SECTIONS;
$overwrite->overwriteExisting = true;
$overwrite->run();
$this->command?->info('Welten-Trennung: '.count(self::NEW_SECTIONS).' Sektionen angelegt (falls fehlend), '.count(self::OVERWRITE_SECTIONS).' Interior-Sektionen aktualisiert.');
}
}