Nastavení, příspěvky, soubory a návštěvníci CMS Total.js a kde je vše uloženo
Nastavení
Plugin Settings (settings_read, settings_save; oprávnění settings) upravuje konfiguraci, kterou CMS drží v metadatech webu a při každém startu ji načítá do CONF:
| Klíč | Význam |
|---|---|
name | název webu, používá se v <title> každé stránky kromě / a v názvu souboru zálohy |
url | veřejná adresa webu; CMS ji aktualizuje i z hostu požadavků administrace |
smtp | nastavení SMTP jako text JSON (server, from, user, password, port); settings_test je vyzkouší |
icon | ikona webu |
$tms, secret_tms | publikuje události přes TMS a tajemství tohoto spojení |
op_reqtoken, op_restoken | tokeny aplikace OpenPlatform; když jsou nastaveny oba, přihlášení do administrace nahradí přihlášení přes OpenPlatform |
totalapi | klíč pro služby Total.js API |
Pluginy mohou přidat další klíče, které se zobrazí ve stejném formuláři. Hodnoty ze souboru config ($api, cdn, salt a, pokud jej přidáte, token) se zde neupravují.
Příspěvky
Plugin Posts je malý správce článků uložených ve vlastním souboru NoSQL v úložišti. Příspěvek má name, category, picture, summary, body, reference, icon, color, hidden a date; administrace je vypisuje od nejnovějších (100 na stránku) a posts_categories vrací používané kategorie. Příspěvky jsou data pro váš vlastní kód: veřejný renderer CMS (controllers/default.js) je nevypisuje, takže je musí přečíst a vykreslit váš widget nebo cesta.
Soubory
Plugin Files ukládá nahrané soubory do úložiště souborů a označuje je jako veřejné. GET /download/<id>.<ext> obslouží veřejný soubor (jen veřejné; ostatní odpovídají 404). U obrázků ?s=<percent> vrátí menší JPEG (hodnota musí být od 10 do 80, s kvalitou 80) a ?download=1 vynutí stažení. Cesty nahrávání a jejich limity jsou v API administrace.
Návštěvníci a dashboard
Modul modules/visitors.js počítá návštěvy veřejných stránek přes skript /visitors.js, který obsahuje každá stránka: unikátní návštěvníky, zobrazení, prohlížeče, odkazující weby, vyhledávání, sociální sítě a přímý přístup, mobil a desktop, hodiny dne a lidi online (návštěvník je online 20 minut bez aktivity). Plugin Dashboard kreslí tato čísla z dashboard_stats, dashboard_online, dashboard_browsers, dashboard_referers a dashboard_pages.
OpenPlatform
Když jsou nastaveny op_reqtoken a op_restoken, CMS přihlašuje lidi přes OpenPlatform (modul modules/openplatform.js) a každý plugin přidá své oprávnění do seznamu, který OpenPlatform ukazuje při přiřazování skupin: pages, layouts, widgets, navigation, posts, files, redirects, variables, settings a admin. Pamatujte na pravidlo OpenPlatform: aplikace je viditelná jen pro skupiny, které jí přiřadíte.
Datový model
MAIN.db drží metadata webu (pages, layouts, widgets, redirects, vars, nav, config a storage) a ukládá se jako jeden dokument JSON s názvem meta v úložišti souborů. HTML každé stránky a layoutu je soubor v tomto úložišti, jehož název je id stránky nebo layoutu. FUNC.load() při startu načte metadata, zkompiluje widgety (spustí jejich funkci install) a znovu sestaví cache; FUNC.save() je zapíše zpět. Proto je záloha úložiště zálohou webu.