Beispiel #1
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;
}

/* *********************************************/


/* ******************************************** */
/*     construction du tableau des données      */
/* ******************************************** */
// chargement des information de la base de données

	// les données concernerons la journée du (date au format timestamp)
	$choix_date = explode("/",$date_choisie);
	$date_choisie_ts = mktime(0,0,0, $choix_date[1], $choix_date[0], $choix_date[2]);

	// On récupère le nom des créneaux
	$creneaux = retourne_creneaux();

	// on compte le nombre de créneaux
	$nb_creneaux = count($creneaux);

	// On détermine le jour au format texte en Français actuel
	$jour_choisi = retourneJour(date("w", $date_choisie_ts));

	// on recherche l'horaire d'ouverture et de fermetture de l'établissement
	$requete = mysqli_query($GLOBALS["mysqli"], "SELECT ouverture_horaire_etablissement, fermeture_horaire_etablissement
				FROM horaires_etablissement
				WHERE jour_horaire_etablissement = '" . $jour_choisi . "'");
	$nbre_rep = mysqli_num_rows($requete);
	if ($nbre_rep >= 1)
	{
Beispiel #3
0
function RemplirBox($elapse_time, &$tab_data_jour, &$index_box, $type, $id_creneaux, $id_groupe, $id_cours, $taille_box, $couleur, $contenu)
{
    // 20130528
    global $login_prof_contenu_creneaux_courant;
    $tab_data_jour['type'][$index_box] = $type;
    $tab_data_jour['duree'][$index_box] = $taille_box;
    $tab_data_jour['contenu'][$index_box] = $contenu;
    $tab_data_jour['couleur'][$index_box] = $couleur;
    $tab_data_jour['id_creneau'][$index_box] = $id_creneaux;
    $tab_data_jour['id_cours'][$index_box] = $id_cours;
    $tab_data_jour['id_groupe'][$index_box] = $id_groupe;
    $tab_data_jour['elapse_time'][$index_box] = $elapse_time;
    if ($elapse_time % 2 == 0) {
        $tab_data_jour['heuredeb_dec'][$index_box] = 0;
    } else {
        $tab_data_jour['heuredeb_dec'][$index_box] = 1;
    }
    if ($login_prof_contenu_creneaux_courant != "") {
        $tab_data_jour['login_prof'][$index_box] = $login_prof_contenu_creneaux_courant;
    }
    if ($id_creneaux != "") {
        $sql = "SELECT heuredebut_definie_periode FROM edt_creneaux WHERE id_definie_periode='{$id_creneaux}';";
        $res_tmp = mysqli_query($GLOBALS["mysqli"], $sql);
        if (mysqli_num_rows($res_tmp) > 0) {
            $tab_data_jour['heuredebut'][$index_box] = old_mysql_result($res_tmp, 0, 'heuredebut_definie_periode');
        }
    }
    // ====================== Récupérer la durée chiffrée du cours (en heures)
    preg_match_all('#[0-9]+#', $taille_box, $extract);
    if (isset($extract[0][0])) {
        $extract[0][0] = $extract[0][0] / 2;
        $tab_data_jour['duree_valeur'][$index_box] = $extract[0][0];
    } else {
        $tab_data_jour['duree_valeur'][$index_box] = 0;
    }
    // ===================== Récupérer le créneau de début de séance
    $tab_creneaux = retourne_creneaux();
    $index_creneau = $elapse_time;
    if ($index_creneau % 2 != 0) {
        $index_creneau--;
    }
    $index_creneau = $index_creneau / 2;
    if ($index_creneau >= count($tab_creneaux)) {
        $index_creneau = 0;
    }
    $tab_data_jour['affiche_creneau'][$index_box] = $tab_creneaux[$index_creneau];
    if ($elapse_time % 2 != 0) {
        $tab_data_jour['affiche_creneau'][$index_box] .= " milieu ";
    } else {
        $tab_data_jour['affiche_creneau'][$index_box] .= " début ";
    }
    // ===================== Définir une couleur spécifique pour le créneau du repas
    if ($type == "vide" and $couleur == "cadre") {
        $sql_request = "SELECT type_creneaux FROM edt_creneaux\r\n\t\t\t\t\t\t\t        WHERE id_definie_periode  = '" . $id_creneaux . "'";
        $req_type_creneaux = mysqli_query($GLOBALS["mysqli"], $sql_request) or die(mysqli_error($GLOBALS["mysqli"]));
        if ($req_type_creneaux) {
            if ($rep_type_creneau = mysqli_fetch_array($req_type_creneaux)) {
                if ($rep_type_creneau['type_creneaux'] == "repas") {
                    $tab_data_jour['couleur'][$index_box] = "cadreRepas";
                }
            }
        }
    }
    $index_box++;
}