toulouse-maelis: get users linked to a family (#77295) #239
No reviewers
Labels
No Label
No Milestone
No Assignees
4 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: entrouvert/passerelle#239
Loading…
Reference in New Issue
No description provided.
Delete Branch "wip/77295-parsifal-get-linked-users"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Endpoint qui liste les NameID appaîrés à une famille,
complété avec les informations de l'usager obtenus via authentic.
d25159357a
to1b754bc3ba
à rebaser.
J'explicite le changement dans redmine via "demander des changements".
(ça ne m'engage pas à ensuite relire)
1b754bc3ba
to8ec1489154
Il y avait un effet de bord sur les services définis par la fixture wcs_service.
J'ai rajouté 2 commits pour remettre ça d’équerre.
(ça ne m'engage pas à ensuite relire)
J'ai mis un commentaire mais il n'a pas été repris, c'était :
8ec1489154
to019eb8572d
Je n'ai pas compris le texte du commit « toulouse-maelis: [tests] explicitely remove wcs service (#77295) » vu ce qu'il contient...
@ -1140,0 +1155,4 @@
)
def get_link_list(self, request, NameID=None, family_id=None, text_template=None):
if not text_template:
text_template = '{{ first_name }} {{ last_name }}'
Il faut mettre un « text_template='{{ first_name }} {{ last_name }}' » dans la définition de la fonction afin qu'on voit que c'est la valeur par défaut.
Mais en fait je pense qu'on pourrait ce passer de cette option qui sera compliquée à utiliser.
Et j'afficherais plus d'informations, quelque chose comme
prénom nom <email> (lié le jj/mm/aaaa ; compté créé le jj/mm/aaaa, dernière connexion le jj/mm/aaaa)
et trier la liste par ordre de date de création du Link. Ca aidera l'agent à savoir quoi faire.
Oui sinon la valeur par défaut n'apparaît pas.
J'ai corrigé pour l'existant, merci.
Oui, j'ai créé un fichier template dédié et j'ai laissé tomber la possibilité de modifier le template.
J'y reviendrais plus tard s'il le faut.
J'ai fait ça.
Fait.
toulouse-maelis: get users linked to a family (#77295)to WIP: toulouse-maelis: get users linked to a family (#77295)019eb8572d
to431a2bf173
431a2bf173
to1905276970
1905276970
to72f559927e
J'ai appliqué la correction partout.
WIP: toulouse-maelis: get users linked to a family (#77295)to toulouse-maelis: get users linked to a family (#77295)@ -725,4 +727,2 @@
result = self.get_family_raw(family_id)
if not text_template:
text_template = '{{ lastname }} {{ firstname }}'
Mais trois lignes plus bas cette méthode fait :
Clairement le paramètre text_template est obligatoire et ne peut pas être None. Il ne faudrait pas qu'il y ait =None dans la signature.
Et vraisemblbalement, un peu plus haut,
a un problème similaire : jamais on ne veut avoir un gabarit vide ici, il faudrait retirer le ='' de la signature.
Il y en a peut-être d'autres.
Merci. Désolé d'avoir laissé passé ça.
Je n'en ai pas vu d'autres.
@ -1140,0 +1155,4 @@
request,
NameID=None,
family_id=None,
):
Il y a un paramètre "text_template" décrit dans
@endpoint(...)
, qui ne se retrouve pas ici.Oui, je devais le retirer et je ne l'avais fait qu'à moitié.
Merci.
@ -1140,0 +1162,4 @@
for x in self.link_set.filter(family_id=family_id).values()
]
# call authentic to add context to data items
Ça ne devrait pas être nécessaire; on provisionne désormais tous les attributs des utilisateurs,
user.extra_attributes.data
, il faut plutôt utiliser ça.(cf combo/profile/utils.py)
Comme on est/sera sur une nouvelle on pourrait même passer par get_user_model() plutôt que UserSAMLIdentifier, et simplement récupérer via :
get_user_model(username=name_id).extra_attributes.data
.Oui, je suis complètement passé à côté, merci.
@ -1140,0 +1186,4 @@
except ValueError:
pass
for item in data:
item['text'] = render_template_to_string('toulouse_maelis/get_link_list.json', item['context'])
N'appelons pas .json des gabarits, c'est la grosse confusion; plutôt family_link_template.txt, peut-être.
Fait.
72f559927e
to77acf91aaa
77acf91aaa
todb0a15285b
toulouse-maelis: get users linked to a family (#77295)to WIP: toulouse-maelis: get users linked to a family (#77295)WIP: toulouse-maelis: get users linked to a family (#77295)to toulouse-maelis: get users linked to a family (#77295)db0a15285b
to66de16de94
66de16de94
to1e2fa2f494
J'ai précisé le message : explicitely override wcs service from settings
@ -11295,2 +11375,3 @@
# basket was removed, send trigger to wcs
con.hourly()
with override_settings(KNOWN_SERVICES={}):
con.hourly()
pas de rapport ?
Il y avait un effet de bord sur les services définis par la fixture wcs_service.
J'ai placé ce code dans un commit séparé.
cf ici
1e2fa2f494
to4b145cb01f
4b145cb01f
toa51d29393d
Je reprend ce ticket.
exemple de ce qu'on listera via w.c.s. :
Ok.
a51d29393d
toc212d3ff68