$cbuff) {
if (($cbuff['TYPE'] != 'noedit') and ($cbuff['TYPE'] != 'file') and ($cbuff['TYPE'] != 'md5')) {
$res[] = $clabel;
}
$conf_listattr = implode(',',$res);
}
}
if ($searchx) {
$search = "(|(".$L->conf['baseattr']."=*".utf8_encode($searchx)."*) (displayName=*".utf8_encode($searchx)."*))";
$mquery = "&searchx=".urlencode($searchx);
} else {
$search = "(".$L->conf['baseattr']."=*)";
$mquery = '';
}
$in = $info = $output = $outgood = '';
if ($id) {
if ($action and $action == 'save') {
$inst = $L->write_id($fes);
if (is_array($inst)) {
$view = 'form';
$id = '';
$output = $inst;
} elseif ($inst) {
$id = $fes[id];
$outgood[] = $inst;
$action = 'modify';
}
}
if ($action and $action == 'modify') {
$prov = $L->get_id($id);
$minst = $L->write_all($fes);
if (is_array($minst)) {
$view = 'form';
$output = $minst;
} elseif ($minst) {
$outgood[] = $minst;
}
} elseif (isset($_POST['delgp'])) {
$delit = array( $conf_groupattr => $conf_baseattr."=".$id.",".$conf_basedn);
$groupdn = "$conf_membattr=$delgp,$conf_groupdn";
if (ldap_mod_del($conn,$groupdn,$delit)) {
$outgood[] = "$id effacé du groupe $delgp.";
} else {
$output[] = "Effacement de $id du groupe $delgp impossible.
$groupdn
".print_r($delit);
}
/*
// ROU 20030303 Suppression d'une adresse email
} elseif (isset($_POST['delmail'])) {
$delit = array( $conf['ludap']['mailattr'] => $delmail);
$maildn = "{$conf['ludap']['membattr']}=$id,{$conf['ludap']['maildn']}";
if (ldap_mod_del($conn,$maildn,$delit)) {
$outgood[] = "Adresse email $delmail effacé pour l'utilisateur $id.";
} else {
$output[] = "Effacement de l'adresse email $delmail pour l'utilisateur $id impossible.
$maildn
".print_r($delit);
}
// ROU 20030303
*/
} elseif ($action and $action == 'newgroup') {
if ($addgp and ($addgp != 'new')) {
$groupdn = "$conf_membattr=".utf8_encode($addgp).",$conf_groupdn";
$addit = array( $conf_groupattr => $conf_baseattr."=".$id.",".$conf_basedn);
if (ldap_mod_add($conn,$groupdn,$addit)) {
$outgood[] = "$id ajouté au groupe $addgp.";
} else {
$output[] = "Ajout de $id dans le groupe $addgp impossible.";
}
}
/*
// ROU 20030303 Ajout d'une adresse mail
} elseif ($action and $action == 'addmail' and isset($addmail)) {
$i = ldap_search($conn,$conf['ludap']['maildn'],"cn=$id");
$info = ldap_get_entries($conn,$i);
if ($info['count'] < 1) {
$entrydn = "$conf_membattr=".utf8_encode($id).",$conf_maildn";
$objClasses = split(',',$conf['ludap']['mailobj']);
foreach ($objClasses as $objClass) {
$entry["objectclass"][] = $objClass;
}
$entry["$conf_membattr"] = utf8_encode($id);
$entry["$conf_mailattr"] = utf8_encode($addmail);
if (ldap_add($conn,$entrydn,$entry)) {
$outgood[] = "Adresse email $addmail ajoutée.";
} else {
$output[] = "Ajout de l'adresse email $addmail impossible.$maildn".print_r($addit);
}
} else {
$maildn = "{$conf['ludap']['membattr']}=".$id.",{$conf['ludap']['maildn']}";
$addit["{$conf['ludap']['mailattr']}"] = utf8_encode($addmail);
if (ldap_mod_add($conn,$maildn,$addit)) {
$outgood[] = "Adresse email $addmail ajoutée.";
} else {
$output[] = "Ajout de l'adresse email $addmail impossible.$maildn".print_r($addit);
}
}
// ROU 20030303
*/
} elseif (isset($_POST['action']) and $_POST['action'] == 'addgroup' and $addgroup) {
$groupdn = "$conf_membattr=".utf8_encode($addgroup).",$conf_groupdn";
$grps = split(',',$conf_groupobj);
foreach ($grps as $ps) {
$addit["objectclass"][] = $ps;
}
$addit["$conf_membattr"] = utf8_encode($addgroup);
$addit["$conf_groupattr"] = $conf_baseattr."=".$id.",".$conf_basedn;
if (ldap_add($conn,$groupdn,$addit)) {
$outgood[] = "Groupe $addgroup créé.";
} else {
$output[] = "Création du groupe $addgroup impossible.$groupdn".print_r($addit);
}
}
$fres = $L->get_id($id);
$f_gps = $L->get_groups($id);
$f_mails = $L->get_mails($id);
} else {
if (isset($_POST['action']) and $_POST['action'] == 'del') {
if ($confirm_action == 'yes') {
if (ldap_delete($conn,$conf_baseattr."=".$delid.",".$conf_basedn)) {
$outgood[] = "$delid deleted.";
} else {
$output[] = "Effacement $delid Impossible.";
}
} else {
$output[] =<<<_END_
';print_r(get_defined_vars());echo''; */ ?>