} } } if ($flag == 1) { $msg = get_vocab("mess3_maj_base_locale"); } } } // Nettoyage de la base locale // On propose de supprimer les utilisateurs ext de GRR qui ne sont plus présents dans la base LCS if (isset($_GET['action']) && $_GET['action'] == "synchro" && Settings::get("sso_statut") == "lcs") { $statut_eleve = Settings::get("lcs_statut_eleve"); $statut_non_eleve = Settings::get("lcs_statut_prof"); include LCS_PAGE_AUTH_INC_PHP; include LCS_PAGE_LDAP_INC_PHP; $users = search_people("(cn=*)"); $total_user = count($users); $liste_nouveaux = ""; $liste_pb_insertion = ""; $liste_update = ""; $liste_pb_update = ""; // Etablir à nouveau la connexion à la base if (empty($db_nopersist)) { $db_c = mysqli_connect('p:' . $dbHost, $dbUser, $dbPass); } else { $db_c = mysqli_connect($dbHost, $dbUser, $dbPass); } if (!$db_c || !mysqli_select_db($db_c, $dbDb)) { echo "\n<p>\n" . get_vocab('failed_connect_db') . "\n"; } for ($loop = 0; $loop < $total_user; $loop++) {
echo "<div class='error_msg'> Echec de création : L'utilisateur <font color=\"black\"> $cn </font> est déja présent dans l'annuaire. </div><br />\n"; } else { // Positionnement de la date de naissance ou du mot de passe par defaut if (!$naissance ) $naissance="00000000"; if (!$userpwd ) $userpwd=$naissance; $nom = stripslashes($nom); $prenom = stripslashes($prenom); // Creation du nouvel utilisateur exec ("$scriptsbinpath/userAdd.pl ". escapeshellarg($prenom) . " ". escapeshellarg($nom) ." ". escapeshellarg($userpwd) ." ". escapeshellarg($naissance) ." ". escapeshellarg($sexe) ." ". escapeshellarg($categorie),$AllOutPut,$ReturnValue); ### DEBUG echo" \"$prenom\" \"$nom\" \"$userpwd\" \"$naissance\" \"$sexe\" \"$categorie\"<br />"; // Compte rendu de creation if ($ReturnValue == "0") { // Recherche du login de cet utilisateur $users = search_people ("(cn=$cn)"); echo "L'utilisateur $prenom $nom a été créé avec succes"; if ( count ($users) ) { echo ", l'identifiant <b>".$users[0]["uid"]."</b> lui a été attribué"; echo "<ul><li><a href='add_user_group.php?uid=".$users[0]["uid"]."&jeton=".md5($_SESSION['token'].htmlentities("/Annu/add_user_group.php"))."'>Ajouter à des groupes...</a></ul>\n"; } echo "<br />\n"; } else { echo "<div class='error_msg'> Erreur lors de la création du nouvel utilisateur $prenom $nom <font color='black'> (type d'erreur : $ReturnValue) </font>, veuillez contacter <a href='mailto:$MelAdminLCS?subject=PB creation nouvel utilisateur LCS'>l'administrateur du système</a> </div>\n<br />\n"; }
} } //2.recherche d'une occurence du cn parmi le eleves de la classe --> uid //recherches des uids des eleves $membres = search_uids("(cn=" . $full_classe . ")", "half"); //recherche de(s) uids correspondants au nom saisi $le_cn[$indecs] = $prenom_propre[$indecs] . " " . $nom_propre1[$indecs]; $filtre = "(cn={$le_cn[$indecs]})"; $gus = search_people($filtre); //echo count($gus).$nom_propre2[$indecs].$gus[0]["uid"]; //echo people_get_datenaissance($gus[0]["uid"]);exit; //si pas d'occurence recherche avec nom2 if (count($gus) == 0) { $le_cn[$indecs] = $prenom_propre[$indecs] . " " . $nom_propre2[$indecs]; $filtre = "(cn={$le_cn[$indecs]})"; $gus = search_people($filtre); } if (count($gus)) { for ($loop = 0; $loop < count($gus); $loop++) { $uidgus = $gus[$loop]["uid"]; for ($iteration = 0; $iteration <= count($membres); $iteration++) { if ($membres[$iteration]["uid"] == $uidgus) { if (people_get_datenaissance($uidgus) == $_POST['an_dn' . $indecs] . $_POST['mois_dn' . $indecs] . $_POST['jour_dn' . $indecs]) { $clcrypt[$indecs] = crypt(substr($full_classe, -8, 8), $Grain); $clcrypt[$indecs] = substr($clcrypt[$indecs], 2); $uidcrypt[$indecs] = substr(md5($uidgus), 2, 5) . substr(md5($uidgus), -5, 5); } } //uids differents (endif) } //fin de recherche de correspondance dans la classe pour un uid(iteration)
if ($priority_surname=="contient") { $filter_people="(&(sn=*$nom)(cn=*$prenom*))"; } elseif($priority_surname=="commence") { $filter_people="(&(sn=*$nom)(cn=$prenom*))"; } else { $filter_people="(&(sn=*$nom)(cn=*$prenom))"; } } } // Remplacement de *** ou ** par * $filter_people = mb_ereg_replace("\*\*\*","*",$filter_people); $filter_people = mb_ereg_replace("\*\*","*",$filter_people); if ($filter_people && !$classe) { // recherche dans la branche People #$TimeStamp_0=microtime(); $users = search_people ($filter_people); #$TimeStamp_1=microtime(); // Affichage menu haut de page aff_trailer("3"); ############# # DEBUG # ############# #echo "<u>debug</u> :Temps de recherche = ".duree($TimeStamp_0,$TimeStamp_1)." s<BR>"; ############# # Fin DEBUG # ############# if (count($users)) { if (count($users)==1) { echo "<p><STRONG>".count($users)."</STRONG> utilisateur répond à ces critères de recherche</p>\n"; } else {
} } } if ($flag == 1) { $msg = get_vocab('mess3_maj_base_locale'); } } } // Nettoyage de la base locale // On propose de supprimer les utilisateurs ext de GRR qui ne sont plus présents dans la base LCS if (isset($_GET['action']) && $_GET['action'] == 'synchro' && Settings::get('sso_statut') == 'lcs') { $statut_eleve = Settings::get('lcs_statut_eleve'); $statut_non_eleve = Settings::get('lcs_statut_prof'); include LCS_PAGE_AUTH_INC_PHP; include LCS_PAGE_LDAP_INC_PHP; $users = search_people('(cn=*)'); $total_user = count($users); $liste_nouveaux = ''; $liste_pb_insertion = ''; $liste_update = ''; $liste_pb_update = ''; // Etablir à nouveau la connexion à la base if (empty($db_nopersist)) { $db_c = mysqli_connect('p:' . $dbHost, $dbUser, $dbPass, $dbPort); } else { $db_c = mysqli_connect($dbHost, $dbUser, $dbPass, $dbPort); } if (!$db_c || !mysqli_select_db($db_c, $dbDb)) { echo "\n<p>\n" . get_vocab('failed_connect_db') . "\n"; } for ($loop = 0; $loop < $total_user; $loop++) {