Fix: Haupt-Charakter einer Tier-Familie verliert Story-Box nicht mehr ohne Produkt

Der letzte Commit hatte Story-Boxen komplett an ein zugeordnetes Produkt
gekoppelt - das entfernte zwar wie gewuenscht HasiGott/Mama Hase (Hase-Familie
hat bereits HasiDog als Produkt), loeschte aber ungewollt auch die Box des
Haupt-Charakters bei Familien ohne eigenes Produkt (z.B. Frieda bei der Kuh).

Jetzt bekommt immer der erste/Haupt-Charakter einer Familie eine Story-Box,
zusaetzliche Charaktere weiterhin nur mit echtem Produkt.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
qcigano
2026-08-03 02:01:52 +02:00
co-authored by Claude Sonnet 5
parent fa5287484e
commit 739c0845ba
4 changed files with 24 additions and 14 deletions
@@ -35,11 +35,12 @@ const characterEntries = characters.map((char) => ({
product: alleProdukte.find((p) => p.charakter === char.slug),
}));
const characterEntriesMitProdukt = characterEntries.filter((e) => e.product);
const characterEntriesFuerStory = characterEntries.filter((e, i) => i === 0 || e.product);
// Produkte ohne (bekannte) Charakter-Zuordnung landen als "weitere Modelle" darunter.
const zugeordneteSlugs = new Set(characterEntriesMitProdukt.map((e) => e.product!.slug));
const weitere = alleProdukte.filter((p) => !zugeordneteSlugs.has(p.slug));
const hatCharaktere = characterEntries.length > 0;
const hatStoryBoxen = characterEntriesFuerStory.length > 0;
const hatProduktKarten = characterEntriesMitProdukt.length > 0;
const hatWeitere = weitere.length > 0;
const komplettLeer = !hatProduktKarten && !hatWeitere;
@@ -57,11 +58,11 @@ const komplettLeer = !hatProduktKarten && !hatWeitere;
</section>
</div>
{hatProduktKarten && (
{hatStoryBoxen && (
<section class="section-tight">
<div class="container">
<div class="character-stories">
{characterEntriesMitProdukt.map(({ char }) => (
{characterEntriesFuerStory.map(({ char }) => (
<div class="card character-story">
{char.vorstellung && <span class="eyebrow">{char.vorstellung[lang].split("\n")[0]}</span>}
<p>{char.vorstellung ? char.vorstellung[lang].split("\n")[1] : ""}</p>