Preskočiť na obsah

API

Všeobecne platí, že Open Web Calendar je používaný bez obmedzenia. Toto API môžete použiť na prispôsobenie kalendára na letáku.

Táto časť môže byť použitá, ak jeden z nich platí:

  • Ste web developer, ktorý chce vložiť Open Web Calendar.
  • Chcete využiť plnú flexibilitu, nie len to, čo je vystavené na stránke konfigurácie.
  • Chcete používať JavaScript dynamicky generovať dizajn kalendára a možnosti.
  • Chcete rozšíriť funkčnosť Open Web Calendar.
  • Chcete použiť Open Web Calendar ako proxy požiadať JSON udalosti pre vaše vlastné akcie krmivo.

Endpointy

Základné parametre sú rovnaké v týchto bodoch:

  • /index.html - upraviť kalendár
  • /about.html - zobraziť stránku
  • /calendar.html - zobraziť kalendár
  • /calendar.spec - stiahnuť špecifikácie
  • /calendar.ics - prihlásiť sa k súboru ics
  • /calendar.events.json - FLEXIBLE - dostať udalosti ako JSON Upozorňujeme, že to môžete použiť, ale nemôžete si byť istí, že JSON schema zostáva rovnaký. Ak to chcete, pridajte testy.

Additional parameters are required for /calendar.events.json:

  • timezone=UTC - časové pásmo, ktoré musíte zobraziť udalosti v
  • od=YYYYYY-MM-DD - začiatok obdobia, v ktorom sa udalosti stávajú (inclusive)
  • to=YYYYY-MM-DD - koniec obdobia, v ktorom sa udalosti stávajú (exkluzívne)

Parametry

Všetky parametre konfigurácie sú dostatočne opísané v [predvolené_specification]. To je odkaz. E.g. Ak nájdete parameter title v [predvolené_specification], máte niekoľko možností:

Zmena titulu v kalóriu parameter:

/index.html?title=calendar

Zmena titulu v špecifikácie YAML:

title: calendar

Zmena titulu v špecifikácie JSON:

{
  "title": "calendar"
}

Pridávanie parametrov

Ak pridáte nový parameter ako vývojár,

  • Pridajte parameter s predvolenou hodnotou [predvolené_specification]
  • Pridajte implementáciu, v závislosti od jeho použitia v app.py alebo šablóny JavaScriptových súborov. Špecifikácia je už k dispozícii vo všetkých z nich použiť.
  • Pridajte testy v features/configure-the-calendar.feature skontrolovať, že kalendár reaguje na funkciu.
  • Pridajte testy v features/edit-the-calendar.feature uistite sa, že parameter môže byť použitý pri editácii kalendára.

Dodržiavanie špecifikácie

Môžete zmeniť správanie kalendára a vyzerá s parametrami. Toto sú miesta na stanovenie parametrov:

  1. Query parametre Všetky parametre do kalendára URL sú uvedené do špecifikácie. Parametre query majú najvyššiu precedence. Príklady: txt index.html?language=de calendar.html?title=CALENDAR
  2. specification_url Ak určíte tento parameter dotazu, konfigurácia editora je naložený z tohto URL, tiež. Požiadavky parametre sú stále dôležitejšie ako to, čo je napísané v tomto súbore. Formát zdroja môže byť YAML alebo JSON. Príklady: calendar.html?specification_url=https://github.com/niccokunzmann/open-web-calendar/raw/master/default_specification.yml

  3. [predvolené_specification] Tento súbor obsahuje predvolené parametre. V zdrojovom kóde nemusia byť tvrdé kódované. Všetky sú tam. Požiadavky parametre a specification_url prepísať tieto hodnoty.

Špecifikácia v kalendári

app.py zostavuje špecifikácie z uvedených parametrov v [X174]getation (X194X)[X)[X (X) V [premýšľa](https://github.com/niccokunzmann/open-web-calendar/blob/85a72dab4561e250aec69b5ad7c3de074efa1e8/ uvažujes/calendars/dhtml#L môžete získať prístup k špecifikácie [394X premennej] (X). Špecifikácia je k dispozícii na JavaScript ako specification premenná.

Špecifikácia v sekcii Index

Predvolená špecifikácia je k dispozícii pred kalendárom je postavený cez JavaScript v konfigurácii. Predvolené_specification premenné. Tam je getSpecification() funkcia, ktorá vytvorila špecifikáciu z vstupov. Všeobecne platí, že specification premenná by sa mala používať.

Architektúra

Nižšie nájdete obrázok architektúry.

architecture

Základ kalendára je špecifikácia, vzhľadom na rôzne formy. Táto špecifikácia ovplyvňuje všetky kroky.

Po zostavení špecifikácie, kalendár (ics) súbory sú stiahnuté z miest na internete.

Z kalendárových súborov sa vygenerujú udalosti.

Potom sa vyberajú rôzne názory na zobrazenie udalostí.

Na konci, tieto vedú k HTML a štýlu zmeny webovej stránky kalendára.

V skutočnej aplikácii sú tieto kroky trochu zmiešané a neobjednané alebo vynechané, ale to vysvetľuje jednoducho základnú, počiatočnú myšlienku za spracovanie udalostí.