Files
Lesstime/frontend/content/help/07-admin.md
Matthieu 2a0b202d32 feat(absences) : avancement module absences + suppression du portail client
Deux lots regroupés sur la branche feat/absence-management.

Suppression complète du portail client :
- retire ROLE_CLIENT (security.yaml) ; User::getRoles() ajoute toujours ROLE_USER
- supprime l'entité ClientTicket (+ repo, states, relations), User.client et
  User.allowedProjects, NotificationService, ProjectAllowedExtension, le bloc
  ROLE_CLIENT de MailAccessChecker
- front : pages /portal, layout portal, composants client-ticket/,
  AdminClientTicketTab, services/dto/i18n/docs associés
- fixtures : retire les users client-liot / client-acme
- migration Version20260522110000 (drop client_ticket, user_allowed_projects,
  colonnes liées ; task_document.task_id -> NOT NULL)
- tests : retire les cas obsolètes testant le blocage des clients sur le mail

Module gestion des absences (WIP) :
- entités / migrations (Version20260521160000, Version20260522090000)
- pages absences.vue / team-absences.vue, composants frontend/components/absence/
- services front, AccrueLeaveCommand, PublicHolidayController

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-22 11:31:31 +02:00

2.5 KiB

Administration

🛡️ Section visible uniquement par les utilisateurs ROLE_ADMIN.

L'admin (/admin) est divisé en plusieurs onglets, chacun gérant une ressource globale ou une intégration.

Onglet Clients

  • Liste des clients (entreprise / organisation)
  • Champs : nom, email, téléphone, adresse
  • Lier un client à des projets

Onglet Workflows

Nouveau — remplace l'ancien onglet Statuts.

  • Lister les workflows existants
  • Créer un workflow : nom, isDefault (un seul à la fois), liste de statuts éditables inline
  • Chaque statut : libellé, couleur, position, catégorie (5 valeurs canoniques), isFinal
  • Éditer un workflow modifie les statuts (sync intelligent : create / update / delete par diff)

⚠️ Supprimer un workflow lié à un projet renvoie une erreur 409. Réassigne d'abord les projets.

Onglet Efforts

  • Tailles d'effort (S, M, L, XL, XXL)
  • Globales (partagées entre tous les projets)

Onglet Priorités

  • Niveaux de priorité (Basse, Moyenne, Haute) + couleur
  • Une priorité "Haute" affiche un drapeau rouge mdi:flag-variant sur la card

Onglet Tags

  • Tags globaux (tâches et time entries)
  • Couleur personnalisable
  • Pas de hiérarchie (flat list)

Onglet Utilisateurs

  • Créer / éditer / désactiver
  • Rôles : ROLE_ADMIN, ROLE_USER
  • Reset password depuis l'admin

Onglet Gitea

  • URL serveur + token API
  • Lier un projet à un repo : giteaOwner + giteaRepo
  • Active les fonctionnalités branches / PRs sur les tâches

Onglet BookStack

  • URL + token API
  • Lier un projet à un shelf BookStack (bookstackShelfId)
  • Les tâches peuvent être liées à des pages BookStack (cf. TaskBookStackLink)

Onglet Zimbra

  • URL serveur + credentials (chiffrés via libsodium)
  • Configure le calendrier CalDav par défaut
  • Test de connexion intégré
  • Active la sync calendrier sur les tâches planifiées

Onglet Mail

Configure la boîte mail partagée (OVH) lue dans la section Messagerie.

  • Réception (IMAP) : hôte, port (993 par défaut), chiffrement (SSL / TLS / aucun)
  • Envoi (SMTP) : hôte, port (465 par défaut), chiffrement
  • Identifiants : nom d'utilisateur + mot de passe (chiffré côté serveur, jamais réaffiché — un indicateur signale qu'un mot de passe est déjà enregistré), et chemin du dossier Envoyés
  • Toggle enabled : active la messagerie
  • Test de connexion intégré (vérifie l'accès IMAP et compte les dossiers)