From a5f5007021339643f0f29c364bb2901c093538b7 Mon Sep 17 00:00:00 2001 From: Juliette Cougnoux Date: Mon, 27 Feb 2017 14:22:36 +0100 Subject: [PATCH] Delete uid in groups when the account is deleted --- evoadmin/htdocs/compte.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/evoadmin/htdocs/compte.php b/evoadmin/htdocs/compte.php index f52d953..84472f0 100755 --- a/evoadmin/htdocs/compte.php +++ b/evoadmin/htdocs/compte.php @@ -529,6 +529,13 @@ if (isset($_SESSION['login'])) $ldapconn = Ldap::lda_connect(LDAP_ADMIN_DN,LDAP_ADMIN_PASS); + $filter = "(memberUid=$uid)"; + $attr = array("cn"); + + $sr=ldap_search($ldapconn, $group_dn, $filter, $attr); + $result = ldap_get_entries($ldapconn, $sr); + $arraycn = array(); + print "
"; print "

Suppression $uid en cours...

"; @@ -546,6 +553,19 @@ if (isset($_SESSION['login'])) } elseif (Ldap::lda_del($ldapconn,"uid=" .$uid. "," .$rdn)) { if (!$conf['domaines']['ldap']['virtual']) { + + if($result["count"] > 0) { + for ($i=0; $i < $result["count"] ; $i++) + { + $arraycn[] = $result[$i]["cn"][0]; + } + foreach($arraycn as $nameGroupe){ + $remove_groupe["memberUid"] = $uid; + $rmGroupe = ldap_mod_del($ldapconn, "cn=".$nameGroupe.",".$group_dn, $remove_groupe); + } + + } + // script suppression systeme unix_del($uid); }