feat: manage about highlight fallback media via payload

This commit is contained in:
syntaxbullet
2026-06-22 12:32:56 +02:00
parent 53fc63b486
commit 9d2994ecdf
5 changed files with 26 additions and 12 deletions

View File

@@ -32,10 +32,11 @@ async function main() {
const page = pageResult.docs[0]
if (!page) throw new Error('About page not found. Expected spaPath=/der-bmp or slug=der-bmp/about.')
const [heroImage, prizeImage, mittelstandImage, winnerResult] = await Promise.all([
const [heroImage, prizeImage, mittelstandImage, fallbackWinnerImage, winnerResult] = await Promise.all([
mediaByFilename(payload, aboutContent.hero.backgroundImageFilename),
mediaByFilename(payload, aboutContent.prize.imageFilename),
mediaByFilename(payload, aboutContent.mittelstand.imageFilename),
mediaByFilename(payload, aboutContent.highlights.fallbackImageFilename),
payload.find({
collection: 'preistraeger',
limit: 8,
@@ -49,6 +50,7 @@ async function main() {
const { backgroundImageFilename: _heroFilename, ...heroContent } = aboutContent.hero
const { imageFilename: _prizeFilename, ...prizeContent } = aboutContent.prize
const { imageFilename: _mittelstandFilename, ...mittelstandContent } = aboutContent.mittelstand
const { fallbackImageFilename: _highlightFallbackFilename, ...highlightsContent } = aboutContent.highlights
await payload.update({
collection: 'pages',
@@ -73,7 +75,8 @@ async function main() {
body: aboutContent.mittelstand.body.map((text) => ({ text })),
},
highlights: {
...aboutContent.highlights,
...highlightsContent,
fallbackImage: fallbackWinnerImage,
selectedWinners: winnerResult.docs.map((winner) => winner.id),
},
},