function ConstruireEDTClasseDuJour($id_classe, $period, $jour) { global $contenu_creneaux_edt_avec_span_title; $table_data = array(); $tab_cours = array(); $type_edt = "classe"; $entetes = ConstruireEnteteEDT(); while (!isset($entetes['entete'][$jour])) { $jour--; } $jour_sem_tab[$jour] = $entetes['entete'][$jour]; $tab_data['entete'][$jour] = $entetes['entete'][$jour]; $req_id_creneaux = mysqli_query($GLOBALS["mysqli"], "SELECT id_definie_periode FROM edt_creneaux\r\n\t\t\t\t\t\t\t WHERE type_creneaux != 'pause'") or die(mysqli_error($GLOBALS["mysqli"])); $nbre_lignes = mysqli_num_rows($req_id_creneaux); if ($nbre_lignes == 0) { $nbre_lignes = 1; } if ($nbre_lignes > 10) { $nbre_lignes = 10; } $tab_data['nb_creneaux'] = $nbre_lignes; $index_box = 0; $erreur = false; while (isset($jour_sem_tab[$jour])) { $tab_id_creneaux = retourne_id_creneaux(); $j = 0; $elapse_time = 0; while (isset($tab_id_creneaux[$j]) and !$erreur) { $nb_rows = RecupereEnseignementsID($j, $jour_sem_tab[$jour], $id_classe, $tab_cours, $period); // ========================================== créneau vide if ($nb_rows == 0) { $delay = 2 - $elapse_time % 2; RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule" . $delay, "cadre", ""); $elapse_time += $delay; } else { if ($nb_rows == 1) { // ---- Le cours a lieu en semaine A ou B if ($tab_cours['id_semaine'][0] != '0') { $duree_max = $tab_cours['duree'][0]; $heuredeb_dec = $tab_cours['heuredeb_dec'][0]; // ========= études des cas n°2 , 6 et 7 if ($duree_max == 1) { //|| (($duree_max == 2) AND ($heuredeb_dec == 0)) if ($heuredeb_dec == 0 and $elapse_time % 2 != 0) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } else { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule2", "", ""); if ($duree_max == 1 and $heuredeb_dec != 0) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][0], $tab_cours['id_aid'][0], $tab_cours['id_semaine'][0], $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][0], "cellule" . $duree_max, $tab_cours['couleur'][0], $contenu); $elapse_time += $duree_max; if ($duree_max == 1 and $heuredeb_dec == 0) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule2", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule2", "cadre", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); } } else { $duree_max1 = DureeMax2ColonnesClasse($jour_sem_tab[$jour], $id_classe, $tab_id_creneaux, $elapse_time, $tab_cours, $j, 0, 1, $period); $duree_max2 = 0; //DureeMax2ColonnesClasse($jour_sem_tab[$jour], $id_classe, $tab_id_creneaux, $elapse_time,$tab_cours, $j,1,0 ); if ($duree_max1 >= $duree_max2) { $duree_max = $duree_max1; } else { $duree_max = $duree_max2; } ConstruireColonneClasse($elapse_time, $tab_cours, 0, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, '0', $tab_data, $index_box, $period); ConstruireColonneClasse($elapse_time, $tab_cours, 1, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, $tab_cours['id_semaine'][0], $tab_data, $index_box, $period); $elapse_time += $duree_max; } } else { // ======== étude du cas n°5 if ($tab_cours['heuredeb_dec'][0] != 0 and $elapse_time % 2 == 0) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } // ======== étude du cas n°3 if ($tab_cours['heuredeb_dec'][0] == 0 and $elapse_time % 2 == 1 and $tab_cours['duree'][0] == 1) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } else { $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][0], $tab_cours['id_aid'][0], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][0], "cellule" . $tab_cours['duree'][0], $tab_cours['couleur'][0], $contenu); $elapse_time += (int) $tab_cours['duree'][0]; } } } else { if ($nb_rows == 2) { $duree1 = $tab_cours['duree'][0]; $heuredeb_dec1 = $tab_cours['heuredeb_dec'][0]; $id_semaine1 = $tab_cours['id_semaine'][0]; $duree2 = $tab_cours['duree'][1]; $heuredeb_dec2 = $tab_cours['heuredeb_dec'][1]; $id_semaine2 = $tab_cours['id_semaine'][1]; // ---- cas classique des alignements des cours de langues // ---- les id_semaine sont identiques pour les deux cours : 0 0, A A ou B B. // ---- cas non traités : génération des deux colonnes à partir de la notion de groupes // ---- ici, on n'affiche qu'un créneau et si les cours sont de durées différentes, on // ---- complète avec des créneaux vides. if ($id_semaine1 == $id_semaine2) { $elapse_time1 = $elapse_time; if ($heuredeb_dec1 != 0 and $elapse_time1 % 2 == 0) { $duree1++; } if ($heuredeb_dec2 != 0 and $elapse_time1 % 2 == 0) { $duree2++; } if ($duree1 > $duree2) { $duree_max = $duree1; } else { $duree_max = $duree2; } RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $duree_max, "", ""); if ($heuredeb_dec1 != 0 and $elapse_time1 % 2 == 0) { RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time1++; } $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][0], $tab_cours['id_aid'][0], "", $period); RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][0], "cellule" . $tab_cours['duree'][0], $tab_cours['couleur'][0], $contenu); $elapse_time1 += (int) $tab_cours['duree'][0]; if ($elapse_time1 < $elapse_time + $duree_max) { $time_left = $elapse_time + $duree_max - $elapse_time1; RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule" . $time_left, "cadre", ""); $elapse_time1++; } RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $elapse_time1 = $elapse_time; RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $duree_max, "", ""); if ($heuredeb_dec2 != 0 and $elapse_time1 % 2 == 0) { RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time1++; } $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][1], $tab_cours['id_aid'][1], "", $period); RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][1], "cellule" . $tab_cours['duree'][1], $tab_cours['couleur'][1], $contenu); $elapse_time1 += (int) $tab_cours['duree'][1]; if ($elapse_time1 < $elapse_time + $duree_max) { $time_left = $elapse_time + $duree_max - $elapse_time1; RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule" . $time_left, "cadre", ""); $elapse_time1++; } RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $elapse_time += $duree_max; } else { // ========= étude des cas n°8 et n°9 et n°14 et n°15 et n°16 et 10 $duree_max1 = DureeMax2ColonnesClasse($jour_sem_tab[$jour], $id_classe, $tab_id_creneaux, $elapse_time, $tab_cours, $j, 0, 1, $period); $duree_max2 = DureeMax2ColonnesClasse($jour_sem_tab[$jour], $id_classe, $tab_id_creneaux, $elapse_time, $tab_cours, $j, 1, 0, $period); if ($duree_max1 >= $duree_max2) { $duree_max = $duree_max1; } else { $duree_max = $duree_max2; } ConstruireColonneClasse($elapse_time, $tab_cours, 0, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, '0', $tab_data, $index_box, $period); ConstruireColonneClasse($elapse_time, $tab_cours, 1, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, $tab_cours['id_semaine'][0], $tab_data, $index_box, $period); $elapse_time += $duree_max; } } else { if ($nb_rows == 3) { $duree1 = $tab_cours['duree'][0]; $heuredeb_dec1 = $tab_cours['heuredeb_dec'][0]; $id_semaine1 = $tab_cours['id_semaine'][0]; $duree2 = $tab_cours['duree'][1]; $heuredeb_dec2 = $tab_cours['heuredeb_dec'][1]; $id_semaine2 = $tab_cours['id_semaine'][1]; $duree3 = $tab_cours['duree'][2]; $heuredeb_dec3 = $tab_cours['heuredeb_dec'][2]; $id_semaine3 = $tab_cours['id_semaine'][2]; $tab_cas = EtudeDeCasTroisCours($tab_cours); if ($tab_cas['cas_detecte'] >= 22 and $tab_cas['cas_detecte'] <= 30) { $elapse_time1 = $elapse_time; // ---- TODO : Calculer proprement $duree_max if ($heuredeb_dec1 != 0 and $elapse_time1 % 2 == 0) { $duree1++; } if ($heuredeb_dec2 != 0 and $elapse_time1 % 2 == 0) { $duree2++; } if ($heuredeb_dec3 != 0 and $elapse_time1 % 2 == 0) { $duree3++; } if ($duree1 > $duree2) { $duree_max = $duree1; } else { $duree_max = $duree2; } if ($duree3 > $duree_max) { $duree_max = $duree3; } // ---- la variable suivante est une mémoire pour savoir quel enregistrement utiliser. $isFirstColUsed = false; // ---- remplissage de la colonne 1/3 $res = ConstruireColonneClasseTiers($elapse_time, $tab_cours, 0, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, '0', $tab_data, $index_box, $isFirstColUsed, $period); //if ($res > $elapse_time + $duree_max) //{ // $duree_max = $res - $elapse_time; //} // ---- remplissage de la colonne 2/3 $res = ConstruireColonneClasseTiers($elapse_time, $tab_cours, 1, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, '0', $tab_data, $index_box, $isFirstColUsed, $period); //if ($res > $elapse_time + $duree_max) //{ // $duree_max = $res - $elapse_time; //} // ---- remplissage de la colonne 3/3 $res = ConstruireColonneClasseTiers($elapse_time, $tab_cours, 2, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, '0', $tab_data, $index_box, $isFirstColUsed, $period); //if ($res > $elapse_time + $duree_max) //{ // $duree_max = $res - $elapse_time; //} $elapse_time += $duree_max; } else { if ($tab_cas['cas_detecte'] == 17) { $indice = $tab_cas['indice']; $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][$indice], $tab_cours['id_aid'][$indice], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][$indice], "cellule" . $tab_cours['duree'][$indice], $tab_cours['couleur'][$indice], $contenu); $elapse_time += (int) $tab_cours['duree'][$indice]; $indice2 = ($indice + 1) % 3; $indice3 = ($indice + 2) % 3; $duree1 = $tab_cours['duree'][$indice2]; $heuredeb_dec1 = $tab_cours['heuredeb_dec'][$indice2]; $id_semaine1 = $tab_cours['id_semaine'][$indice2]; $duree2 = $tab_cours['duree'][$indice3]; $heuredeb_dec2 = $tab_cours['heuredeb_dec'][$indice3]; $id_semaine2 = $tab_cours['id_semaine'][$indice3]; if ($tab_cours['id_semaine'][$indice2] == $tab_cours['id_semaine'][$indice3]) { $elapse_time1 = $elapse_time; if ($heuredeb_dec1 != 0 and $elapse_time1 % 2 == 0) { $duree1++; } if ($heuredeb_dec2 != 0 and $elapse_time1 % 2 == 0) { $duree2++; } if ($duree1 > $duree2) { $duree_max = $duree1; } else { $duree_max = $duree2; } RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $duree_max, "", ""); if ($heuredeb_dec1 != 0 and $elapse_time1 % 2 == 0) { RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time1++; } $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][0], $tab_cours['id_aid'][0], "", $period); RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][0], "cellule" . $tab_cours['duree'][0], $tab_cours['couleur'][0], $contenu); $elapse_time1 += (int) $tab_cours['duree'][0]; if ($elapse_time1 < $elapse_time + $duree_max) { $time_left = $elapse_time + $duree_max - $elapse_time1; RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule" . $time_left, "cadre", ""); $elapse_time1++; } RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $elapse_time1 = $elapse_time; RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $duree_max, "", ""); if ($heuredeb_dec2 != 0 and $elapse_time1 % 2 == 0) { RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time1++; } $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][1], $tab_cours['id_aid'][1], "", $period); RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][1], "cellule" . $tab_cours['duree'][1], $tab_cours['couleur'][1], $contenu); $elapse_time1 += (int) $tab_cours['duree'][1]; if ($elapse_time1 < $elapse_time + $duree_max) { $time_left = $elapse_time + $duree_max - $elapse_time1; RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule" . $time_left, "cadre", ""); $elapse_time1++; } RemplirBox($elapse_time1, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $elapse_time += $duree_max; } else { $duree_max = DureeMax2ColonnesClasse($jour_sem_tab[$jour], $id_classe, $tab_id_creneaux, $elapse_time, $tab_cours, $j, $indice2, $indice3, $period); ConstruireColonneClasse($elapse_time, $tab_cours, $indice2, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, '0', $tab_data, $index_box, $period); ConstruireColonneClasse($elapse_time, $tab_cours, $indice3, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, $tab_cours['id_semaine'][$indice2], $tab_data, $index_box, $period); $elapse_time += $duree_max; } } else { if ($tab_cas['cas_detecte'] == 18) { $indice = $tab_cas['indice']; $indice2 = ($indice + 1) % 3; $indice3 = ($indice + 2) % 3; RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][$indice2], $tab_cours['id_aid'][$indice2], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][$indice2], "cellule" . $tab_cours['duree'][$indice2], $tab_cours['couleur'][$indice2], $contenu); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][$indice3], $tab_cours['id_aid'][$indice3], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][$indice3], "cellule" . $tab_cours['duree'][$indice3], $tab_cours['couleur'][$indice3], $contenu); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $elapse_time += (int) $tab_cours['duree'][$indice2]; $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][$indice], $tab_cours['id_aid'][$indice], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", $tab_cours['id_cours'][$indice], "cellule" . $tab_cours['duree'][$indice], $tab_cours['couleur'][$indice], $contenu); $elapse_time += (int) $tab_cours['duree'][$indice]; } else { if ($tab_cas['cas_detecte'] == 19) { $indice = $tab_cas['indice']; $indice2 = ($indice + 1) % 3; $indice3 = ($indice + 2) % 3; if ($tab_cours['id_semaine'][$indice] == $tab_cours['id_semaine'][$indice2]) { $rang = $indice3; } else { $rang = $indice2; } $duree_max = DureeMax2ColonnesClasse($jour_sem_tab[$jour], $id_classe, $tab_id_creneaux, $elapse_time, $tab_cours, $j, $indice, $rang, $period); ConstruireColonneClasse($elapse_time, $tab_cours, $indice, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, '0', $tab_data, $index_box, $period); ConstruireColonneClasse($elapse_time, $tab_cours, $rang, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, $tab_cours['id_semaine'][$indice], $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { if ($tab_cas['cas_detecte'] == 20 or $tab_cas['cas_detecte'] == 21) { $indice = $tab_cas['indice']; $indice2 = ($indice + 1) % 3; $indice3 = ($indice + 2) % 3; $duree_max = DureeMax2ColonnesClasse($jour_sem_tab[$jour], $id_classe, $tab_id_creneaux, $elapse_time, $tab_cours, $j, $indice2, $indice3, $period); ConstruireColonneClasse($elapse_time, $tab_cours, $indice2, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, '0', $tab_data, $index_box, $period); ConstruireColonneClasse($elapse_time, $tab_cours, $indice3, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $id_classe, $tab_cours['id_semaine'][$indice2], $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { $erreur = true; echo "<div class= \"cadreInformation\">Erreur sur la génération de l'emploi du temps : " . $tab_cas['cas_detecte'] . "</div>"; } } } } } } else { // ============= gloups ! 4 enseignements ou plus sur le même créneau // $contenu = ""; for ($z = 0; $z < $nb_rows; $z++) { $contenu .= "<p>" . ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $tab_cours['id_groupe'][$z], $tab_cours['id_aid'][$z], "", $period) . "</p>"; } // Normalement, l'ajout $tab_cours['id_groupe'][XXX] est inutile. // On ne devrait pas avoir de collision d'id_dev pour un créneau sur un jour donné //$id_div = "ens_".$tab_id_creneaux[$j]."_".$jour_sem_tab[$jour]."_".$tab_cours['id_groupe'][$z]; $id_div = "ens_" . $tab_id_creneaux[$j] . "_" . $jour_sem_tab[$jour] . "_" . $tab_cours['id_groupe'][0]; $case_tab = "<a href='#' onclick=\"afficher_div('" . $id_div . "','n',0,0);return false;\">\r\n<img src=\"../templates/" . NameTemplateEDT() . "/images/voir.png\" title=\"voir les cours\" alt=\"voir les cours\" /> </a>" . creer_div_infobulle($id_div, "Liste des enseignements", "#330033", $contenu, "#FFFFFF", 20, 0, "y", "n", "y", "n") . "\n"; RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], "", "", "cellule2", "cadreRouge", $case_tab); //RemplirBox($elapse_time,$tab_data[$jour], $index_box, "erreur", $tab_id_creneaux[$j], "none", "none", "cellule2", "cadreRouge", "C08"); $elapse_time += 2; } } } } $j = (int) ($elapse_time / 2); } $jour++; $index_box = 0; } return $tab_data; }
function SwapContainers(&$tab_data, &$index_box, $jour) { $aux_tab = array(); $index_container1 = $index_box; $index_container2 = $index_box + 1; while ($tab_data[$jour]['type'][$index_container2] != "conteneur") { $index_container2++; } $index = $index_container1; $index_destination = 0; while ($tab_data[$jour]['type'][$index] != "fin_conteneur") { RemplirBox($tab_data[$jour]['elapse_time'][$index], $aux_tab[$jour], $index_destination, $tab_data[$jour]['type'][$index], $tab_data[$jour]['id_creneau'][$index], $tab_data[$jour]['id_groupe'][$index], $tab_data[$jour]['id_cours'][$index], $tab_data[$jour]['duree'][$index], $tab_data[$jour]['couleur'][$index], $tab_data[$jour]['contenu'][$index]); $index++; } RemplirBox($tab_data[$jour]['elapse_time'][$index], $aux_tab[$jour], $index_destination, $tab_data[$jour]['type'][$index], $tab_data[$jour]['id_creneau'][$index], $tab_data[$jour]['id_groupe'][$index], $tab_data[$jour]['id_cours'][$index], $tab_data[$jour]['duree'][$index], $tab_data[$jour]['couleur'][$index], $tab_data[$jour]['contenu'][$index]); // ========================================= $index = $index_container2; $index_destination = $index_container1; while ($tab_data[$jour]['type'][$index] != "fin_conteneur") { RemplirBox($tab_data[$jour]['elapse_time'][$index], $tab_data[$jour], $index_destination, $tab_data[$jour]['type'][$index], $tab_data[$jour]['id_creneau'][$index], $tab_data[$jour]['id_groupe'][$index], $tab_data[$jour]['id_cours'][$index], $tab_data[$jour]['duree'][$index], $tab_data[$jour]['couleur'][$index], $tab_data[$jour]['contenu'][$index]); $index++; } RemplirBox($tab_data[$jour]['elapse_time'][$index], $tab_data[$jour], $index_destination, $tab_data[$jour]['type'][$index], $tab_data[$jour]['id_creneau'][$index], $tab_data[$jour]['id_groupe'][$index], $tab_data[$jour]['id_cours'][$index], $tab_data[$jour]['duree'][$index], $tab_data[$jour]['couleur'][$index], $tab_data[$jour]['contenu'][$index]); // ========================================= $index = 0; while ($aux_tab[$jour]['type'][$index] != "fin_conteneur") { RemplirBox($aux_tab[$jour]['elapse_time'][$index], $tab_data[$jour], $index_destination, $aux_tab[$jour]['type'][$index], $aux_tab[$jour]['id_creneau'][$index], $aux_tab[$jour]['id_groupe'][$index], $aux_tab[$jour]['id_cours'][$index], $aux_tab[$jour]['duree'][$index], $aux_tab[$jour]['couleur'][$index], $aux_tab[$jour]['contenu'][$index]); $index++; } RemplirBox($aux_tab[$jour]['elapse_time'][$index], $aux_tab[$jour], $index_destination, $aux_tab[$jour]['type'][$index], $aux_tab[$jour]['id_creneau'][$index], $aux_tab[$jour]['id_groupe'][$index], $aux_tab[$jour]['id_cours'][$index], $aux_tab[$jour]['duree'][$index], $aux_tab[$jour]['couleur'][$index], $aux_tab[$jour]['contenu'][$index]); $index_box = $index_destination - 1; }
function ConstruireEDTProfDuJour($login_edt, $period, $jour) { global $current_edt_id_cours; // id_cours utilisé pour les semaines A/B dans GetColor() $table_data = array(); $type_edt = "prof"; $req_jours = mysqli_query($GLOBALS["mysqli"], "SELECT jour_horaire_etablissement FROM horaires_etablissement WHERE ouvert_horaire_etablissement = 1") or die(mysqli_error($GLOBALS["mysqli"])); $jour_sem_tab = array(); $entetes = ConstruireEnteteEDT(); while (!isset($entetes['entete'][$jour])) { $jour--; } $jour_sem_tab[$jour] = $entetes['entete'][$jour]; $tab_data['entete'][$jour] = $entetes['entete'][$jour]; $req_id_creneaux = mysqli_query($GLOBALS["mysqli"], "SELECT id_definie_periode FROM edt_creneaux\r\n\t\t\t\t\t\t\tWHERE type_creneaux != 'pause'") or die(mysqli_error($GLOBALS["mysqli"])); $nbre_lignes = mysqli_num_rows($req_id_creneaux); if ($nbre_lignes == 0) { $nbre_lignes = 1; } if ($nbre_lignes > 10) { $nbre_lignes = 10; } $tab_data['nb_creneaux'] = $nbre_lignes; $index_box = 0; while (isset($jour_sem_tab[$jour])) { if ($type_edt == "prof") { $tab_id_creneaux = retourne_id_creneaux(); $j = 0; $elapse_time = 0; while (isset($tab_id_creneaux[$j])) { $req_creneau = LessonsFromDayTeacherSlotPeriod($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux[$j], $period); $rep_creneau = mysqli_fetch_array($req_creneau); $nb_rows = mysqli_num_rows($req_creneau); // ========================================== créneau vide if ($nb_rows == 0) { $heuredeb_dec = 0; if ($elapse_time % 2 != 0) { $heuredeb_dec = 1; } $delay = 2 - $elapse_time % 2; RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule" . $delay, "cadre", ""); $elapse_time += $delay; } else { if ($nb_rows == 1) { $current_edt_id_cours = ""; if (isset($rep_creneau['id_cours'])) { $current_edt_id_cours = $rep_creneau['id_cours']; } if ($rep_creneau['id_semaine'] != '0') { $duree_max = $rep_creneau['duree']; $heuredeb_dec = $rep_creneau['heuredeb_dec']; // ========= études des cas n°2 , 6 et 7 if ($duree_max == 1) { // ||(($duree_max == 2) AND ($rep_creneau['heuredeb_dec'] == 0)) if ($heuredeb_dec == 0 and $elapse_time % 2 != 0) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } else { $cell_height = 2; if ($duree_max == 1 and $rep_creneau['heuredeb_dec'] != 0 and $elapse_time % 2 != 0) { $cell_height = 1; } RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $cell_height, "", ""); if ($duree_max == 1 and $rep_creneau['heuredeb_dec'] != 0 and $elapse_time % 2 == 0) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], $rep_creneau['id_semaine'], $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $duree_max, GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += $duree_max; if ($duree_max == 1 and $rep_creneau['heuredeb_dec'] == 0) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $cell_height, "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule" . $cell_height, "cadre", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); } } else { $duree_max1 = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, 2, $period); $duree_max2 = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 2, 1, $period); if ($duree_max1 >= $duree_max2) { $duree_max = $duree_max1; } else { $duree_max = $duree_max2; } mysqli_data_seek($req_creneau, 0); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $rep_creneau['id_semaine'], $tab_data, $index_box, $period); $elapse_time += $duree_max; } } else { // ======== étude du cas n°5 if ($rep_creneau['heuredeb_dec'] != 0 and $elapse_time % 2 == 0) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } // ======== étude du cas n°3 if ($rep_creneau['heuredeb_dec'] == 0 and $elapse_time % 2 == 1 and $rep_creneau['duree'] == 1) { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); $elapse_time++; } else { $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; } } } else { if ($nb_rows == 2) { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $duree1 = $rep_creneau['duree']; $heuredeb_dec1 = $rep_creneau['heuredeb_dec']; $id_semaine1 = $rep_creneau['id_semaine']; $rep_creneau = mysqli_fetch_array($req_creneau); $duree2 = $rep_creneau['duree']; $heuredeb_dec2 = $rep_creneau['heuredeb_dec']; $id_semaine2 = $rep_creneau['id_semaine']; mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $current_edt_id_cours = ""; if (isset($rep_creneau['id_cours'])) { $current_edt_id_cours = $rep_creneau['id_cours']; } // ========= étude du cas PapaTango 1 (Problème de Transition de edt version 1 vers edt version 2) if ($id_semaine1 == '0' || $id_semaine2 == '0') { if ($heuredeb_dec1 == 0 and $heuredeb_dec2 == 0) { $PapaTango = 1; } else { if ($heuredeb_dec1 == 0.5 and $heuredeb_dec2 == 0.5) { $PapaTango = 1; } else { $PapaTango = 0; } } } // ========= étude des cas n°11, 12 et 13 if ($id_semaine1 == '0' || $id_semaine2 == '0' and $PapaTango == 0) { if ($heuredeb_dec1 == 0) { if ($id_semaine1 != '0') { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); } mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); if ($id_semaine1 != '0') { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); } $elapse_time++; $rep_creneau = mysqli_fetch_array($req_creneau); // ====================== étude du cas 12' if ($id_semaine2 != '0') { $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 2, 3, $period); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; } } else { if ($id_semaine2 != '0') { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); } mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); if ($id_semaine2 != '0') { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); } $elapse_time++; mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); // ====================== étude du cas n°12' if ($id_semaine1 != '0') { $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, 3, $period); mysqli_data_seek($req_creneau, 0); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; } } } else { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $id_semaine1 = $rep_creneau['id_semaine']; $heuredeb_dec1 = $rep_creneau['heuredeb_dec']; $rep_creneau = mysqli_fetch_array($req_creneau); $id_semaine2 = $rep_creneau['id_semaine']; $heuredeb_dec2 = $rep_creneau['heuredeb_dec']; $current_edt_id_cours = ""; if (isset($rep_creneau['id_cours'])) { $current_edt_id_cours = $rep_creneau['id_cours']; } if ($id_semaine1 != $id_semaine2) { // ========= étude des cas n°8 et n°9 et n°14 et n°15 et n°16 et 10 $duree_max1 = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, 2, $period); $duree_max2 = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 2, 1, $period); if ($duree_max1 >= $duree_max2) { $duree_max = $duree_max1; } else { $duree_max = $duree_max2; } mysqli_data_seek($req_creneau, 0); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $rep_creneau['id_semaine'], $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { // ========= étude du cas rebelle 15'' if ($heuredeb_dec1 == 0) { if ($id_semaine1 != '0') { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); } mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); if ($id_semaine1 != '0') { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); } $elapse_time++; $j = (int) ($elapse_time / 2); $rep_creneau = mysqli_fetch_array($req_creneau); // ====================== if ($id_semaine2 != '0') { $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, 3, $period); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; } } else { if ($id_semaine2 != '0') { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); } mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); if ($id_semaine2 != '0') { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule1", "", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "vide", $tab_id_creneaux[$j], "", "", "cellule1", "cadre", ""); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); } $elapse_time++; $j = (int) ($elapse_time / 2); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); // ====================== if ($id_semaine1 != '0') { $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, 3, $period); mysqli_data_seek($req_creneau, 0); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; } } } } } else { if ($nb_rows == 3) { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $duree1 = $rep_creneau['duree']; $heuredeb_dec1 = $rep_creneau['heuredeb_dec']; $id_semaine1 = $rep_creneau['id_semaine']; $rep_creneau = mysqli_fetch_array($req_creneau); $duree2 = $rep_creneau['duree']; $heuredeb_dec2 = $rep_creneau['heuredeb_dec']; $id_semaine2 = $rep_creneau['id_semaine']; $rep_creneau = mysqli_fetch_array($req_creneau); $duree3 = $rep_creneau['duree']; $heuredeb_dec3 = $rep_creneau['heuredeb_dec']; $id_semaine3 = $rep_creneau['id_semaine']; $current_edt_id_cours = ""; if (isset($rep_creneau['id_cours'])) { $current_edt_id_cours = $rep_creneau['id_cours']; } if ($id_semaine1 == '0' || $id_semaine2 == '0' || $id_semaine3 == '0') { // ======= étude du cas 17 if ($heuredeb_dec1 == 0 and $id_semaine1 == '0') { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 2, 3, $period); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { if ($heuredeb_dec2 == 0 and $id_semaine2 == '0') { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, 3, $period); mysqli_data_seek($req_creneau, 0); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { if ($heuredeb_dec3 == 0 and $id_semaine3 == '0') { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, 2, $period); mysqli_data_seek($req_creneau, 0); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { if ($heuredeb_dec1 == 0 and $heuredeb_dec2 == 0) { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $rep_creneau['duree'], "", ""); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $rep_creneau = mysqli_fetch_array($req_creneau); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $rep_creneau['duree'], "", ""); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $elapse_time += (int) $rep_creneau['duree']; $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; } else { if ($heuredeb_dec1 == 0 and $heuredeb_dec3 == 0) { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $rep_creneau['duree'], "", ""); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $rep_creneau['duree'], "", ""); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $elapse_time += (int) $rep_creneau['duree']; mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; } else { if ($heuredeb_dec2 == 0 and $heuredeb_dec3 == 0) { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $rep_creneau['duree'], "", ""); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $rep_creneau = mysqli_fetch_array($req_creneau); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "conteneur", $tab_id_creneaux[$j], "", "", "demicellule" . $rep_creneau['duree'], "", ""); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule1", GetColor($rep_creneau['id_groupe']), $contenu); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "fin_conteneur", $tab_id_creneaux[$j], "", "", "", "", ""); $elapse_time += (int) $rep_creneau['duree']; mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $contenu = ContenuCreneau($tab_id_creneaux[$j], $jour_sem_tab[$jour], $type_edt, $rep_creneau['id_groupe'], $rep_creneau['id_aid'], "", $period); RemplirBox($elapse_time, $tab_data[$jour], $index_box, "cours", $tab_id_creneaux[$j], $rep_creneau['id_groupe'], $rep_creneau['id_cours'], "cellule" . $rep_creneau['duree'], GetColor($rep_creneau['id_groupe']), $contenu); $elapse_time += (int) $rep_creneau['duree']; } else { RemplirBox($elapse_time, $tab_data[$jour], $index_box, "erreur", $tab_id_creneaux[$j], "none", "none", "cellule2", "cadreRouge", "C02"); $elapse_time += 2; } } } } } } } else { if ($heuredeb_dec1 == 0 and $heuredeb_dec2 == 0) { $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, 2, $period); mysqli_data_seek($req_creneau, 0); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $id_semaine_to_use = $rep_creneau['id_semaine']; ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { if ($heuredeb_dec1 == 0 and $heuredeb_dec3 == 0) { $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, 3, $period); mysqli_data_seek($req_creneau, 0); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $id_semaine_to_use = $rep_creneau['id_semaine']; $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { if ($heuredeb_dec2 == 0 and $heuredeb_dec3 == 0) { $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 2, 3, $period); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); $id_semaine_to_use = $rep_creneau['id_semaine']; ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { if ($heuredeb_dec1 == 0) { if ($id_semaine1 == $id_semaine2) { $rang = 3; } else { $rang = 2; } $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 1, $rang, $period); mysqli_data_seek($req_creneau, 0); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; if ($rang == 3) { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); } else { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); } ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { if ($heuredeb_dec2 == 0) { if ($id_semaine2 == $id_semaine1) { $rang = 3; } else { $rang = 1; } $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 2, $rang, $period); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; if ($rang == 1) { mysqli_data_seek($req_creneau, 0); } else { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); } ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { if ($heuredeb_dec3 == 0) { if ($id_semaine3 == $id_semaine1) { $rang = 2; } else { $rang = 1; } $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, 3, $rang, $period); mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); $rep_creneau = mysqli_fetch_array($req_creneau); ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; if ($rang == 1) { mysqli_data_seek($req_creneau, 0); } else { mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); } ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } else { // ============== 3 enseignements sur le même créneau // ============== situation non envisagée RemplirBox($elapse_time, $tab_data[$jour], $index_box, "erreur", $tab_id_creneaux[$j], "none", "none", "cellule2", "cadreRouge", "C03"); $elapse_time += 2; } } } } } } } } else { if ($nb_rows == 4) { // ============= damned !! 4 cours sur le même créneau... $rang1 = 0; $rang2 = 0; mysqli_data_seek($req_creneau, 0); $rep_creneau = mysqli_fetch_array($req_creneau); if ($rep_creneau['heuredeb_dec'] == 0) { $rang1 = 1; } $rep_creneau = mysqli_fetch_array($req_creneau); if ($rep_creneau['heuredeb_dec'] == 0) { if ($rang1 == 0) { $rang1 = 2; } else { $rang2 = 2; } } $rep_creneau = mysqli_fetch_array($req_creneau); if ($rep_creneau['heuredeb_dec'] == 0) { if ($rang1 == 0) { $rang1 = 3; } else { $rang2 = 3; } } $rep_creneau = mysqli_fetch_array($req_creneau); if ($rep_creneau['heuredeb_dec'] == 0) { if ($rang1 == 0) { $rang1 = 4; } else { $rang2 = 4; } } if ($rang1 == 0 or $rang2 == 0) { // ============= trois enseignements de front sur les 4 // ============= situation non envisagée RemplirBox($elapse_time, $tab_data[$jour], $index_box, "erreur", $tab_id_creneaux[$j], "none", "none", "cellule2", "cadreRouge", "C04"); $elapse_time += 2; } else { $duree_max = DureeMax2Colonnes($jour_sem_tab[$jour], $login_edt, $tab_id_creneaux, $elapse_time, $req_creneau, $j, $rang1, $rang2, $period); $l = 1; mysqli_data_seek($req_creneau, 0); while ($l < $rang1) { $rep_creneau = mysqli_fetch_array($req_creneau); $l++; } ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, '0', $tab_data, $index_box, $period); $id_semaine_to_use = $rep_creneau['id_semaine']; $l = 1; mysqli_data_seek($req_creneau, 0); while ($l < $rang2) { $rep_creneau = mysqli_fetch_array($req_creneau); $l++; } ConstruireColonne($elapse_time, $req_creneau, $duree_max, $jour_sem_tab[$jour], $jour, $tab_id_creneaux, $j, $type_edt, $login_edt, $id_semaine_to_use, $tab_data, $index_box, $period); $elapse_time += $duree_max; } } else { // ============= gloups ! 5 enseignements ou plus sur le même créneau // il y a une erreur dans la table edt_cours ou c'est une situation non envisagée RemplirBox($elapse_time, $tab_data[$jour], $index_box, "erreur", $tab_id_creneaux[$j], "none", "none", "cellule2", "cadreRouge", "C05"); $elapse_time += 2; } } } } } $j = (int) ($elapse_time / 2); } } $jour++; $index_box = 0; } // *************************************** Remplissage des créneaux $reglages_creneaux = GetSettingEdt("edt_aff_creneaux"); //Cas où le nom des créneaux sont inscrits à gauche if ($reglages_creneaux == "noms") { $tab_creneaux = retourne_creneaux(); $i = 0; while ($i < count($tab_creneaux)) { $tab_id_creneaux = retourne_id_creneaux(); $c = 0; while ($c < count($tab_id_creneaux)) { //echo(" <div class=\"horaires\"><div class=\"cadre\"><strong>".$tab_creneaux[$i]."</strong></div></div>\n"); $tab_data['creneaux'][$jour] = $tab_creneaux[$jour]; $i++; $c++; } } } elseif ($reglages_creneaux == "heures") { $tab_horaire = retourne_horaire(); for ($i = 0; $i < count($tab_horaire);) { $tab_id_creneaux = retourne_id_creneaux(); $c = 0; while ($c < count($tab_id_creneaux)) { //echo(" <div class=\"horaires\"><div class=\"cadre\"><strong>".$tab_horaire[$i]["heure_debut"]."<br />".$tab_horaire[$i]["heure_fin"]."</strong></div></div>\n"); $tab_data['creneaux'][$i] = $tab_horaire[$i]["heure_debut"] . "<br />" . $tab_horaire[$i]["heure_fin"]; $i++; $c++; } } } return $tab_data; }
function SwapContainers(&$tab_data, &$index_box, $jour) { $tmp_tab = array_keys($tab_data[$jour]['type']); $indice_max = max($tmp_tab); $aux_tab = array(); $index_container1 = $index_box; $index_container2 = $index_box + 1; //while ($tab_data[$jour]['type'][$index_container2] != "conteneur") { while ($index_container2 <= $indice_max) { if (isset($tab_data[$jour]['type'][$index_container2])) { if ($tab_data[$jour]['type'][$index_container2] == "conteneur") { break; } } $index_container2++; } $index = $index_container1; $index_destination = 0; //while ($tab_data[$jour]['type'][$index] != "fin_conteneur") { while ($index <= $indice_max) { if (isset($tab_data[$jour]['type'][$index])) { if ($tab_data[$jour]['type'][$index] != "fin_conteneur") { RemplirBox($tab_data[$jour]['elapse_time'][$index], $aux_tab[$jour], $index_destination, $tab_data[$jour]['type'][$index], $tab_data[$jour]['id_creneau'][$index], $tab_data[$jour]['id_groupe'][$index], $tab_data[$jour]['id_cours'][$index], $tab_data[$jour]['duree'][$index], $tab_data[$jour]['couleur'][$index], $tab_data[$jour]['contenu'][$index]); } else { break; } } $index++; } RemplirBox($tab_data[$jour]['elapse_time'][$index], $aux_tab[$jour], $index_destination, $tab_data[$jour]['type'][$index], $tab_data[$jour]['id_creneau'][$index], $tab_data[$jour]['id_groupe'][$index], $tab_data[$jour]['id_cours'][$index], $tab_data[$jour]['duree'][$index], $tab_data[$jour]['couleur'][$index], $tab_data[$jour]['contenu'][$index]); // ========================================= // 20141208 /* echo "\$tab_data[$jour]['type']:<pre>"; print_r($tab_data[$jour]['type']); echo "</pre>"; */ /* echo "\$tab_data[$jour]:<pre>"; print_r($tab_data[$jour]); echo "</pre>"; */ $index = $index_container2; $index_destination = $index_container1; //while ($tab_data[$jour]['type'][$index] != "fin_conteneur") { //while ((isset($tab_data[$jour]['type'][$index]))&&($tab_data[$jour]['type'][$index] != "fin_conteneur")) { while ($index <= $indice_max) { if (isset($tab_data[$jour]['type'][$index])) { if ($tab_data[$jour]['type'][$index] != "fin_conteneur") { RemplirBox($tab_data[$jour]['elapse_time'][$index], $tab_data[$jour], $index_destination, $tab_data[$jour]['type'][$index], $tab_data[$jour]['id_creneau'][$index], $tab_data[$jour]['id_groupe'][$index], $tab_data[$jour]['id_cours'][$index], $tab_data[$jour]['duree'][$index], $tab_data[$jour]['couleur'][$index], $tab_data[$jour]['contenu'][$index]); } else { break; } } $index++; } if (isset($tab_data[$jour]['type'][$index])) { RemplirBox($tab_data[$jour]['elapse_time'][$index], $tab_data[$jour], $index_destination, $tab_data[$jour]['type'][$index], $tab_data[$jour]['id_creneau'][$index], $tab_data[$jour]['id_groupe'][$index], $tab_data[$jour]['id_cours'][$index], $tab_data[$jour]['duree'][$index], $tab_data[$jour]['couleur'][$index], $tab_data[$jour]['contenu'][$index]); } // ========================================= $index = 0; //while ($aux_tab[$jour]['type'][$index] != "fin_conteneur") { while ($index <= $indice_max) { if (isset($aux_tab[$jour]['type'][$index])) { if ($aux_tab[$jour]['type'][$index] != "fin_conteneur") { RemplirBox($aux_tab[$jour]['elapse_time'][$index], $tab_data[$jour], $index_destination, $aux_tab[$jour]['type'][$index], $aux_tab[$jour]['id_creneau'][$index], $aux_tab[$jour]['id_groupe'][$index], $aux_tab[$jour]['id_cours'][$index], $aux_tab[$jour]['duree'][$index], $aux_tab[$jour]['couleur'][$index], $aux_tab[$jour]['contenu'][$index]); } else { break; } } $index++; } RemplirBox($aux_tab[$jour]['elapse_time'][$index], $aux_tab[$jour], $index_destination, $aux_tab[$jour]['type'][$index], $aux_tab[$jour]['id_creneau'][$index], $aux_tab[$jour]['id_groupe'][$index], $aux_tab[$jour]['id_cours'][$index], $aux_tab[$jour]['duree'][$index], $aux_tab[$jour]['couleur'][$index], $aux_tab[$jour]['contenu'][$index]); $index_box = $index_destination - 1; }