Tvorba webových stránok – Manuál k redakčnému systému Rheia 1.5, Roman Horváth, © 2021, powered by Rheia

Obsah stránky sa číta, prosím čakajte…

» Na týchto stránkach momentálne aktívne pracujeme. «

 TWS – Manuál k RS Rheia 1.5 – Obsah | Objekty  « Automatická úprava hodnôt s pomocou vzorkovníkov – modul schemas  |  Výpočty a iné úpravy obsahu » 

Spojenie makier s objektmi je veľmi časté, preto vznikli dve verzie príkladu zameraného na túto problematiku. (Prvá verzia je tu.) Táto verzia príkladu rozširuje prvú verziu, preto odporúčame sa najprv oboznámiť s ňou.

 

Majme makro, ktoré je definované takto:

#makro:odkazNaPracovníka,{$$1#titulyPred$(Oddeľovač: ,$1#titulyPred)$$1
$(Oddeľovač:, ,$1#titulyZa)$$1#titulyZa|manual?$1}

Definície objektov sú rovnaké ako v kapitole Rozširujúce možnosti použitia objektov. Použitie makrazdrojovom texte bude vyzerať takto:

makro(odkazNaPracovníka,hrasko)\
makro(odkazNaPracovníka,certova)

Výsledkom bude vytvorenie nasledujúcich dvoch odkazov:

(Po kliknutí na nich budú otvorené prázdne „profily“ pracovníkov.)

 

Makro definované v tomto príklade v podstate len používa rôzne spôsoby vloženia hodnôt objektov a ich vlastností (pozri súvisiace kapitoly: Základné spôsoby použitia objektovRozširujúce možnosti použitia objektov).

Jadrom makra je nasledujúci kód:

  {$$1#titulyPred$(Oddeľovač: ,$1#titulyPred)$$1$(Oddeľovač: 
, ,$1#titulyZa)$$1#titulyZa|/manual?$1}

ktorý teraz rozdelíme na jednotlivé časti a podrobne vysvetlíme (pričom sa zameriame na rozvinutie hodnôt objektov a ich vlastností).

Všetky výskyty reťazca $1 sú parametrom makra, za ktorý je dosadená prislúchajúca hodnota. Napríklad pri vložení nasledujúceho reťazca (makra) do zdrojového textu:

  makro(odkazNaPracovníka,hrasko)

je namiesto $1 dosadená hodnota hrasko, čiže po manuálnom dosadení rozvinutého makra do zdrojového textu by sme získali nasledujúci kód:

  {$hrasko#titulyPred$(Oddeľovač: ,hrasko#titulyPred)$hrasko$(Oddeľovač: 
, ,hrasko#titulyZa)$hrasko#titulyZa|/manual?hrasko}

Po takomto rozvinutí sa dá jednoduchšie vysvetliť, z akých častí kód skutočne pozostáva. Predtým ako budeme pokračovať však treba odstrániť jednu vrstvu. Vonkajšia vrstva je tvorená obálkou kódu tvoriaceho odkaz, ktorými sa zaoberá kapitola Tvorba odkazov. Konkrétnejšie ide o jednoduchý odkaz so zmenou zobrazovaného textu odkazu, ktorý pozostáva z týchto častí: {«text odkazu»|«adresa odkazu»}. Odoberme všetky časti tejto vrstvy. Zistíme pri tom, že textom odkazu je táto časť kódu:

  $hrasko#titulyPred$(Oddeľovač: ,hrasko#titulyPred)$hrasko$(Oddeľovač: 
, ,hrasko#titulyZa)$hrasko#titulyZa

a adresou odkazu táto časť:

  manual?hrasko

Druhá časť (adresa) je jednoduchá, nie je ju potrebné ďalej rozvíjať. Zaoberajme sa preto ďalej tým, z čoho pozostáva časť tvoriaca text odkazu. Ide o kód zložený z viacerých spôsobov vloženia obsahu objektu alebo jeho vlastnosti (pozri súvisiace kapitoly: Základné spôsoby použitia objektovRozširujúce možnosti použitia objektov). Môžeme ho rozdeliť na tieto menšie celky:

  $hrasko#titulyPred základný spôsob vloženia vlastnosti objektu
  $(Oddeľovač: ,hrasko#titulyPred) vloženie oddeľovača
  $hrasko základný spôsob vloženia hodnoty objektu
  $(Oddeľovač:, ,hrasko#titulyZa) vloženie oddeľovača
  $hrasko#titulyZa základný spôsob vloženia vlastnosti objektu

Zhrňme teraz do tabuľky výsledky uvedených častí kódu (čiže to, čo tieto časti zobrazia návštevníkovi stránky) a doplňme ich o slovné spresnenie:

Kód Výsledok Spresnenie
$hrasko#titulyPred Ing. pracovníkov titul pred menom
$(Oddeľovač: ,hrasko#titulyPred) medzera (pretože titul pred menom jestvuje)
$hrasko Ján Hraško celé meno a priezvisko pracovníka (hlavný obsah objektu)
$(Oddeľovač:, ,hrasko#titulyZa) , čiarka a medzera (pretože titul za menom jestvuje)
$hrasko#titulyZa PhD. pracovníkov titul za menom

Z tabuľky by malo byť jasné, čo a prečo sa zobrazí návštevníkovi stránky po dosadení názvu objektu hrasko do makra, ktoré sme definovali na začiatku tohto príkladu (predpokladajme, že je objekt hrasko definovaný tak, ako je to uvedené v kapitole Rozširujúce možnosti použitia objektov).

Podobné vysvetlenie by sme mohli rozpísať s dosadením iného objektu do tohto makra. V kapitole Rozširujúce možnosti použitia objektov sú definované tri objekty, no z nich sú ako pracovníci definovaní (resp. zamýšľaní) len hraskocertova. Z pohľadu RS Rheia sú všetky objekty rovnocenné. Keby sme do makra dosadili objekt texty, získali by sme prázdny výsledok, pretože tento objekt nemá definovaný hlavný obsah a ani jednu skupinu titulov.