Přeskočit na hlavní obsah

P3 — Detail akce

Screen IDP3
Typ Primární
FázeMVP
Odhad8 h
Účel obrazovky

Nejdůležitější obrazovka pro konverzi — vše co uživatel potřebuje k rozhodnutí o nákupu. Musí obsahovat kompletní info o akci, termínech, místě a ceně. Sticky CTA bar zajišťuje, že tlačítko „Koupit" je vždy dostupné.


Content Priority

  1. Dark hero — hlavní obrázek akce (full-width, gradient overlay shora dolů), back button (vlevo nahoře), share button (vpravo nahoře) Hero BannerBack ButtonIcon Button
  2. Pořadatel — logo + název organizátora, tap → S13 Organizer Card
  3. Název akce + tagline — hlavní nadpis + krátký podtitulek
  4. Tag chips — žánr/kategorie tagy (max 5 viditelných, zbytek „+N") Chip / Filter Button
  5. Seznam termínů (Dates list) — vertikální seznam karet, každá s: den/datum, čas, venue + sál, město, cenový rozsah (od X Kč), dostupnost badge (dostupné / málo míst / vyprodáno), CTA „Koupit vstupenky" Badge / TagPrimary Button
  6. Foto galerie — horizontální scroll thumbnailů (3–8 fotek), tap → fullscreen viewer s swipe Image GalleryCarousel / Horizontal Scroll
  7. Video teaser — inline přehrávač (pokud dostupný), poster frame + play button Video Player
  8. Popis — rich text, expandable „Zobrazit více" po 3 řádcích Accordion / Expandable
  9. Metadata — strukturovaný seznam: délka představení, jazyk, titulky, přestávka, bezbariérovost, věkové omezení List Item
  10. Credits — účinkující, režie, dirigent… (collapsible accordion) Accordion / Expandable
  11. Venue mapa — inline mapa s pinem, název venue, adresa, tap → S12 Map ViewVenue Card
  12. Related events — „Mohlo by vás zajímat" horizontální scroll event karet (4–6) Section HeaderEvent Card (small)Carousel / Horizontal Scroll
  13. Sticky CTA bar — fixed bottom: „Koupit vstupenky" / „Vybrat termín" / „Vyprodáno — Hlídat" dle stavu CTA Sticky Bar

Interakce

TriggerAkceCíl
Tap na termín „Koupit"Výběr vstupenekP4 — Seat Map (adresné) nebo S1 — Neadresné
Tap na sticky CTA „Koupit vstupenky"Scroll k termínům (pokud více) nebo přímý nákup (pokud 1 termín)Animovaný scroll k dates list
Tap na sticky CTA „Vyprodáno — Hlídat"Aktivace watchdogToast „Hlídač nastaven" + X18 (F1)
Tap na pořadateleProfil organizátoraS13 — Profil pořadatele
Tap na venue / mapuDetail místa konáníS12 — Detail místa
Tap na share buttonSystémový share sheetDeep link URL + náhled akce
Tap na foto v galeriiFullscreen viewerSwipe navigace, pinch-to-zoom, close gesture
Tap na play videoPřehrání inlineVideo přehrávač s controls
Tap na „Zobrazit více" (popis)Expandovat textPlynulá animace expanze
Tap na credits accordionToggle expand/collapseSmooth height animace
Tap na related event kartuNavigace na jiný detailP3 (nová instance)
Tap na „Přidat do kalendáře"Systémový kalendářX16 — Přidáno do kalendáře

Stavy

StavPopisVizuální chování
LoadingNačítání detailuSkeleton: hero placeholder + shimmer řádky pro text
Loaded — dostupnéAkce s volnými místyZelený status badge, CTA „Koupit vstupenky"
Loaded — málo místZbývá < 10 % kapacityOranžový badge „Málo míst", urgency messaging
Loaded — vyprodánoŽádná volná místaČervený badge „Vyprodáno", CTA mění se na „Hlídat"
Loaded — zrušenoAkce zrušenáČervený banner „Tato akce byla zrušena", bez CTA nákupu
ErrorAPI selhalaRetry CTA
OfflineBez připojeníCached data (pokud dříve prohlíženo), upozornění „Dostupnost nemusí být aktuální"

Stavy termínů (per karta v dates list)

Stav termínuBadgeCTABarva
Dostupné„Vstupenky od X Kč"„Koupit"Zelená
Málo míst„Zbývá X míst"„Koupit"Oranžová
Vyprodáno„Vyprodáno"„Hlídat" nebo skrytéČervená/šedá
Zrušeno„Zrušeno"Šedá, přeškrtnuté

Edge Cases a Error States

ScénářŘešení
Akce má 20+ termínůZobrazit prvních 5, „Zobrazit všech N termínů" CTA pro expand
Akce nemá obrázekGradient placeholder s barvou žánru + název akce
Akce nemá videoSkrýt video sekci
Popis je prázdnýSkrýt popis sekci
Akce nemá metadata (délka, jazyk)Skrýt metadata sekci
Akce nemá creditsSkrýt credits accordion
Venue nemá GPS souřadniceSkrýt inline mapu, zobrazit jen textovou adresu
Žádné related eventsSkrýt „Mohlo by vás zajímat" sekci
Akce zrušena během prohlíženíAlert dialog „Tato akce byla zrušena" → redirect na P1
Dostupnost se změní během prohlíženíReal-time refresh při návratu na screen (background fetch)
Deep link na neexistující akciError state „Akce nenalezena" + CTA na homepage

Mobilní patterny a odlišení od webu

Co přebíráme z webu

  • Dark hero se základním obrázkem a overlay gradientem
  • Seznam termínů s cenami a CTA
  • Foto galerie v horizontálním scroll
  • Related events sekce

Co děláme jinak a proč

  • Sticky CTA bar (fixed bottom) — na webu je CTA jen u termínů, na mobilu musí být vždy dostupné kvůli menšímu viewportu (uživatel nemusí scrollovat k termínům)
  • Collapsible popis — na webu je popis v plné délce, na mobilu zkracujeme po 3 řádcích s „Zobrazit více" kvůli vertikálnímu prostoru
  • Fullscreen photo viewer — na webu lightbox, na mobilu nativní fullscreen s pinch-to-zoom a swipe navigací
  • Share button — nativní systémový share sheet (web má jen sociální ikony), podporuje AirDrop, Messages, WhatsApp atd.
  • „Přidat do kalendáře" — přímá integrace s nativním kalendářem (EventKit/CalendarProvider), web toto neumí
  • Haptic feedback — jemná vibrace při tapu na „Koupit" a „Hlídat" pro taktilní potvrzení akce

Aplikované patterny

  • iOS: UIScrollView s parallax efektem na hero, PHPickerViewController pattern pro galerii, UIActivityViewController pro share
  • Android: CollapsingToolbarLayout / TopAppBarDefaults.exitUntilCollapsedScrollBehavior() pro parallax hero, ShareSheet (Material 3)

API Data

GET/catalog/event/{eventId}GET/catalog/tour/{tourId}GET/catalog/circuit/{circuitId}GET/catalog/subscription/{subscriptionId}GET/catalog/extra-infos
OperaceEndpointTriggerPoznámka
Načtení detailu akceGET /catalog/event/{id}Otevření obrazovkyPřes PORTAL cache — EventProgramItem s cenami, dostupností, tagy
Detail tour (varianta)GET /catalog/tour/{id}Pokud je akce typu tourTimed prohlídky
Detail circuit (varianta)GET /catalog/circuit/{id}Pokud je akce typu circuitNon-timed okruhy
Detail předplatnéhoGET /catalog/subscription/{id}Pokud je akce součást abonmáVazba na pořadatele
Rozšířené metadataGET /catalog/extra-infosVolitelné doplněníDodatečné informace k akcím
CoreAPI poznatek

API rozlišuje title_id (obecný titul, např. „La Traviata") a event_id (konkrétní datum/termín). EventProgramItem obsahuje event_tag_name + event_tag_color (#RRGGBBAA) — lze využít pro vizuální tagy. Obrázky (image_url) jsou kompletní HTTP URL z Colossea; galerie, video a credits jsou v DatoCMS (přes PORTAL).


Reference — Aktuální web

SCR-WEB-12: Concert detail — dark hero, tagy, termíny s CTA
Web ColosseumSCR-WEB-12Concert detail — dark hero, tagy, termíny s CTA
SCR-WEB-14: Galerie, popis, program, metadata
Web ColosseumSCR-WEB-14Galerie, popis, program, metadata
SCR-WEB-18: Opera — inline popis na hero, jiný layout
Web ColosseumSCR-WEB-18Opera — inline popis na hero, jiný layout
SCR-WEB-21: Rozšířená metadata — délka, jazyk, titulky, credits
Web ColosseumSCR-WEB-21Rozšířená metadata — délka, jazyk, titulky, credits
SCR-WEB-24: Musical — SOLD OUT stav u termínu
Web ColosseumSCR-WEB-24Musical — SOLD OUT stav u termínu
SCR-WEB-25: Watchdog CTA u vyprodaného termínu, video teaser
Web ColosseumSCR-WEB-25Watchdog CTA u vyprodaného termínu, video teaser

Reference — CineStar benchmark

SCR-CS-04: Pre-purchase upozornění — věkové omezení, příchod 30 min předem
CineStar benchmarkSCR-CS-04Pre-purchase upozornění — věkové omezení, příchod 30 min předem
Inspirace z CineStar

CineStar zobrazuje pre-purchase upozornění (věkové omezení, doporučení příchodu) jako alert dialog ještě před výběrem míst. Zvážit podobný pattern — zobrazit důležitá upozornění před vstupem do nákupního flow, ne až v košíku.