FIT-odevzdávač

je PHP serverová aplikace určená pro zjednodušení odevzdávání studentských testů (souborů) při výuce (primárně BI-CAO).

Konfigurace – zprovoznění

Do určeného prostoru na webovém serveru umístit obsah adresáře web. Poté je třeba nastavit několik drobností:

  • přístupy učitelů: username každého učitele, který má mít možnost stahovat odevzdané soubory, musí být zadaný v poli $teachers v souboru (web/)index.php
  • přístup k databázi odevzdání: v souboru (web/)adminer/.htpasswd je třeba zadat jméno a heslo pro HTTP autentikaci (vzorově vyplněno uzivatel/heslo). (Nevíme-li jak, google poradí.) Dále je třeba v souboru (web/)adminer/.htaccess změnit absolutní cestu AuthUserFile na opravdovou cestu.
  • případně obnova databáze: pokud by bylo třeba obnovit databázi, lze použít vzorový soubor prázdné databáze tools/log.db, případně skriptem tools/install.php vygenerovat databázi novou.

Používání

Student

Tedy kdokoliv ověřitelný školním LDAPem, kdo není v kódu uveden jako cvičíčí.

  1. otevře příslušnou stránku
  2. vyplní svůj školní login a heslo
  3. vybere soubor k odevzdání (libovolně pojmenovaný)
  4. klikne na "Odeslat soubor"
  5. zelená hláška potvrdí, že byl soubor v pořádku uložen v systému

Cvičící

Ten, kdo je v kódu uvedeni jako cvičící (a je ověřitelný školním LDAPem).

  1. otevře příslušnou stránku
  2. vyplní svůj školní login a heslo
  3. klikne na "Jsem cvičící"
  4. vyplní ID podle tohoto pravidla: {den}/{první hodina cvičení podle rozvrhu} např. "2/7" pro úterý od 12:45, "4/9" pro čtvrtek od 14:30
  5. stáhne se mu ZIP archiv se všemi odevzanými soubory pro dané cvičení

Jak to funguje

  • studenti mohou pouze odesílat, cvičící mohou pouze stahovat
  • studenti mohou odevzdávat vícekrát, ukládá se každé odevzdání
  • studentské odevzdání se podle času a dne v týdnu automaticky třídí do odpovídajících cvičení
  • soubory odeslané studenty jsou přejmenovány podle jejich username a času odeslání, přípona je vždy přejmenovaná na ".nb"
  • do databáze odevzdání se loguje každé odeslání (username, čas, IP adresa, originální název souboru); přístup je možný z prohlížeče pomocí adresy (web/)adminer/(index.php)
  • soubory se automaticky nijak neodstraňují, případný "reset" odevzdávače na další týden je nutné provést ručním odstraněním souborů (adresářů) (web/)data/[1-7]
  • pokud se odevzdává na více místech najednou, je nutné tento odevzdávač zprovoznit ve více oddělených instancích

Stav odevzdání

Je možné průbežně vypisovat stav odevzdání - aby si studenti mohli kontrolovat, zda se jim odevzdání podařilo. Je k tomu nutný přístup k příkazové řádce v místě, kde jsou uložena data.

Viz soubor (web/)data/vypisZacJmena.sh

TODO

Aneb co by šlo vylepšit:

  • podrobnější popis chyb
  • indikace správného přihlášení studenta/cvičícího (aneb: jako kdo jsem přihlášen?)
  • lepší správa cvičících (databáze? GUI?)
  • přímá podpora paralelních cvičení
  • podpora archivace/promazání