Porträt von Amin einbauen, Fotoraster mit ganzem Team
- Amin bekommt ein Studio-Porträt im gleichen Stil wie das restliche Team (Team-Liste, Preis-Thumbnails) statt des Wandlogos - Footer-Fotoraster zeigt jetzt alle sechs Personen Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KBHsCnWNXAB2Le3gAEsivF
This commit is contained in:
5 files changed
+5
-9
No files matched your search
@@ -37,8 +37,7 @@ Einfach `salon-wand.webp` bzw. `salon-wand-800.webp` ersetzen.
|
||||
|
||||
**Team-Porträts:** Einheitliche Studio-Porträts (per Bild-KI aus den Originalfotos erstellt), je zweimal
|
||||
abgelegt: `name.webp` (1000 px breit, Team-Liste) und `name-thumb.webp` (320 × 320, Fotoraster und
|
||||
Preis-Thumbnails). Für Amin fehlt noch ein Foto – bis dahin zeigt die Seite bei ihm das Wandlogo. Neues
|
||||
Porträt als `amin.webp` / `amin-thumb.webp` ablegen und in `src/data/salon.ts` eintragen.
|
||||
Preis-Thumbnails). Neue Porträts im selben Format ablegen und in `src/data/salon.ts` eintragen.
|
||||
|
||||
**Direktbuchung:** Jede Leistung trägt ihre Setmore-ID (`id`). Wird bei Setmore eine Leistung
|
||||
neu angelegt, bekommt sie eine neue ID. Sie steht im Buchungslink der Leistung auf der
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 7.1 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 35 KiB |
@@ -1,5 +1,5 @@
|
||||
import { motion } from 'motion/react'
|
||||
import { image, salon, team } from '../data/salon'
|
||||
import { salon, team } from '../data/salon'
|
||||
import { compactHours } from '../lib/hours'
|
||||
import { EASE_OUT_EXPO } from '../lib/motion'
|
||||
import { useOpenStatus } from '../lib/useOpenStatus'
|
||||
@@ -9,11 +9,8 @@ import { ArrowUpRight } from './Icons'
|
||||
|
||||
const YEAR = new Date().getFullYear()
|
||||
|
||||
// 3 × 2 Fotoraster zwischen den Wörtern: fünf Porträts und das Logo an der Wand
|
||||
const tiles = [
|
||||
...team.filter((m) => m.key !== 'amin').map((m) => ({ src: m.thumb, alt: m.name })),
|
||||
{ src: image('photos/emblem-quadrat'), alt: 'Logo an der Salonwand' },
|
||||
]
|
||||
// 3 × 2 Fotoraster zwischen den Wörtern: das ganze Team
|
||||
const tiles = team.map((m) => ({ src: m.thumb, alt: m.name }))
|
||||
|
||||
function PhotoGrid() {
|
||||
return (
|
||||
|
||||
+1
-1
@@ -153,7 +153,7 @@ const images = import.meta.glob<string>(['../assets/team/*.webp', '../assets/pho
|
||||
export const image = (path: string) => images[`../assets/${path}.webp`]
|
||||
|
||||
export const team: Member[] = [
|
||||
{ key: 'amin', name: 'Amin B. Ahmadi', short: 'Amin', role: 'Inhaber · Barber', photo: image('photos/emblem-breit-900'), thumb: image('photos/emblem-quadrat') },
|
||||
{ key: 'amin', name: 'Amin B. Ahmadi', short: 'Amin', role: 'Inhaber · Barber', photo: image('team/amin'), thumb: image('team/amin-thumb') },
|
||||
{ key: 'atena', name: 'Atena', short: 'Atena', role: 'Damen · Farbe · Beauty', photo: image('team/atena'), thumb: image('team/atena-thumb') },
|
||||
{ key: 'ahmad', name: 'Ahmad', short: 'Ahmad', role: 'Barber', photo: image('team/ahmad'), thumb: image('team/ahmad-thumb') },
|
||||
{ key: 'ali', name: 'Ali', short: 'Ali', role: 'Barber', photo: image('team/ali'), thumb: image('team/ali-thumb') },
|
||||
|
||||
Reference in new issue
Block a user