Nastavenia a databázové tabuľky Todomatoru
Nastavenia
Todomator uchováva svoju konfiguráciu v tabuľke cl_config a každých 20 minút ju načíta znova. Obrazovka nastavení (Settings/read, Settings/save v schemas/settings.js) upravuje tieto kľúče a vyžaduje oprávnenie settings:
| Kľúč | Význam |
|---|---|
name | názov inštancie |
color | hlavná farba |
token | token API |
minlogtime | najkratší záznam času v minútach (predvolene 1) (sledovanie času) |
backup | keď je zapnuté, každá úprava Markdownu tiketu uloží aj kópiu textu s používateľom, adresou a prehliadačom (tabuľka tbl_ticket_backup) |
folderid | predvolený priečinok |
Oprávnenia
Osoba je správca, keď je nastavený príznak sa alebo keď zoznam oprávnení obsahuje admin. admin spravuje priečinky a administračné obrazovky; settings povoľuje nastavenia; bot patrí vstavanému používateľovi tokenu API. Relácie žijú v tabuľke tbl_session a vypršané sa mažú raz denne.
Dvojfaktorová autentifikácia
Každý používateľ má príznak is2fa, ktorý osoba zapne pri zmene hesla (Users|password). Prihlásenie má potom dva kroky (plugins/users/index.js): najprv e-mail a heslo; ak má účet is2fa, Todomator pošle e-mailom šesťmiestny kód (šablóna templates/mail-2fa.html) platný 10 minút a osoba ho pošle späť na dokončenie. Nesprávne pokusy sa blokujú po 10 pokusoch za 10 minút. Aby sa kód doručil, musí byť nastavený riadok mail v súbore config.
Databáza
Všetko je v schéme public databázy PostgreSQL:
| Tabuľka | Čo obsahuje |
|---|---|
cl_config | konfigurácia |
cl_status | šesť stavov tiketu |
cl_notification | typy oznámení |
tbl_user | používatelia: profil, hash hesla, oprávnenia a is2fa |
tbl_folder | priečinky (zákazníci a projekty) |
tbl_tag | štítky |
tbl_ticket | tikety |
tbl_ticket_comment | komentáre tiketov |
tbl_ticket_time | záznamy času |
tbl_ticket_bookmark | záložky každého používateľa |
tbl_ticket_unread | stav neprečítaného na používateľa a tiket |
tbl_ticket_data | voľné dáta tiketu (data_read / data_save) |
tbl_ticket_backup | kópie Markdownu tiketu (nastavenie backup) |
tbl_notification | oznámenia používateľov |
tbl_file | súbory, ktoré boli nahrané |
tbl_session | relácie |
Túto schému zálohujte ako každú inú databázu PostgreSQL. Pri aktualizácii použite skripty database_*.sql z repozitára, ktoré sú novšie ako vaša verzia (inštalácia Todomatoru).