Setările și tabelele bazei de date Todomator
Setările
Todomator își păstrează configurația în tabelul cl_config și o reîncarcă la fiecare 20 de minute. Ecranul de setări (Settings/read, Settings/save în schemas/settings.js) editează aceste chei și are nevoie de permisiunea settings:
| Cheie | Semnificație |
|---|---|
name | numele instanței |
color | culoarea principală |
token | token-ul API-ului |
minlogtime | cea mai scurtă intrare de timp, în minute (1 implicit) (urmărirea timpului) |
backup | când este activ, fiecare editare a Markdown-ului unui tichet stochează și o copie a textului, cu utilizatorul, adresa și browserul (tabelul tbl_ticket_backup) |
folderid | un folder implicit |
Permisiuni
O persoană este administrator când indicatorul sa este setat sau când lista de permisiuni conține admin. admin gestionează folderele și ecranele de administrare; settings permite setările; bot aparține utilizatorului încorporat al token-ului API. Sesiunile se află în tabelul tbl_session, iar cele expirate sunt șterse o dată pe zi.
Autentificarea cu doi factori
Fiecare utilizator are indicatorul is2fa, pe care persoana îl activează la schimbarea parolei (Users|password). Autentificarea are atunci doi pași (plugins/users/index.js): mai întâi e-mail și parolă; dacă contul are is2fa, Todomator trimite prin e-mail un cod din șase cifre (șablonul templates/mail-2fa.html) valabil 10 minute, iar persoana îl trimite înapoi pentru a termina. Încercările greșite sunt blocate după 10 încercări în 10 minute. Linia mail din fișierul config trebuie setată pentru ca codul să fie livrat.
Baza de date
Totul se află în schema public din PostgreSQL:
| Tabel | Ce conține |
|---|---|
cl_config | configurația |
cl_status | cele șase stări ale unui tichet |
cl_notification | tipurile de notificare |
tbl_user | utilizatorii: profil, hash-ul parolei, permisiuni și is2fa |
tbl_folder | folderele (clienți și proiecte) |
tbl_tag | etichetele |
tbl_ticket | tichetele |
tbl_ticket_comment | comentariile tichetelor |
tbl_ticket_time | intrările de timp |
tbl_ticket_bookmark | semnele de carte ale fiecărui utilizator |
tbl_ticket_unread | starea de necitit pe utilizator și tichet |
tbl_ticket_data | date libere ale unui tichet (data_read / data_save) |
tbl_ticket_backup | copii ale Markdown-ului unui tichet (setarea backup) |
tbl_notification | notificările utilizatorilor |
tbl_file | fișierele care au fost încărcate |
tbl_session | sesiunile |
Fă copii de siguranță ale acestei scheme ca pentru orice altă bază de date PostgreSQL. Pentru o actualizare, aplică scripturile database_*.sql din depozit care sunt mai noi decât versiunea ta (instalarea Todomator).