Modifications mineures

This commit is contained in:
xdrm-brackets 2015-11-10 22:33:51 +01:00
parent 6cd8bebe8c
commit 33b2d5c654
5 changed files with 57 additions and 14 deletions

View File

@ -215,7 +215,7 @@ class DataBase{
// on cherche tout les groupes du même semestre de la même année // on cherche tout les groupes du même semestre de la même année
$getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT g.nom, s.rang, s.nom as semestre ". $getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT g.id_groupe as id, g.nom, s.rang, s.nom as semestre ".
"FROM groupe as g, semestre as s, appartenance as app ". "FROM groupe as g, semestre as s, appartenance as app ".
"WHERE g.id_groupe = app.id_groupe ". "WHERE g.id_groupe = app.id_groupe ".
"AND s.id_semestre = app.id_semestre ". "AND s.id_semestre = app.id_semestre ".
@ -230,12 +230,12 @@ class DataBase{
// on parcourt tous les groupes // on parcourt tous les groupes
while( $groupeUID = $getGroupesUID->fetch() ){ while( $groupeUID = $getGroupesUID->fetch() ){
$groupe = new stdClass(); $groupe = new stdClass();
$groupe->nom = $groupeUID['nom']; // attribut "nom" ajouté au groupe $groupe->nom = $groupeUID['nom']; // attribut "nom" ajouté au groupe
$groupe->semestre = $groupeUID['semestre']; $groupe->semestre = $groupeUID['semestre'];
$groupe->userlist = $this->listeEtudiantsGroupe($groupe->nom, $semestre, $annee); // on charge la liste des utilisateurs de ce groupe $groupe->userlist = groupRepo::membres($groupeUID['id'], $semestreUID); // on charge la liste des utilisateurs de ce groupe
array_push($grouplist, $groupe); // on l'ajoute au résultat array_push($grouplist, $groupe); // on l'ajoute au résultat
} }
@ -268,7 +268,7 @@ class DataBase{
return 'unknown_year'; return 'unknown_year';
// on cherche tout les groupes du même semestre de la même année // on cherche tout les groupes du même semestre de la même année
$getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT g.nom, s.rang, s.nom as semestre ". $getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT g.id_groupe as id, g.nom, s.rang, s.id_semestre, s.nom as semestre ".
"FROM groupe as g, semestre as s, appartenance as app ". "FROM groupe as g, semestre as s, appartenance as app ".
"WHERE g.id_groupe = app.id_groupe ". "WHERE g.id_groupe = app.id_groupe ".
"AND s.id_semestre = app.id_semestre ". "AND s.id_semestre = app.id_semestre ".
@ -294,7 +294,7 @@ class DataBase{
$groupe->nom = $groupeUID['nom']; // attribut "nom" ajouté au groupe $groupe->nom = $groupeUID['nom']; // attribut "nom" ajouté au groupe
$groupe->semestre = $groupeUID['semestre']; $groupe->semestre = $groupeUID['semestre'];
$groupe->userlist = $this->listeEtudiantsGroupe($groupe->nom, $groupeUID['rang'], $annee); // on charge la liste des utilisateurs de ce groupe $groupe->userlist = groupRepo::membres($groupeUID['id'], $groupeUID['id_semestre']); // on charge la liste des utilisateurs de ce groupe
array_push($grouplist, $groupe); // on l'ajoute au résultat array_push($grouplist, $groupe); // on l'ajoute au résultat
} }
@ -306,7 +306,9 @@ class DataBase{
/******************************************************************/ /******************************************************************/
/*** retourne la liste des utilisateurs des groupes d'une année ***/ /*** retourne la liste des utilisateurs des groupes d'une année ***/
/******************************************************************/ /******************************************************************/
public function listeEtudiantsTousGroupesEnseignant($annee, $enseignant, $pSemestre, $pGroupe){ public function listeEtudiantsTousGroupesEnseignant($annee, $semestre_pair, $enseignant, $pSemestre, $pGroupe){
$semestre_pair = ($semestre_pair) ? '0' : '1';
// définition des paramètres optionnels // définition des paramètres optionnels
$semestreDeb = 1; $semestreFin = 4; $semestreDeb = 1; $semestreFin = 4;
if( $pSemestre != null ){ $semestreDeb = $pSemestre; $semestreFin = $pSemestre; } // semestre donné uniquement (si param non null) if( $pSemestre != null ){ $semestreDeb = $pSemestre; $semestreFin = $pSemestre; } // semestre donné uniquement (si param non null)
@ -331,7 +333,7 @@ class DataBase{
// on cherche tout les groupes du même semestre de la même année // on cherche tout les groupes du même semestre de la même année
$getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT s.nom as semestre, s.rang, g.nom as nom ". $getGroupesUID = DataBase::getPDO()->prepare("SELECT DISTINCT g.id_groupe as id, s.id_semestre, s.nom as semestre, s.rang, g.nom as nom ".
"FROM module as m, utilisateur as u, utilisateur as eleve, groupe as g, enseignement as ens, mcc_ue, mcc_module as mcc_m, semestre as s, appartenance as app ". "FROM module as m, utilisateur as u, utilisateur as eleve, groupe as g, enseignement as ens, mcc_ue, mcc_module as mcc_m, semestre as s, appartenance as app ".
"WHERE mcc_ue.id_semestre = s.id_semestre ". "WHERE mcc_ue.id_semestre = s.id_semestre ".
"AND mcc_ue.id_mcc_ue = mcc_m.id_mcc_ue ". "AND mcc_ue.id_mcc_ue = mcc_m.id_mcc_ue ".
@ -346,7 +348,8 @@ class DataBase{
"AND app.id_groupe = g.id_groupe ". "AND app.id_groupe = g.id_groupe ".
"AND g.nom LIKE '".$groupeOpt."' ". "AND g.nom LIKE '".$groupeOpt."' ".
"AND s.rang BETWEEN :semestreDeb AND :semestreFin ". "AND s.rang BETWEEN :semestreDeb AND :semestreFin ".
"AND s.rang % 2 = :semestre_pair ".
"AND s.annee = :annee ". "AND s.annee = :annee ".
"AND u.identifiant = :enseignantUID ". "AND u.identifiant = :enseignantUID ".
"ORDER BY s.rang, g.nom"); "ORDER BY s.rang, g.nom");
@ -355,8 +358,10 @@ class DataBase{
':semestreDeb' => $semestreDeb, ':semestreDeb' => $semestreDeb,
':semestreFin' => $semestreFin, ':semestreFin' => $semestreFin,
':annee' => $annee, ':annee' => $annee,
':semestre_pair' => $semestre_pair,
':enseignantUID' => $enseignantUID ':enseignantUID' => $enseignantUID
)); ));
$grouplist = array(); // contiendra tout les groupes $grouplist = array(); // contiendra tout les groupes
// on parcourt tous les groupes // on parcourt tous les groupes
@ -366,7 +371,7 @@ class DataBase{
$groupe->nom = $groupeUID['nom']; // attribut "nom" ajouté au groupe $groupe->nom = $groupeUID['nom']; // attribut "nom" ajouté au groupe
$groupe->semestre = $groupeUID['semestre']; $groupe->semestre = $groupeUID['semestre'];
$groupe->userlist = $this->listeEtudiantsGroupe($groupe->nom, $groupeUID['rang'], $annee); // on charge la liste des utilisateurs de ce groupe $groupe->userlist = groupRepo::membres($groupeUID['id'], $groupeUID['id_semestre']); // on charge la liste des utilisateurs de ce groupe
array_push($grouplist, $groupe); // on l'ajoute au résultat array_push($grouplist, $groupe); // on l'ajoute au résultat
} }

View File

@ -181,7 +181,7 @@ require_once __ROOT__.'/manager/database.php';
if( $enseignantCheck ){ if( $enseignantCheck ){
$grouplist = DataBase::getInstance()->listeEtudiantsTousGroupesEnseignant($request->annee, $request->enseignant, $semestre, $groupe); $grouplist = DataBase::getInstance()->listeEtudiantsTousGroupesEnseignant($request->annee, $_SESSION['semestre_pair'], $request->enseignant, $semestre, $groupe);
if( is_array($grouplist) ){ // si on a récupéré la liste des utilisateurs if( is_array($grouplist) ){ // si on a récupéré la liste des utilisateurs
$answer->grouplist = $grouplist; $answer->grouplist = $grouplist;

View File

@ -154,7 +154,37 @@ class groupRepo extends DBAccess{
/* RETOURNE LA LISTE DES UTILISATEURS MEMBRES D'UN GROUPE
*
* @groupeUID<int> l'UID du groupe en question
* @semestreUID<int> l'UID du semestre en question
*
* @return membres<Array> la liste des utilisateurs du groupe
*
*/
public static function membres($groupeUID, $semestreUID){
// si le groupe existe => on récupère ses utilisateurs
$getMembres = DataBase::getPDO()->prepare("SELECT u.identifiant, u.prenom, u.nom, u.mail, u.droits, s.nom as semestre ".
"FROM utilisateur as u, groupe as g, semestre as s, appartenance as app ".
"WHERE u.identifiant = app.id_etudiant ".
"AND g.id_groupe = app.id_groupe ".
"AND app.id_semestre = app.id_semestre ". // à virer (peut-être)
"AND g.id_groupe = :groupeUID ".
"AND s.id_semestre = :semestreUID ".
"ORDER BY u.prenom, u.nom");
$getMembres->execute(array(
':groupeUID' => $groupeUID,
':semestreUID' => $semestreUID
));
// on retourne la liste des membres en supprimant les doublons à indices numériques
return DataBase::delNumeric( $getMembres->fetchAll() );
}
} }

View File

@ -56,6 +56,13 @@
/*********** AURELIEN TROU DU CUL TU TE DEMERDE ***********/
function checkParams($arrayVar, $arrayType, $arrayRegex){
}
/* [1] SESSIONS & REDIRECTION /* [1] SESSIONS & REDIRECTION
============================================================*/ ============================================================*/

View File

@ -1,10 +1,11 @@
| css | 954 | | css | 954 |
| js | 822 | | js | 822 |
| manager | 2014 | | manager | 2011 |
| page | 863 | | repo | 407 |
| page | 919 |
| _JS | 98 | | _JS | 98 |
| API.js | 77 | | API.js | 77 |
| API.php | 104 | | API.php | 104 |
| index.php | 142 | | index.php | 141 |
+-----------+-------+ +-----------+-------+
| TOTAL | 5074 | | TOTAL | 5533 |