Uvod u STRIX engine
Svaka web stranica koju engine generira i koja ima svoj URL se strogo veže uz jednu kategoriju (kategorija). Za svaku stranicu, tj. kategoriju engine učitava iz baze njen izgled i sadržaj. Izgled stranice je određen pre-definiranim glavnim templateom (template) i rasporedom modula unutar nje. Moduli (modules) su funkcionalno neovisni dijelovi web stranice koji generiraju konačan sadržaj. Za svaku kategoriju, moduli se po želji odabiru i raspoređuju unutar nje (layout).
Više uređenih kategorija čini jedan site (site). Module je moguŚe definirati i za cijeli site, u kojem slučaju se oni prikazuju iznad ili ispod modula definiranih za pojedinu stranicu (pre_layout).
Engine podržava do 3 uređene (poredane) liste modula (npr. za lijevi, srednji i desni stupac). Podržana je i jedna ne-uređena (slobodna) lista modula, čija pozicija prikaza je definirana unutar glavnog templatea (npr. glavna navigacija, baneri, footer, breadcrumbs, datum i vrijeme i slične). Prilikom generiranja stranice, engine dohvati sve instance modula za trenutnu kategoriju, izvrši ih, a njihove generirane sadržaje posloži u glavni template.
Opisi glavnih relacija
kategorija
Foreign-key constraints:
"$3" FOREIGN KEY (site_id) REFERENCES site(id) ON UPDATE CASCADE ON DELETE
CASCADE
"$2" FOREIGN KEY (lang) REFERENCES lang(id) ON UPDATE CASCADE ON DELETE CASCADE
"$1" FOREIGN KEY (template_id) REFERENCES "template"(id) ON UPDATE CASCADE ON
DELETE CASCADE
site
template
Foreign-key constraints:
"$1" FOREIGN KEY (design_id) REFERENCES design(id)
Glavni template (tfilename) je html/smarty file, koji se svaki put koristi prilikom generiranje konačne stranice. U fileu su definirane pozicije za prikaz uređenih i slobodih modula, kao i includeovi za CSS i JS.
design
layout
Foreign-key constraints:
"$3" FOREIGN KEY (module_id) REFERENCES modules(id) ON UPDATE CASCADE ON DELETE CASCADE
"$2" FOREIGN KEY (kategorija_id) REFERENCES kategorija(id) ON UPDATE CASCADE ON DELETE CASCADE
"$1" FOREIGN KEY (user_id) REFERENCES users(id) ON UPDATE CASCADE ON DELETE CASCADE
pre_layout
Foreign-key constraints:
"$2" FOREIGN KEY (module_id) REFERENCES modules(id) ON UPDATE CASCADE ON DELETE CASCADE
"$1" FOREIGN KEY (template_id) REFERENCES "template"(id) ON UPDATE CASCADE ON DELETE CASCADE
modules