feat(trip): one-liner, description & retina cover on trip list + page
Give trips an optional one-liner (header.tagline) and description (markdown content), surface them where they help, and fix the soft cover image — all editable from admin. - U1: header.cover_image blueprint field → pagemediaselect media picker. - U2: new macros/cover.html.twig — single source for cover resolution (author-selected → first journal image → none; missing file falls back) and retina rendering (1x/2x cropResize + srcset). Merged resolve+render into one macro since Twig macros can't return a Medium object. - U3: trip-list card renders the one-liner (when set) and the retina cover. - U4: trip-page in-column header gains the one-liner, an expandable description, and a thin banner strip — gated behind a trip_header_extras partial flag (default off) so the shared home active-trip view is unchanged (R12/KTD4). - U5: styles for the card/header one-liner, collapsible description (max-height preview, not line-clamp, so it holds across paragraphs) and the banner, with a mobile banner-height reduction. Covers R1–R15. Verified with new Playwright specs + full trip/home/maps regression against an isolated worktree dev server. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RDS6t8wcpbwKvvrxykVQ5K
This commit is contained in:
@@ -38,10 +38,9 @@ form:
|
||||
help: 'Leave blank if trip is ongoing'
|
||||
|
||||
header.cover_image:
|
||||
type: text
|
||||
label: 'Cover Image Filename'
|
||||
placeholder: 'cover.jpg'
|
||||
help: 'Used in the trips listing page'
|
||||
type: pagemediaselect
|
||||
label: 'Cover Image'
|
||||
help: 'Pick from images uploaded to this trip page. Shown on the trips listing and the trip-page banner. Falls back to the first journal entry photo if left unset.'
|
||||
|
||||
header.album_url:
|
||||
type: text
|
||||
|
||||
Reference in New Issue
Block a user