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;
}
Example #2
0
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;
}
Example #3
0
if ($reglages_creneaux == "noms") {
	// affichage par nom de creneaux
	$tab_creneaux = retourne_creneaux();
}elseif($reglages_creneaux == "heures"){
	// Affichage par les horaires des cours
	$tab_creneaux = retourne_horaire();
}else{
	// par défaut
	$tab_creneaux = retourne_creneaux();
}
	$i=0;
	$nbre = count($tab_creneaux);
	while($i < $nbre){

		$tab_id_creneaux = retourne_id_creneaux();
		$c=0;
		$nbre2 = count($tab_id_creneaux);

		while($c < $nbre2){

		echo("<tr><th rowspan=\"2\"><br />".$tab_creneaux[$i]."<br /><br /></th>".(construction_tab_edt($tab_id_creneaux[$c], "0"))."\n");
		echo("<tr>".(construction_tab_edt($tab_id_creneaux[$c], "0.5"))."\n");
		$i ++;
		$c ++;
		}
	}

echo '
</tbody>
</table>';
Example #4
0
function ConstruireCreneauxEDT()
{
    $table_data = array();
    $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 > 12) {
        $nbre_lignes = 12;
    }
    $tab_data['nb_creneaux'] = $nbre_lignes;
    $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)) {
                $tab_data['creneaux'][$i] = $tab_creneaux[$i];
                $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)) {
                $tab_data['creneaux'][$i] = $tab_horaire[$i]["heure_debut"] . "<br />" . $tab_horaire[$i]["heure_fin"];
                $i++;
                $c++;
            }
        }
    }
    return $tab_data;
}
Example #5
0
function creneauPrecedent($creneau)
{
    $cherche_creneaux = array();
    $cherche_creneaux = retourne_id_creneaux();
    $ch_index = array_search($creneau, $cherche_creneaux);
    if (isset($cherche_creneaux[$ch_index - 1])) {
        $reponse = $cherche_creneaux[$ch_index - 1];
    } else {
        $reponse = "aucun";
    }
    return $reponse;
}