$sValue) { list($DelUserTag, $iUserId) = explode('_', $sKey); //pre($DelUserTag.' '.$iUserId, '',true); if($DelUserTag==DEL_USER_TAG && is_numeric($iUserId)) { $sDeletedUserName = ucwords(getTextFromId(USER_TABLE, $iUserId)); if(isAdmin($iUserId)) { addMessage(getError('Il est impossible de supprimer un compte administrateur ('.$sDeletedUserName.')')); } else { deleteRow(USER_TABLE, $iUserId); $asDeletedUserNames[] = $sDeletedUserName; addFeed('DELETE', $iUserId , USER_TABLE, $sDeletedUserName, ''); } } } if(count($asDeletedUserNames)>0) { addMessage(getSuccess('Les comptes suivants ont été supprimés : '.implode(', ', $asDeletedUserNames))); } } //modify user account $iSelectedUserId = isset($_REQUEST['studentId'])?$_REQUEST['studentId']:$_SESSION['user']; $asSelectedUserInfo = selectRow(USER_TABLE, array($iSelectedUserId)); //modifications submit $bfailedPassModif = false; if(isset($_POST['submit'])) { if($_GET['type']=='pass' && $_POST['pass']!='' && $_POST['oldpass']!='') { $sErrorMessage = checkPassword($_POST['oldpass'],$asSelectedUserInfo['pass'])?"":'Mot de passe incorrect'; $sErrorMessage .= ($_POST['pass']==$_POST['pass2'])?"":'Les mots de passe ne sont pas les mêmes'; $bfailedPassModif = ($sErrorMessage!=''); if($bfailedPassModif) { echo getError($sErrorMessage); } else { updateRow(USER_TABLE, $iSelectedUserId, array('pass'=>encryptPassword($_POST['pass']))); echo getSuccess('Mot de passe modifié'); } } elseif($_GET['type']=='info' && $_POST['login']!='' && $_POST['firstname']!='') { $sLastName = strtolower($_POST['login']); $sFirstName = strtolower($_POST['firstname']); //Check if someone has already been registered by that name $asChangedUserInfo = getUserFromLogin($sLastName, $sFirstName); $bUserAvailable = !$asChangedUserInfo || $iSelectedUserId==$asChangedUserInfo['id_user']; if($bUserAvailable) { $asUserModif = array( 'user_first_name'=>$sFirstName, 'user_last_name'=>$sLastName, 'grade'=>$_POST['grade'], 'class'=>$_POST['class']); if($bAdmin) { $asUserModif['admin'] = isset($_POST['admin'])?'1':'0'; } $asUserInfo = selectRow(USER_TABLE, array($iSelectedUserId)); updateRow(USER_TABLE, $iSelectedUserId, $asUserModif); //feed $sModifiedUserName = $asUserInfo[USER_TABLE.'_first_name'].' '.$asUserInfo[USER_TABLE.'_last_name']; if($sModifiedUserName != $sFirstName.' '.$sLastName) { addFeed('MODIFY', $sModifiedUserName, USER_TABLE.'_name', $sModifiedUserName, $sFirstName.' '.$sLastName); } if($asUserInfo['grade']!=$_POST['grade'] || $asUserInfo['class']!=$_POST['class']) { addFeed('MODIFY', $sModifiedUserName, USER_TABLE.'_class', $asUserInfo['grade'].GRADE_CLASS_SEPARATOR.$asUserInfo['class'], $_POST['grade'].GRADE_CLASS_SEPARATOR.$_POST['class']); } echo getSuccess('Coordonnées modifiées'); if($iSelectedUserId==$_SESSION['user']) { setSession($_SESSION['user']); if($sLastName!=$asSelectedUserInfo['user_last_name'] || $sFirstName!=$asSelectedUserInfo['user_first_name']) { echo getWarning(array('Changement de login pour l\'authentification', 'Votre nouveau login est :', 'Nom : '.$sLastName, 'Prénom : '.$sFirstName)); } } } else { echo getError('Ce nom existe déjà dans la base de données'); } } else { echo getError('Champs incomplets'); $bfailedPassModif = ($_GET['type']=="pass"); } } //student class selection / teacher $sTeacherClass = 'Professeur'; $sStudentClass = getClasses(array('grade' => isset($_POST['grade'])?$_POST['grade']:$asSelectedUserInfo['grade'], 'class' => isset($_POST['class'])?$_POST['class']:$asSelectedUserInfo['class'])); //forms display : info and password modifications if(isset($_GET['type']) && $_GET['type']=="modif" && !isset($_POST['submit'])) { $sPromoteAdmin = ''; $bIsSelectedUserAdmin = isAdmin($iSelectedUserId); $asSelectedUserInfo = selectRow(USER_TABLE, array($iSelectedUserId)); $sPromoteAdmin = ' Admin '; ?>
Modification de compte
Prénom
Nom de famille
Classe
Mot de passe
  

Changer de mot de passe
Ancien mot de passe
Nouveau mot de passe
Nouveau mot de passe (une nouvelle fois)

'0'); $asConstraintsSigns = array('admin'=>'='); $sGradeClass = 'Toutes les classes'; if(isset($_POST['gradeClass'])) { $sGradeClass = $_POST['gradeClass']; list($iGrade, $iClass) = explode(GRADE_CLASS_SEPARATOR, $sGradeClass); if($iGrade!=0 && $iClass!=0) { $asConstraints['grade'] = $iGrade; $asConstraints['class'] = $iClass; } } $asUsers = selectRows(array( 'from'=>USER_TABLE, 'constraint'=>$asConstraints, 'orderBy'=>array('class'=>'asc', 'user_last_name'=>'asc'))); $asStudents = array(); foreach($asUsers as $asUser) { if($asUser['class']==0 || $asUser['grade']==0){continue;} $asStudents[] = ' '.ucwords($asUser['user_last_name']).' '.ucwords($asUser['user_first_name']).' '.$asUser['grade'].GRADE_CLASS_SEPARATOR.$asUser['class'].' Modifier '; } $iStudentCount = count($asStudents); $sStudents = ($iStudentCount>0)?implode("\n", $asStudents):'Aucun utilisateur dans cette classe'; //Classes selection $asClasses = getListe(array('select'=>array( "CONCAT(grade, '".GRADE_CLASS_SEPARATOR."', class) AS gradeClass", 'grade', 'class'), 'from'=>USER_TABLE, 'constraint'=>"admin=0 AND class<>0 AND grade<>0", 'groupBy' => 'gradeClass', 'orderBy'=>array('grade', 'class'))); $sSelectClasses = getSelect($asClasses, 'gradeClass', '', array('0'.GRADE_CLASS_SEPARATOR.'0'=>'Toutes'), isset($_POST['gradeClass'])?$_POST['gradeClass']:'', 'classSelect'); ?>

Classe :

Elève Classe Modifier Supprimer
élève(s) ()