====== Pxxo_Widgets_LDAP_ListEntries ======
Permet d'associer des groupes issues d'une branche de l'annuaire (des dn) à un utilisateur (un dn) en lui ajoutant un attribut multi-valué (qu'on peut par exemple nommer memberof).
Ce widget est pratique pour réaliser rapidement des interfaces d'administrations permettant de régler les droits des membres d'une applications.
* [[http://demo.pxxo.net/widgets/demos/|Exemple d'utilisation en ligne]]
* [[fr:install|Installer]] (le nom du package est **Pxxo_Widgets_LDAP**)
===== Paramètres =====
Ce widget partage [[:fr:doc:pxxo_widgets_ldap|les paramètres de connexion]] avec les autres widget de ce package.
Les paramètres spécifiques sont eux listés ici :
^ Nom ^ V. par défaut ^ Description ^
| user_dn | - | Le dn de l'utilisateur dont on veut régler les droits |
| groups_dn | - | Le dn de la branche contenant la liste de tous les groupes possibles |
| users_dn | - | Le dn de la branche contenant la liste de tous les utilisateurs |
| memberof_attr_name | 'memberof' | Le nom de l'attribut qui contiendra la liste des groupes dans le noeud de l'utilisateur (il doit être multi-valué) |
| display_group_regex | - | L'expression régulière permettant de tronquer le dn d'un groupe avant de l'afficher |
| display_user_regex | - | L'expression régulière permettant de tronquer le dn d'un utilisateur avant de l'afficher (utilisé seulement dans les messages informatifs ou d'erreurs) |
===== Exemples =====
require_once "Pxxo/Widgets/LDAP/EditGroups.php";
$params = array();
$params['lang'] = 'fr_FR';
$params['theme'] = 'defaut';
$params['ldap_host'] = 'localhost';
$params['ldap_port'] = 389;
$params['ldap_username'] = 'cn=manager,dc=localhost';
$params['ldap_password'] = 'secret';
$params['base_dn'] = 'dc=localhost';
$params['user_dn'] = 'uid=stephane.gully@gmail.com';
$params['users_dn'] = 'ou=people,dc=localhost';
$params['groups_dn'] = 'ou=groups,dc=localhost';
$params['display_group_regex'] = '/^cn=(.*?),ou=groups,dc=localhost$/';
$params['display_user_regex'] = '/^uid=(.*?),ou=people,dc=localhost$/';
$obj = new Pxxo_Widgets_LDAP_EditGroups($params);