Pour la visu/modification des rôles, on récupère les modules/par ue

This commit is contained in:
xdrm-brackets 2015-11-23 16:21:03 +01:00
parent 551916d29d
commit 17b118f885
5 changed files with 34 additions and 17 deletions

View File

@ -127,7 +127,7 @@ class DataBase{
* @mcc<Array> contient toutes les données du MCC * @mcc<Array> contient toutes les données du MCC
* *
*/ */
public static function setMCC($semestre, $mcc){ public function setMCC($semestre, $mcc){
foreach($mcc as $ue){ foreach($mcc as $ue){
$mcc_ue = ueRepo::forMCC($semestre, $ue->nom, $ue->libelle, $ue->coefficient); $mcc_ue = ueRepo::forMCC($semestre, $ue->nom, $ue->libelle, $ue->coefficient);
@ -161,7 +161,7 @@ class DataBase{
* @return cree<Boolean> retourne VRAI si les éléments existaient ou ont bien été créés * @return cree<Boolean> retourne VRAI si les éléments existaient ou ont bien été créés
* *
*/ */
public static function creerSemestre($codeFormation, $nomFormation, $nomSemestre, $rangSemestre, $annee){ public function creerSemestre($codeFormation, $nomFormation, $nomSemestre, $rangSemestre, $annee){
// si on a tout créé ou que tout existe "creer" retourne l'UID du semestre, // si on a tout créé ou que tout existe "creer" retourne l'UID du semestre,
// si on a un boolean c'est FALSE => erreur // si on a un boolean c'est FALSE => erreur
@ -215,7 +215,7 @@ class DataBase{
* @return semestreUID<int> l'UID du semestre courant * @return semestreUID<int> l'UID du semestre courant
* *
*/ */
public static function studentSemestre($etudiant, $semestre_pair, $annee){ public function studentSemestre($etudiant, $semestre_pair, $annee){
if( $semestre = semestreRepo::forStudent($etudiant, $semestre_pair, $annee) ) // si on a un résultat if( $semestre = semestreRepo::forStudent($etudiant, $semestre_pair, $annee) ) // si on a un résultat
return $semestre; return $semestre;
else else
@ -231,8 +231,17 @@ class DataBase{
* @return enseignants<Array> retourne la liste des enseignants de la bdd * @return enseignants<Array> retourne la liste des enseignants de la bdd
* *
*/ */
public static function listeUtilisateursRole(){ public function listeUtilisateursRole($annee){
return userRepo::getRoleUsers(); $roleUsers = userRepo::getRoleUsers();
foreach($roleUsers as $iter=>$user){
$uelist = $this->getModulesByUEByEnseignant($user['id'], null, $annee);
if( is_array($uelist) )
$roleUsers[$iter]['uelist'] = $uelist;
}
var_dump( $roleUsers );
return $roleUsers;
} }
@ -242,7 +251,7 @@ class DataBase{
* @return annees<Array> retourne la liste des années contenant chacunes leurs semestres * @return annees<Array> retourne la liste des années contenant chacunes leurs semestres
* *
*/ */
public static function getListeSemestres(){ public function getListeSemestres(){
$listeAnnees = semestreRepo::getAnnees(); $listeAnnees = semestreRepo::getAnnees();
foreach($listeAnnees as $iter_a=>$annee){ foreach($listeAnnees as $iter_a=>$annee){

View File

@ -159,6 +159,10 @@ class semestreRepo extends DBAccess{
* *
*/ */
public static function forTeacher($enseignant, $semestre_pair, $annee){ public static function forTeacher($enseignant, $semestre_pair, $annee){
$semestrePair0 = '0'; $semestrePair1 = '1';
if( is_bool($semestre_pair) ){ $semestrePair0 = ($semestre_pair)?'0':'1'; $semestrePair1 = ($semestre_pair)?'0':'1'; }
$getSemestreList = DataBase::getPDO()->prepare("SELECT DISTINCT s.id_semestre as id, f.id_formation, f.code as formation, f.nom as nom_formation, s.nom, s.rang, s.annee $getSemestreList = DataBase::getPDO()->prepare("SELECT DISTINCT s.id_semestre as id, f.id_formation, f.code as formation, f.nom as nom_formation, s.nom, s.rang, s.annee
FROM semestre as s, formation as f, enseignement as ens, mcc_module as mcc_m, mcc_ue FROM semestre as s, formation as f, enseignement as ens, mcc_module as mcc_m, mcc_ue
WHERE s.id_semestre = mcc_ue.id_semestre WHERE s.id_semestre = mcc_ue.id_semestre
@ -167,10 +171,10 @@ class semestreRepo extends DBAccess{
AND mcc_m.id_mcc_module = ens.id_mcc_module AND mcc_m.id_mcc_module = ens.id_mcc_module
AND ens.id_enseignant = :enseignant AND ens.id_enseignant = :enseignant
AND s.rang % 2 = :semestre_pair AND (s.rang % 2 = :semestre_pair0 OR s.rang % 2 = :semestre_pair1)
AND s.annee = :annee AND s.annee = :annee
ORDER BY s.rang ASC"); ORDER BY s.rang ASC");
$getSemestreList->execute(array( ':enseignant' => $enseignant, ':semestre_pair' => ($semestre_pair) ? '0' : '1', ':annee' => $annee )); $getSemestreList->execute(array( ':enseignant' => $enseignant, ':semestre_pair0' => $semestrePair0, ':semestre_pair1' => $semestrePair1, ':annee' => $annee ));
return DataBase::delNumeric( $getSemestreList->fetchAll() ); return DataBase::delNumeric( $getSemestreList->fetchAll() );
} }

View File

@ -43,7 +43,11 @@ class userRepo extends DBAccess{
AND app.id_semestre = :semestre"); AND app.id_semestre = :semestre");
$getUtilisateurUID->execute(array( ':identifiant' => $identifiant, ':semestre' => $semestre )); $getUtilisateurUID->execute(array( ':identifiant' => $identifiant, ':semestre' => $semestre ));
}elseif( is_bool($semestre_pair) && $annee != null ){ }elseif( $annee != null ){
$semestrePair0 = '0'; $semestrePair1 = '1';
if( is_bool($semestre_pair) ){ $semestrePair0 = ($semestre_pair)?'0':'1'; $semestrePair1 = ($semestre_pair)?'0':'1'; }
/* [2] Cas on cherche si un enseignant enseigne l'année donnée /* [2] Cas on cherche si un enseignant enseigne l'année donnée
==============================================================*/ ==============================================================*/
@ -55,9 +59,9 @@ class userRepo extends DBAccess{
AND mcc_ue.id_semestre = s.id_semestre AND mcc_ue.id_semestre = s.id_semestre
AND u.identifiant = :identifiant AND u.identifiant = :identifiant
AND s.rang % 2 = :semestre_pair AND (s.rang % 2 = :semestre_pair0 OR s.rang % 2 = :semestre_pair1)
AND s.annee = :annee"); AND s.annee = :annee");
$getUtilisateurUID->execute(array( ':identifiant' => $identifiant, ':semestre_pair' => ($semestre_pair) ? '0' : '1', ':annee' => $annee )); $getUtilisateurUID->execute(array( ':identifiant' => $identifiant, ':semestre_pair0' => $semestrePair0, ':semestre_pair1' => $semestrePair1, ':annee' => $annee ));
}else // si les paramètres sont pas bons }else // si les paramètres sont pas bons
return false; return false;

View File

@ -95,11 +95,11 @@ require_once __ROOT__.'/manager/database.php';
$answer->request = 'permission_error'; $answer->request = 'permission_error';
break; break;
/*************************/ /******************************************/
/* liste des enseignants */ /* liste des enseignants avec leurs rôles */
/*************************/ /******************************************/
case 'getListeEnseignants': if( permission('admin') ){ case 'getListeEnseignantsModules': if( permission('admin') ){
$answer->userlist = DataBase::getInstance()->listeUtilisateursRole(); $answer->userlist = DataBase::getInstance()->listeUtilisateursRole($_SESSION['annee']);
$answer->request = 'success'; $answer->request = 'success';
}else }else
$answer->request = 'permission_error'; $answer->request = 'permission_error';

View File

@ -24,7 +24,7 @@ if( permission('admin') ){
// création de la requête // création de la requête
$request = new stdClass(); $answer = new stdClass(); $request = new stdClass(); $answer = new stdClass();
$request->level_1 = 'getListeEnseignants'; $request->level_1 = 'getListeEnseignantsModules';
// gestion de la requête // gestion de la requête
user_switch_level_1($request, $answer); user_switch_level_1($request, $answer);