- Hinweisleiste per B2IN_ANNOUNCEMENT_BAR ausgeblendet (Standard aus) - Hero: „Räume aus einer Hand.“ als neue Überschrift, zweiter Button entfernt - Projekttext mit zentralem deutschen Vertragspartner (Punkt statt Gedankenstrich) - Otterpohl als vierte Kernmarke: Text v2, Abschnitt „Montage“, Titelbild getauscht - Markenabschnitte: Absätze mit „- “ als Liste mit fetter Einleitung - Titelbilder und Galerien für CABINET, Rotpunkt, Febrü und Otterpohl (WebP) - Feedback 17.09. in den Markentexten, Demobilder entfernt, WhatsApp-Nummer - Palette „Modern“ fest ohne Schalter, Entwurf /entwurf mit Hero-Slideshow - Seeder-Liste fürs Deployment im Entwicklungsplan Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
52 lines
1.7 KiB
PHP
52 lines
1.7 KiB
PHP
<?php
|
||
|
||
namespace Database\Seeders;
|
||
|
||
use App\Models\CmsBrand;
|
||
use Illuminate\Database\Seeder;
|
||
|
||
/**
|
||
* Entfernt die Demobilder aus den Markengalerien (Nachtrag 17).
|
||
*
|
||
* {@see DemoBrandGallerySeeder} hatte Stockmotive und KI-Renderings der alten Dubai-Seite als
|
||
* Beispiele in die Galerien von CABINET, Rotpunkt und Febrü gelegt. Seit den echten Bildern
|
||
* (Nachtrag 16) sollen sie weg. Erkannt werden sie am Dateinamen aus dem Demo-Seeder – nicht an
|
||
* der Bildunterschrift, denn den Vermerk „BEISPIEL“ hat {@see BrandGalleryCaptionNormalizerSeeder}
|
||
* auf der Vorschau bereits entfernt. Alle anderen Galeriebilder bleiben samt Kategorie,
|
||
* Unterschrift und Reihenfolge. Mehrfaches Ausführen ist unbedenklich.
|
||
*
|
||
* php artisan db:seed --class=DemoBrandGalleryCleanupSeeder
|
||
*/
|
||
class DemoBrandGalleryCleanupSeeder extends Seeder
|
||
{
|
||
public function run(): void
|
||
{
|
||
$demoImages = [];
|
||
|
||
foreach (DemoBrandGallerySeeder::GALLERIES as $items) {
|
||
foreach ($items as $item) {
|
||
$demoImages[] = $item[0];
|
||
}
|
||
}
|
||
|
||
$removed = 0;
|
||
|
||
foreach (CmsBrand::query()->whereNotNull('gallery')->get() as $brand) {
|
||
$gallery = CmsBrand::normalizeGallery($brand->gallery);
|
||
$kept = array_values(array_filter(
|
||
$gallery,
|
||
fn (array $item) => ! in_array($item['image'], $demoImages, true),
|
||
));
|
||
|
||
if (count($kept) === count($gallery)) {
|
||
continue;
|
||
}
|
||
|
||
$removed += count($gallery) - count($kept);
|
||
$brand->gallery = $kept;
|
||
$brand->save();
|
||
}
|
||
|
||
$this->command?->info("Demobilder aus den Galerien entfernt: {$removed}.");
|
||
}
|
||
}
|