ForgeTodomator
fr

Todomator

Tickets, dossiers, statuts et étiquettes dans Todomator

Todomator · todomator@1.7 todomatorticketsfolderstagscomments

Le centre de Todomator est le ticket (table tbl_ticket, schéma Tickets dans schemas/tickets.js). Tout le reste organise des tickets ou en dépend.

Ce que contient un ticket

ChampSignification
namele titre (obligatoire)
statusidle statut ; un nouveau ticket est pending sauf indication contraire
folderidle dossier (client ou projet) auquel il appartient
ownerid, userid, watcheridl’auteur, les personnes assignées et les personnes qui ne font que le suivre
ispublicvisible de tous ; un ticket public n’a pas de personnes assignées
ispriority, isbillableune marque de priorité et un indicateur facturable
markdown, htmlle contenu (l’interface utilise Markdown)
tagsune liste d’étiquettes
date, deadlinele jour du ticket (aujourd’hui par défaut) et une échéance facultative
estimate, workedl’estimation et les minutes déjà travaillées (suivi du temps)
reference, sourcetexte libre pour relier le ticket à quelque chose d’extérieur
parentidle ticket parent, pour les sous-tâches
attachmentsles fichiers du ticket
attrsdonnées JSON libres
callbackune adresse qui reçoit le ticket quand il change (API)

Les six statuts

La table cl_status est créée avec : pending (Pending), open (In progress), review (Review), postponed (Postponed), note (Note) et closed (Closed). Les noms sont traduits dans la langue de l’utilisateur.

Qui peut voir un ticket

Un ticket est visible de son propriétaire, des personnes de userid, des personnes de watcherid et de tout le monde quand ispublic est activé. La liste des dossiers qu’un utilisateur voit est limitée de la même façon : un dossier n’apparaît que si l’utilisateur peut y voir un ticket (les utilisateurs avec sa voient tout). La liste des tickets accepte type (par exemple pending, postponed, review, assigned, note, unread ou all), q (recherche), folderid, date, skip et limit (10 par défaut).

Dossiers et étiquettes

Un dossier a un nom, une icône, une couleur, un client, un e-mail et un téléphone, et des indicateurs : isbillable (les nouveaux tickets en héritent), isprivate, ispinned, isarchived et isdisabled. Seules les personnes ayant la permission admin (ou les administrateurs) gèrent les dossiers. Une étiquette a un nom, une couleur et une icône, et peut appartenir à un dossier.

Autour du ticket

  • Commentaires (Comments|create, Comments|update, Comments|remove) : texte Markdown attaché à un ticket.
  • Marques de non-lu et signets : chaque utilisateur a son propre état de non-lu et ses signets pour un ticket.
  • Liens entre tickets et clonage d’un ticket.
  • Historique et journaux des modifications d’un ticket.
  • Pièces jointes : POST /upload/ accepte jusqu’à 5 Mo par requête. L’adresse d’un fichier est signée (/download/<id>-<signature>.<ext>) : les images, la vidéo et les PDF s’ouvrent dans le navigateur et les autres types sont téléchargés.
  • Mises à jour en direct : le WebSocket envoie un événement refresh uniquement aux personnes qui peuvent voir le ticket, et indique aux autres qui regarde un ticket en ce moment.