J’ai un objet service LDAP mappé avec un objet User. Je souhaite qu’à la création d’un User, le champ qui affiche la loupe permette une recherche globale dans le LDAP, par UID mais aussi firstname et lastname.
J’ai essayé de créer un champ calculé mais la recherche sur l’objet service via ce champ ne fonctionne pas.
J’essaie donc de surcharger le preSearch pour transformer ma recherche
soit en transformant mon setFilter sur le UID en un setFilter de type OR (UID = toto OR firstname = toto …) mais je ne trouve pas comment faire des OR entre les filtres
soit en passant directement la syntaxe LDAP au service ({||(givename=toto,uid=toto …)} mais je ne trouve pas où je peux le faire
Pouvez-vous m’aider ?
Merci d’avance !
Emmanuelle
Steps to reproduce
This request concerns an up-to-date Simplicité instance
and these are the steps to reproduce it:
Technical information
Instance /health
---paste the content of your-instance.com/health---
Simplicité logs
---paste the content of the **relevant** server-side logs---
Browser logs
---paste content of the **relevant** browser-side logs---
Other relevant information
----E.g. type of deployment, browser vendor and version, etc.----
Je comprends qu’il y a un objet “User” service qui pointe sur le LDAP, celui-ci est sensé permettre les recherches sur les différents attributs (mais pas de “recherche globale” au sens de la recherche indexée)
Ce que je ne comprends pas c’est l’usage qui est fait de cet objet service vs l’objet User Simplicité…
J’ai un objet service LDAP.
Et un objet User custom mappé avec l’objet service.
Quand je crée un User, j’ai la loupe qui requête l’objet LDAP, mais uniquement sur l’UID.
Je voudrais pouvoir entrer sans distinction l’ID, le nom ou le prénom et que ça me propose des choix.
Je vais vérifier mais je ne pense pas qu’il soit possible d’utiliser autre chose que l’attribut mappé pour faire une recherche de complétion sachant qu’un objet service LDAP (et plus généralement les objets services) n’est pas indexé au sens de la recherche indexée Simplicité
PS: Quand on clique sur la loupe, est-ce que ça ouvre bien une popup de recherche où il y a les autres critères de recherche ?
Oui dans la popup ouverte j’ai tous les champs. Le souci est au niveau de la saisie qui ne prend que l’UID.
J’ai tenté de regarder dans les hook de l’objet Service, si éventuellement il était possible de modifier les critères de recherche en syntax “ldap”, pour les remplacer par des “ou” mais je n’ai pas trouvé.
Autre piste, j’ai tenté de regarder au niveau du preSearch de l’objet service si je pouvais concaténer des Setfilter avec des OU pour remplacer login=pf* par login=pf* OU nom=pf* OU prenom=pf*, mais je n’ai pas trouvé non plus.
Blockquote
Sinon il faut ne pas mettre de complétion sur l’attribut mappé pour obliger à la sélection du mapping via la popup de recherche
Je vais quand même regarder s’il est possible de forcer des filtres en “OR” d’une manière ou d’une autre dans le preSearch mais je ne suis pas sûr que la mécanique des objets LDAP le permette en l’état.