Certifikát je listina potvrzující, že uživatel splnil nějakou aktivitu a dosáhl tak určité úrovně. Competent tyto certifikáty generuje automaticky na základě dosažených výsledků a šablony ODT. Tato šablona obsahuje jednak formátování pro výsledný certifikát, jednak také řízení pro jeho vygenerování.

Správa šablon v Competentu od nahrání ke stažení

Šablony do Competentu nahráváme stejným způsobem jako další soubory, přes obrazovku Soubory 💻 nebo přes otevřený vedlejší panel Výběr souboru 💻. Na obrazovce Soubory musíme nahraný soubor ještě označit jako šablonu certifikátu.

A-Files-markAsCertTemplate.png
Soubor je již nahrán. Po kliknutí pravým tlačítkem myši zobrazíme kontextovou nabídku souboru a označíme soubor jako šablonu certifikátu.

Přiřazení šablony k aktivitě provedeme stejně jako přiřazení jakéhokoli jiného souboru (viz Detail aktivity, tab Dokumenty 💻).

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.

Stažení původního souboru, podle kterého se generuje certifikát, může administrátor v Detailu aktivity, tabu Dokumenty 💻, kde jsou vypsány všechny přiřazené soubory včetně možnosti je stáhnout.

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:

  • Aktivita musí být ve stavu, který je zároveň nastaven i u přiřazeného souboru
  • Administrátor musí mít přístup k aktivitě i uživateli (uživatel se zobrazí v detailu dané aktivity v tabu Uživatelé)

Přiřazený uživatel ve studentském módu přejde na detail sobě přiřazené aktivity (Detail uživatelské aktivity 💻) a stáhne soubor s certifikátem (přp. všechny soubory v archivu ZIP). Soubor s certifikátem již bude vyplněný a připravený k možnému vytištění.

Administrátor s přístupem do detailu aktivity v seznamu uživatelů uvidí možnost stažení uživatelského certifikátu. Po kliknutí se stáhne požadovaný certifikát.

A-ActivityDetail-userCertificatesDownload.png

Administrátorský pohled na seznam uživatelů u aktivity

(1) Uživatel splnil aktivitu, certifikát ale není ke stažení. Pro uživatele je aktivita stále spuštěna a pro tento stav nebyla šablona označena.

(2) Druhý uživatel aktivitu ještě nesplnil.

(3) Kamil Dvořák má aktivitu splněnou ve stavu Dokončeno. Zobrazilo se mu tedy tlačítko pro stažení certifikátu ico-downloadCert.png.

(4) I pro Milana Hakuze se tlačítko pro stažení certifikátu zobrazilo, i když nebyl v plnění úspěšný.
CUid acqjp7

Tvorba šablony ODT

Šablony certifikátů vytváříme v textových programech typu LibreOffice (web), 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.

Š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.

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.

1. Úprava statického dokumentu

  • 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.
  • 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í.
  • Jednotlivé proměnné (jméno, příjmení, vystavení dokumentu apod.) uzavřeme do závorek za znakem dolaru, ${název proměnné}, např. chceme-li vypsat jméno prvního uživatele, bude zápis vypadat takto: ${SERVER.user.firstName} 
    Certificate-script-placeholders.png
    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 ($). 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.
  • Jestliže proměnná nemá hodnotu, nevypíše se nic. Pokud ale neexistuje ani tato proměnná, vypíše se do PDF chybový stav, např. !N/A{User.params.certificateId}.
  • Vypisování netextových polí má následující výchozí chování. K jinému naformátování rozšiřte šablonu skriptem:
    • Data typu Date (datum, viz Datové typy 📖) se vypisují ve formátu <den>.<mezera><měsíc>.<mezera><rok>.
    • Data typu DateTime (datm a čas, viz Datové typy 📖) se vypisují ve formátu <den>.<měsíc>.<mezera><rok><mezera><hodina-24h>:<minuta>:<vteřina>.

Datový objekt se jmenuje 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.

Parametry jednotlivých objektů naleznete ve Slovníku 📖 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.
Nepovinné parametry (parametry subtypu 📖) jsou seskupeny do podobjektu params (SERVER.user.params.*)

2. Zpracování dat skriptem

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. Komentář se skriptem je povinně uveden textem: /*ZenScript*/;, kvůli odlišení od jiných typů komentářů.

cert_source_vs_output.png

Tags:
Created by Josef Vencl on 2020/11/16 11:08