} echo "<table class='boireaus boireaus_alt'>\n\t<tr>\n\t\t<th></th>"; for ($loop = 0; $loop < count($jour_sem_tab); $loop++) { echo "\n\t\t<th width='" . floor(90 / count($jour_sem_tab)) . "%'>" . $jour_sem_tab[$loop] . "</th>"; } echo "\n\t</tr>"; foreach ($tab_creneau as $id_definie_periode => $creneau) { $style_ligne = ""; if ($creneau['type_creneaux'] != 'cours') { $style_ligne = " style='background-color:grey'"; } echo "\n\t<tr" . $style_ligne . ">\n\t\t<th title='" . $creneau['heuredebut_definie_periode'] . "-" . $creneau['heurefin_definie_periode'] . "'>" . $creneau['nom_definie_periode'] . "</th>"; for ($loop = 0; $loop < count($jour_sem_tab); $loop++) { echo "\n\t\t<td>"; // Voir s'il y a des cours sur ce créneau $req_creneau = LessonsFromDayTeacherSlotPeriod($jour_sem_tab[$loop], $login_prof, $id_definie_periode, $period_id); //$rep_creneau = mysql_fetch_array($req_creneau); //print_r($rep_creneau); $nb_rows = mysqli_num_rows($req_creneau); /* echo "SELECT id_cours, id_aid, duree, id_groupe, heuredeb_dec, id_semaine FROM edt_cours WHERE jour_semaine = '".$jour_sem_tab[$loop]."' AND login_prof = '".$login_prof."' AND id_definie_periode = '".$id_definie_periode."' AND (id_calendrier = '".$period_id."' OR id_calendrier = '0');"; */ if ($nb_rows > 0) { while ($rep_creneau = mysqli_fetch_array($req_creneau)) { /* echo "\$nb_rows=$nb_rows<br />"; echo "<pre>";
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; }