From c5e7165e13312f602685fc45b4155590e8a5eb62 Mon Sep 17 00:00:00 2001 From: Benjamin Renard Date: Mon, 13 Oct 2008 11:37:34 +0000 Subject: [PATCH] - LSldap : contournement d'un bug (Net_LDAP2/Php) concernant la suppression d'un attribut --- trunk/includes/class/class.LSldap.php | 5 ++++- trunk/modify.php | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/trunk/includes/class/class.LSldap.php b/trunk/includes/class/class.LSldap.php index 1fb9885f..5a96ff15 100644 --- a/trunk/includes/class/class.LSldap.php +++ b/trunk/includes/class/class.LSldap.php @@ -303,7 +303,10 @@ class LSldap { else { if (!empty($dropAttr)) { foreach($dropAttr as $attr) { - $entry -> delete($attr); + // Méthode buggé : suppression impossible de certain attribut + // exemple : jpegPhoto + // $entry -> delete($attr); + $entry -> replace(array($attr =>array())); } $ret = $entry -> update(); if (Net_LDAP2::isError($ret)) { diff --git a/trunk/modify.php b/trunk/modify.php index 252aa02f..921a7fa7 100644 --- a/trunk/modify.php +++ b/trunk/modify.php @@ -53,8 +53,11 @@ if($LSsession -> startLSsession()) { if ($form->validate()) { // MàJ des données de l'objet LDAP if ($object -> updateData('modify')) { - $GLOBALS['LSsession'] -> addInfo(_("L'objet a bien été modifié.")); + if ($GLOBALS['LSerror']->errorsDefined()) { + $GLOBALS['LSsession'] -> addInfo(_("L'objet a été modifié partiellement.")); + } if ((!LSdebugDefined()) && !$GLOBALS['LSerror']->errorsDefined()) { + $GLOBALS['LSsession'] -> addInfo(_("L'objet a bien été modifié.")); $GLOBALS['LSsession'] -> redirect('view.php?LSobject='.$LSobject.'&dn='.$object -> getDn()); } }