From version < 3.26 >
edited by Josef Vencl
on 2020/11/17 09:36
To version < 11.3 >
edited by Josef Vencl
on 2022/04/19 13:35
< >
Change comment: (Autosaved)

Summary

Details

Page properties
Content
... ... @@ -20,8 +20,10 @@
20 20  Je důležité, jaký stav k souboru zvolíme. Jedná-li se skutečně o certifikát, je nutné zvolit takový stav aktivity, kdy je aktivita úspěšně splněna. Při chybné volbě stavu nemusejí být vyplněny všechny položky.
21 21  )))
22 22  
23 -**Stažení vygenerovaného certifikátu** může provést administrátor nebo student, jem je aktivita přiřazena, zachto podmínek:
23 +**Stažení vodního souboru**, podle kterého se generuje certifikát, může administrátor v [[Detailu aktivity, tabu Dokumenty 💻>>doc:Main.Official manuals.Competent - Uživatelská příručka.Uživatelské rozhraní.Administrátorské rozhraní.Obrazovka Aktivity.Detail aktivity.WebHome]], kde jsou vypsány všechny přiřazené soubory včetně mnosti je stáhnout.
24 24  
25 +**Stažení vygenerovaného certifikátu** může provést administrátor aktivity nebo student, jemuž je aktivita přiřazena, za těchto podmínek:
26 +
25 25  * Aktivita musí být ve stavu, který je zároveň nastaven i u přiřazeného souboru
26 26  * Administrátor musí mít přístup k aktivitě i uživateli (uživatel se zobrazí v detailu dané aktivity v tabu Uživatelé)
27 27  
... ... @@ -42,7 +42,40 @@
42 42  (% class="box warningmessage" %)
43 43  (((
44 44  **(4)** I pro Milana Hakuze se tlačítko pro stažení certifikátu zobrazilo, i když nebyl v plnění úspěšný.
45 -
47 +CUid acqjp7
46 46  )))
47 47  
48 48  = Tvorba šablony ODT =
51 +
52 +(% class="box" %)
53 +(((
54 +Šablony certifikátů vytváříme v textových programech typu LibreOffice ([[web>>https://cs.libreoffice.org/download/download/]]), které umožňují ukládat ve formátu ODT. Nad rámec tohoto formátu označíme místa pro vložení dat pomocí //placeholderů //ve formátu ##${název}## a pro případnou manipulaci se vstupními daty využijeme skriptovací jazyk ZenScript založený na Javascriptu.
55 +)))
56 +
57 +Šablona certifikátu se zpracovává proti vstupním datům, které jsou k dispozici pro skript. Tento skript data přetvoří do takové podoby, aby je bylo možné složit na požadovaná místa.
58 +
59 +V následujícím textu budeme představíme doporučený postup při tvorbě šablon a zároveň ukážeme, jak systém funguje.
60 +
61 +== 1. Úprava statického dokumentu ==
62 +
63 +* Ve spolupráci s grafikem vytvoříme požadovaný vzhled certifikátu. Můžeme jej naplnit nesmyslnými daty (ta později nahradíme), abychom odladili velikost písma nebo rozsah na stránce.
64 +* Při nahrazování se pro celou proměnnou použije formátování aplikované na znak dolaru. Můžeme to využít ve chvíli, kdy jsou názvy proměnných příliš dlouhé a rozložení dokumentu rozrušují.
65 +* Jednotlivé proměnné (jméno, příjmení, vystavení dokumentu apod.) uzavřeme do závorek za znakem dolaru, (% style="background-color:#bdc3c7" %)##${název proměnné}##(%%), např. chceme-li vypsat jméno prvního uživatele, bude zápis vypadat takto: (% style="background-color:#bdc3c7" %)##${SERVER.user.firstName}##(%%) 
66 +[[image:Certificate-script-placeholders.png]]
67 +Ukázka proměnných v šabloně. Vypisujeme zde postupně jméno a příjmení uživatele a aktivitu, kterou absolvoval. Protože mohou být proměnné delší, než jsou skutečná jména **(1)** a mohla by v šabloně vadit, můžeme využít vlastnosti, kdy se použije formátování prvního znaku, tedy dolaru ((% style="background-color:#bdc3c7" %)##$##(%%)). Díky tomu může šablona vypadat konsistentněji a při návrhu více odpovídat požadovanému výsledku. V případě **(2)** jsme použili co nejmenší písmo, v případě **(3)** mezery mezi písmeny. Výsledný text bude formátován stejně jako znak dolaru.
68 +
69 +Datový objekt se jmenuje (% style="background-color:#bdc3c7" %)##SERVER##(%%)## ##a obsahuje data uživatelského přístupu k aktivitě rozdělená do podobjektů user, activity a access. Jejich pole (popsaná na odkazovaných stránkách) jsou dostupná k výpisu.
70 +
71 +* activity - objekt [[Aktivita 📖>>doc:Main.Official manuals.Competent - Uživatelská příručka.Slovník.Aktivita.WebHome]]
72 +* user - objekt [[Uživatel 📖>>doc:Main.Official manuals.Competent - Uživatelská příručka.Slovník.Uživatel.WebHome]]
73 +* access - [[Přiřazení Aktivity Uživateli (přístup) 📖>>doc:Main.Official manuals.Competent - Uživatelská příručka.Slovník.Přiřazení Aktivity Uživateli (přístup).WebHome]]
74 +
75 +(% class="box infomessage" %)
76 +(((
77 +**Parametry** jednotlivých objektů naleznete ve [[Slovníku 📖>>doc:Main.Official manuals.Competent - Uživatelská příručka.Slovník.WebHome]] u jednotlivých objektů. Jedná se o anglické názvy uvedené v nadpisu daného parametru. Např. datum poslední úpravy aktivity by mělo být uloženo v parametru ##lastUpdated## a jeho hodnotu ve skriptu získáme ze ##SERVER.activity.lastUpdated##.
78 +**Nepovinné parametry** (parametry [[subtypu 📖>>doc:Main.Official manuals.Competent - Uživatelská příručka.Slovník.Subtyp.WebHome]]) jsou seskupeny do podobjektu params (##SERVER.user.params.*##)
79 +)))
80 +
81 +== 2. Zpracování dat skriptem ==
82 +
83 +Vedle přímého zápisu vstupních dat (výše) můžeme provést zpracování pomocí skriptu vloženého do komentáře na začátek dokumentu. Jedná se o javascript zpracovávaný pomocí knihovny //javax.script//. Můžeme tedy využít základní funkce javascriptu, výpočty a objekty (jako Date).
Certificate-script-placeholders.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.jvencl
Size
... ... @@ -1,0 +1,1 @@
1 +36.0 KB
Content
sebedokumentujici-sablona.odt
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.jvencl
Size
... ... @@ -1,0 +1,1 @@
1 +54.1 KB
Content