Projet

Général

Profil

Development #28732

étendre /api/users/forms pour pouvoir prendre en compte les permissions d'un agent

Ajouté par Frédéric Péters il y a plus de 5 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
07 décembre 2018
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Aujourd'hui l'API renvoie toutes les demandes concernant l'usager, on voudrait pouvoir ajouter à cet appel un paramètre pour que les demandes soient également filtrés selon les permissions d'un agent.

A priori comme /api/forms, par défaut on ne retournerait pas ce qui n'est pas lisible, on accepterait un ignore-roles=on pour tout retourner, et on ajouterait un readable: true/false selon la possibilité pour l'agent de voir la demande en entier.

Ou, comme on peut déjà faire /api/users/<user id>/forms, on étendrait ça pour pouvoir faire /api/users/<user uuid>/forms, et dans cette situation alors le ?NameID correspondrait à l'agent.

~~

Côté appelant, combo, je n'arrive pas encore à déterminer quelle forme serait la plus agréable, à voir dans un ticket combo.


Fichiers


Demandes liées

Lié à Combo - Development #28733: pouvoir filter les cellules "demandes d'un usager" selon les permissions de l'agent connectéFermé07 décembre 2018

Actions

Révisions associées

Révision 5d67c72b (diff)
Ajouté par Frédéric Péters il y a plus de 5 ans

api: filter user forms when requested by another user (#28732)

Historique

#1

Mis à jour par Frédéric Péters il y a plus de 5 ans

  • Lié à Development #28733: pouvoir filter les cellules "demandes d'un usager" selon les permissions de l'agent connecté ajouté
#3

Mis à jour par Frédéric Péters il y a plus de 5 ans

Sans distinction ignore-roles=on/off, que je ne trouve pas nécessaire (ce qui permet ainsi à la cellule combo de directement fonctionner).

#4

Mis à jour par Thomas Noël il y a plus de 5 ans

Éventuellement j'ajouterais juste un petit commentaire sur le "if self.user" qui expliquerait le contexte : ce self.user signifie que l'appel de la forme /api/user/<nameid>/forms et dans ce cas le nameid de la query-string est la personne qui consulte la liste, très certainement en backoffice.

Je me suis demandé comment ça réagirait avec les draft en cas de include-draft, mais en backoffice c'est jamais quelque chose qu'on fait (liste les brouillons d'un usager) donc on peut considérer qu'on s'en fiche complétement et j'ai arrêté de refléchir.

(et tiens, on n'a rien ajouté dans la doc sur l'existence de forme /api/user/<nameid/ ; d'ailleurs cette forme vient d'un commit f0e88b1c qui ne dit même pas son numéro de ticket, c'est un vrai scandale)

#5

Mis à jour par Thomas Noël il y a plus de 5 ans

  • Statut changé de Solution proposée à Solution validée

C'est un ack, donc (avec ou sans le commentaire)

#6

Mis à jour par Frédéric Péters il y a plus de 5 ans

  • Statut changé de Solution validée à Résolu (à déployer)

J'ai ajouté un commentaire et poussé,

commit 5d67c72b7b8e2662230429b58c83f86ddd3aaf5d
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Fri Dec 7 18:34:10 2018 +0100

    api: filter user forms when requested by another user (#28732)
#7

Mis à jour par Frédéric Péters il y a plus de 5 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF