feat: structured victories/education with photos, links, and editorial profile layout

- Add VictoryItem type (place, category, competition, location, date, image, link)
- Add RichListItem type for education with image/link support
- Backward-compatible DB parsing for old string[] formats
- Admin forms with structured fields and image upload per item
- Victory/education cards with photo overlay and lightbox
- Remove max-width constraint from trainer profile for full-width layout

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-13 14:34:30 +03:00
parent 921d10800b
commit 4918184852
10 changed files with 627 additions and 106 deletions

View File

@@ -1,6 +1,7 @@
import { NextRequest, NextResponse } from "next/server";
import { getTeamMembers, createTeamMember } from "@/lib/db";
import { revalidatePath } from "next/cache";
import type { RichListItem, VictoryItem } from "@/types/content";
export async function GET() {
const members = getTeamMembers();
@@ -15,8 +16,8 @@ export async function POST(request: NextRequest) {
instagram?: string;
description?: string;
experience?: string[];
victories?: string[];
education?: string[];
victories?: VictoryItem[];
education?: RichListItem[];
};
if (!data.name || !data.role || !data.image) {