Mirador ne supporte pas l'édition collaborative. On va donc implémenter un lock d'édition (un peu comme un LabDoc LNB). Il n'y aura qu'un seul utilisateur éditant un même projet à la fois.
Scénario :
Utilisateur A ouvre le projet P1.
Le backend définit que P1 est locké pour X seconds pour A
Durant tous le temps d'édition de A sur P1 (cad onglet actif), le front end de A va envoyer un ping toutes les Y seconds.
A chaque reception du ping de A pour P1, le backend remet à X seconds le compteur de lock de P1
A priori il faut sauvegarder en même temps que le ping
Utilisateur B ouvre le projet P1.
Il est informé que A est en cours d'édition et qu'il ne pourra pas éditer
UI : Il ne peut pas faire de sauvegarde
MAE/MAEV sont désactivés
(FACULTATIF) Toutes les Y seconds, le front end de B va demander au backend si P1 est toujours locké si ce n'est plus le cas, le front end de B refresh le composant react ce qui permettra de revenir au début du scénario.
Rappel : restons simple, ne tombons pas dans la suringéniérie et la surfeature
WIP to trad
Mirador ne supporte pas l'édition collaborative. On va donc implémenter un lock d'édition (un peu comme un LabDoc LNB). Il n'y aura qu'un seul utilisateur éditant un même projet à la fois.
Scénario :
Rappel : restons simple, ne tombons pas dans la suringéniérie et la surfeature