1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
| <?php
$groupe = $_GET['pref'];
echo "<h1 class='pluploard_emptytext' style='text-align:center'>".$groupe."</h1>";
$ds = ldap_connect($config["ldap_host"],$config["ldap_port"]);
if($ds)
{
ldap_set_option($ds,LDAP_OPT_PROTOCOL_VERSION, 3);
//Authentification au LDAP
$r=ldap_bind($ds,$config["ldap_user"],$config["ldap_pass"]);
if($r)
{
$filter="cn=".$groupe;
$sr = ldap_search($ds,$config["ldap_groupsdn"],$filter);
$infoRecherche = ldap_get_entries($ds,$sr);
$tabGroup =array();
for($i=0; $i < $infoRecherche["count"]; $i++)
{
array_push($tabGroup, $infoRecherche[$i]["memberuid"]);
}
echo "<form action='' method='POST'>";
echo "<fieldset><legend>Liste des membre(s)</legend>";
for($i=0;$i<$tabGroup[0]["count"];$i++)
{
$z=$i+1;
echo "<input type='text' id='text' name='text_".$z ."' value='".$tabGroup[0][$i]."'>"."<br>";
}
echo "<br>"."Vous pouvez supprimer un membre en effaçant son nom dans la case.";
echo "</fieldset>"."<br>";
echo '<form action="" method="POST">';
echo '<fieldset><legend>Membre(s) à ajouté</legend>';
echo 'Ajouté le login des membres à ajouter dans le groupe.<br>';
echo '<input type="input" name="name_1" /><br/>';
echo '<span id="leschamps_2"><a href="javascript:create_champ(2)">Ajouter un champs</a>';
echo '</fieldset><br>';
echo '<input type="submit" value="Ajouter / Supprimer">';
echo '</form>';
echo "<br>";
$sr2 = ldap_search ($ds,$config["ldap_peopledn"], "objectClass=inetOrgPerson");
$infoRecherche2 = ldap_get_entries ($ds, $sr2);
$tableauCn =array();
for ($i=0; $i < $infoRecherche2 ["count"]; $i++)
{
array_push($tableauCn, $infoRecherche2[$i]["cn"][0]);
}
if(!empty($_POST))
{
$tab=array();
$groupeSuppr= array();
for($i=1; $i<= count($_POST, COUNT_RECURSIVE); $i++)
{
if(!empty($_POST['text_'.$i]))
{
array_push($tab, STRTOLOWER(replace_accents(($_POST['text_'.$i]))));
array_push($groupeSuppr,STRTOLOWER(replace_accents(($_POST['text_'.$i]))));
}
if(!empty($_POST['name_'.$i]))
{
if((in_array(($_POST['name_'.$i]),$tableauCn))==TRUE)
{
if((in_array(($_POST['name_'.$i]),$tabGroup[0]))!=TRUE)
{
array_push($tab,STRTOLOWER(replace_accents(($_POST['name_'.$i]))));
}
else
{
$message= "Le membre " .$_POST['name_'.$i]." fait actuellement parti du groupe. Veuillez recommencer votre ajout" ."<br>";
}
}
else
{
$message = "Le membre " .$_POST['name_'.$i]." n'existe pas dans la base de données.";
}
}
}
if(!empty($message))
{echo $message;}
else
{
$dn = "cn=".$groupe.",".$config['ldap_groupsdn'];
for($i=0; $i< count($groupeSuppr, COUNT_RECURSIVE);$i++)
{
$group_info['memberuid']=$groupeSuppr[$i];
ldap_mod_del($ds,$dn,$group_info);
}
for($i=0; $i <count($tab, COUNT_RECURSIVE); $i++)
{
$membre_info['memberuid'][$i]=$tab[$i];
ldap_modify($ds,$dn,$membre_info);
}
header('Location: modifGroups.php?pref='.$groupe);
}
}
}
}
?> |
Partager