[x] Gestion de l'ajout/suppression du statut "teacher"

+ si aucun module, plus enseignant
	+ si au moins 1 module, enseignant
This commit is contained in:
xdrm-brackets 2016-01-08 16:17:16 +01:00
parent a126bdc28d
commit 2174ecfaa9
2 changed files with 18 additions and 7 deletions

View File

@ -460,13 +460,11 @@ class DataBase{
// si on ajoute pour un groupe donné, on le fait
if( $groupe != null )
if( $groupe != null ){
$success = userRepo::addModule($utilisateurUID, $mccmodule, $groupeUID);
// si aucun groupe n'est donné
else{
}else{
$inscrits = groupRepo::inscritsMccModule($mccmodule);
$success = true;
@ -475,7 +473,9 @@ class DataBase{
}
return $success;
// définit l'utilisateur comme enseignant et retourne le statut
return $success && userRepo::setTeacher($utilisateurUID);
}
@ -517,7 +517,8 @@ class DataBase{
}
return $success;
// définit l'utilisateur comme enseignant et retourne le statut
return $success && userRepo::setTeacher($utilisateurUID);
}

View File

@ -240,7 +240,7 @@ class userRepo{
* @return updated<Boolean> VRAI si la modification a été faite
*
*/
public static function setTeacher($utilisateur, $teacher){
public static function setTeacher($utilisateur){
/* [1] On récupère les droits actuels de l'utilisateur
=========================================================*/
if( !($utilisateurInfo=userRepo::info($utilisateur)) ) return false;
@ -251,6 +251,16 @@ class userRepo{
if( strlen($droit) == 0 )
unset($droitsArray[$i]);
// on récupère le nombre d'enseignements de l'utilisateur
$getNumEnseignements = DataBase::getPDO()->prepare("SELECT count(distinct id_enseignement) as nb_ens
FROM enseignement
WHERE id_enseignant = :utilisateurUID");
$getNumEnseignements->execute(array( ':utilisateurUID' => $utilisateur ));
// VRAI si enseigne au moins un module
$teacher = $getNumEnseignements->fetch()['nb_ens'] > 0;
/* [2] On modifie les droits en fonction des paramètres
=========================================================*/
if( $teacher && !in_array('teacher', $droitsArray) ) // si on doit ajouter le droit et qu'il n'y est pas encore