Project

General

Profile

Development #56856

Fiche : source de données par utilisateur : non prise en compte en saisie BO

Added by Stéphane Laget over 1 year ago. Updated over 1 year ago.

Status:
Nouveau
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
10 September 2021
Due date:
% Done:

0%

Estimated time:
Patch proposed:
No
Planning:
No

Description

Une source de données basée sur des fiches filtrées sur l'utilisateur connecté fonctionne bien en front-office mais ne fonctionne en saisie BO même après avoir sélectionné un utilisateur dans la barre latérale.

Pour tester en BO :
https://demarches-tm.cutm-publik-preprod.nfrance.com/backoffice/submission/formulaire-pour-debug/?ReturnURL=https://agents-tm.cutm-publik-preprod.nfrance.com/
choisir user Franck Trappe

la source de données :
https://demarches-tm.cutm-publik-preprod.nfrance.com/backoffice/data/habilitations/par-user/


Files

front_office.png (825 KB) front_office.png Stéphane Laget, 10 September 2021 01:35 PM
backoffice.png (27.8 KB) backoffice.png Stéphane Laget, 10 September 2021 01:36 PM

History

#2

Updated by Stéphane Laget over 1 year ago

  • Description updated (diff)
#3

Updated by Frédéric Péters over 1 year ago

On voit quoi on devrait voir quoi ?

#4

Updated by Stéphane Laget over 1 year ago

En front-office, en page 2 du formulaire :
on a des items qui s'affiche dans le champ liste

En saisie backoffice, en page 2 : la liste est vide

#6

Updated by Stéphane Laget over 1 year ago

Peut-être qu'il y a une confusion sur le terme "utilisateur connecté" entre l'usager concerné et l'agent qui saisit...

#7

Updated by Thomas Noël over 1 year ago

Stéphane Laget a écrit :

Peut-être qu'il y a une confusion sur le terme "utilisateur connecté" entre l'usager concerné et l'agent qui saisit...

Dans le code, l'utilisateur connecté est effectivement l'agent :

            elif filter_field.type == 'user-id':
                if filter_field_value == '__current__' and get_request().user:
                    filter_field_value = str(get_request().user.id)
                criterias.append(Equal('user_id', filter_field_value))

En mode prefill, on a cette "astuce" pour prendre plutôt l'utilisateur de la demande en backoffice :

                if get_request().is_in_backoffice():
                    prefill_user = get_publisher().substitutions.get_context_variables().get('form_user')

Reste à imaginer les effets de bord éventuellement possibles ici...

Also available in: Atom PDF