api.supprLabel (NEW)
Supprime complètement un label de la base et par cascade l’enlève donc de toutes les entrées auquel il est associé.
Use cases
Supprimer un label
Lancé par
- utilisateur
- système
Request
Method | URL |
---|---|
DELETE |
api/supprLabel/<label> |
Type | Params | Values | Details |
---|---|---|---|
URL |
label |
label_id |
Identifiant du label |
DELETE |
masters |
enum{user_id, group_id, all} |
Propriétaires du label |
DELETE |
approval[1] |
int |
Nombre de votes en faveur de la suppression du label |
DELETE |
user |
user_id |
Identifiant de l'utilisateur |
Response
Status | Response |
---|---|
200 | Si le label est personnel (test sur le paramètre masters), on demande confirmation puis le label est supprimé. Si c'est un label de groupe, on demande confirmation (à l'utilisateur qui initie la suppression), le label n'est plus affiché sur l'interface du lexique de groupe. Si le label était apposé à au moins un mot-vedette, on affichera sur la page de gestion des labels de l'ensemble des masters (sauf celui qui a effctué la suppression) le label en semi-transparence avec la mention "supprimé" et 2 options : Confirmer suppression (cela fait disparaitre le label de l'interface) - Faire une copie perso du label et supprimer. Lorsque tous les masters ont fait un choix, OU que n semaines sont passées depuis la suppression, suprimer le label de la base. Si c'est un label public : si le label est appliqué à 0 mots-vedettes OU (le paramètre visibility a 0 couple {user_id, list{lexicon}} où list{lexicon} est non nul) OU (le paramètre visibility a 1 couple {user_id, list{lexicon}} où list{lexicon} est non nul ET c'est le même user_id qui demande la suppression), demander confirmation et supprimer le label. Sinon, afficher un comtpeur de votes à côté du label. Si le label recueille un nombre de votes suffisant (approval > n, disons 7), on affichera sur la page de gestion des labels de l'ensemble des masters (sauf celui qui a effctué la suppression) le label en semi-transparence avec la mention "supprimé" et 2 options : Confirmer suppression (cela fait disparaitre le label de l'interface) - Faire une copie perso du label et supprimer. Lorsque tous les masters ont fait un choix, OU que n semaines sont passées depuis la suppression, suprimer le label de la base. |
401 ou 403 | Utilisateur non authentifié ou requête non autorisée (TODO : définir) |
500 | {"error":"Something went wrong. Please try again later."} |