[x] Gestion capitalisaton automatique lors première vue
This commit is contained in:
parent
20e5329df5
commit
ae2450c9e3
|
@ -1 +1 @@
|
|||
/manager/conf*.json
|
||||
/manager/conf.json
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"host" : "mysql.hostinger.fr",
|
||||
"dbname" : "u712664263_sid",
|
||||
"user" : "u712664263_php",
|
||||
"password" : "Qt358nUdyeTxLDM8"
|
||||
}
|
|
@ -1,15 +1,5 @@
|
|||
<?php require_once __ROOT__.'/manager/security.php';
|
||||
|
||||
/* INCLUSION DES REPOs */
|
||||
// require_once __ROOT__.'/manager/repo/user.php'; // gestion des utilisateurs (UID, infos, création, modification)
|
||||
// require_once __ROOT__.'/manager/repo/group.php'; // gestion des groupes & appartenances (UID, ajouter membres, visu membres, création, modification)
|
||||
// require_once __ROOT__.'/manager/repo/semestre.php';
|
||||
// require_once __ROOT__.'/manager/repo/module.php';
|
||||
// require_once __ROOT__.'/manager/repo/ue.php';
|
||||
// require_once __ROOT__.'/manager/repo/controle.php';
|
||||
// require_once __ROOT__.'/manager/repo/note.php';
|
||||
// debug();
|
||||
|
||||
class DBAccess{};
|
||||
|
||||
class DataBase{
|
||||
|
@ -1062,7 +1052,7 @@ class DataBase{
|
|||
$parcours = semestreRepo::getParcours($etudiantUID);
|
||||
|
||||
// contiendra les couples [id_formation, rang] pour les semestres capitalisables
|
||||
$listeSemestresCapitalisables = array();
|
||||
$listeSemestresFR = array();
|
||||
|
||||
/* [1] Chaque semestre
|
||||
==========================*/
|
||||
|
@ -1074,10 +1064,9 @@ class DataBase{
|
|||
if( strlen($UE) == 0 )
|
||||
unset($inactiveUE[$i]);
|
||||
|
||||
// si des UEs non pris en compte, on ajoute le rang+formation à la liste
|
||||
if( count($inactiveUE) > 0 )
|
||||
if( !in_array( array($semestre['id_formation'], $semestre['rang']), $listeSemestresCapitalisables) )
|
||||
array_push($listeSemestresCapitalisables, array($semestre['id_formation'], $semestre['rang']));
|
||||
// si pas déjà ajouté, on ajoute le rang+formation à la liste
|
||||
if( !in_array( array($semestre['id_formation'], $semestre['rang']), $listeSemestresFR) )
|
||||
array_push($listeSemestresFR, array($semestre['id_formation'], $semestre['rang']));
|
||||
|
||||
$parcours[$iter_s]['UEs'] = ueRepo::forStudent($etudiantUID, $semestre['id']);
|
||||
|
||||
|
@ -1141,12 +1130,12 @@ class DataBase{
|
|||
$totalSemestre += $tmpUE['coefficient'];
|
||||
|
||||
// le semestre est non compensable si la moyenne d'au moins un UE < 8
|
||||
if( 20*$tmpUE['moyenne']['moyenne']/$tmpUE['moyenne']['base'] < 8 )
|
||||
$semestreCompensable = false;
|
||||
// if( 20*$tmpUE['moyenne']['moyenne']/$tmpUE['moyenne']['base'] < 8 )
|
||||
// $semestreCompensable = false;
|
||||
|
||||
// semestreCompensé est VRAI si au moins un semestre est entre 8 et 10
|
||||
if( 20*$tmpUE['moyenne']['moyenne']/$tmpUE['moyenne']['base'] >= 8 && 20*$tmpUE['moyenne']['moyenne']/$tmpUE['moyenne']['base'] < 10 )
|
||||
$semestreCompensation = true;
|
||||
// // semestreCompensé est VRAI si au moins un semestre est entre 8 et 10
|
||||
// if( 20*$tmpUE['moyenne']['moyenne']/$tmpUE['moyenne']['base'] >= 8 && 20*$tmpUE['moyenne']['moyenne']/$tmpUE['moyenne']['base'] < 10 )
|
||||
// $semestreCompensation = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1182,17 +1171,19 @@ class DataBase{
|
|||
|
||||
/* LISTE DES UES CAPITALISÉES PAR SEMESTRES REGROUPÉS (FORMATION+RANG) */
|
||||
// On ajoute toutes les UE capitalisées
|
||||
foreach($listeSemestresCapitalisables as $i=>$formationRang){
|
||||
foreach($listeSemestresFR as $i=>$formationRang){
|
||||
|
||||
// pour cette formation+rang, on récupère toutes les UEs
|
||||
$listeUEs = array();
|
||||
$UEUIDS = array();
|
||||
$listeSemestresIndexes = array();
|
||||
|
||||
foreach($parcours as $iter_s=>$semestre){
|
||||
//var_dump('f:'.$formationRang[0].'/'.$formationRang[1]);
|
||||
foreach(array_reverse($parcours) as $iter_s=>$semestre){
|
||||
|
||||
// si fait partie de la formation+rang courante
|
||||
if( $formationRang == array( $semestre['id_formation'], $semestre['rang'] ) ){
|
||||
//var_dump(' s:'.$semestre['id']);
|
||||
|
||||
// on ajoute l'index du semestre à la liste
|
||||
array_push($listeSemestresIndexes, $iter_s);
|
||||
|
@ -1202,11 +1193,13 @@ class DataBase{
|
|||
if( !in_array($UE['id'], $semestre['inactive']) ){
|
||||
if( array_search($UE['id'], $UEUIDS) === false ){
|
||||
// pour le premier UE (capitalisé) on s'assure de lui attribuer la capitalisation
|
||||
//var_dump(' u:'.$UE['id']);
|
||||
DataBase::getInstance()->capitaliserUE($UE['id'], $semestre['id'], $etudiantUID);
|
||||
array_push( $listeUEs, $UE );
|
||||
array_push( $UEUIDS, $UE['id'] );
|
||||
}//else // si UE existe déjà pour formation+rang, on créé la capitalisation du semestre (on le désactive)
|
||||
}
|
||||
}
|
||||
}//else
|
||||
//var_dump(' x:'.$UE['id']);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue