Skip to content

5. Proces po otvorení stránky

  1. (Mimo kontroly) Načíta sa DOM, stiahne sa bundle.js/css a inicializuje sa Svelte
  2. Svelte zistí jazyk prehliadača (App->LangDetectModule)
  3. Svelte API call na CockpitCMS (axios)
    • /cockpit/api/collections/get/Page?lang=...
    • /cockpit/api/singletons/get/SiteSettings?lang=...
    • meantime Loading.svelte grafika
  4. Podľa odpovede servera možné chyby:
    1. Stránka sa nenašla (404) -> Zobrazí sa relevantná chyba + navigácia (bez footera)
    2. CockpitCMS nepripojitelné (500) -> Zobrazí sa relevantná chyba bez navigácie a bez loga (nemá sa odkial získať) (bez footera)
    3. Stránka je prázdna (Layout.svelte) -> Zobrazí sa jednoduchá hláška + footer Zišlo by sa upraviť štýlovo na dve predchádzajúce
  5. Ak sa stránka úspešne načíta:
    1. async assignContent() podľa momentálnej hodnoty slug z Routera vytiahne relevantnú stránku z API response - svelte bug v {#await} spôsobuje že svelte transitions, scrollvideo a možno aj iné veci zduplikujú blok, jediný možný fix je presunúť asynchrónnu logiku do <script> a použiť {#if} github#1591 github#4064
    2. relevantná stránka sa posunie do Layout.svelte, separátne sa načítajú vlastnosti Header, Footer, title (Head), Theme
    3. Layout.svelte rozloží informácie ktoré obdržal medzi relevantné komponenty (sections/*), ktoré ich podľa potreby spracujú a renderujú relevantné HTML.