<?
include("../BarreDeMenu.php3");
include("../Session/security.php");
include("../date.php3");
// if (isset($id_promotion[0])) echo $id_promotion[0];
// if (isset($id_groupe)) echo $id_groupe;
// Entete
buildHeader("Répartition des salles");
// Verification de la session
$autorisation_list[0]=0; // Administrateur
$autorisation_list[1]=3; // Gestionnaire
$user_type = validateSession($id_session);
if ($user_type == -1 || !security($id_session,$autorisation_list))
print("Accès refusé");
else
{
// Barre de menu
buildMenuBar($id_session,$user_type,"../Planification/reparti_salle.php",false);
// Ouverture de la connexion
$connection = openConnection($databaseName);
// Verifie si le nombre de promotions est egal a 1
if ($user_type==3 && !isset($id_promotion[0]))
{
$user_id = getUserID($id_session);
$connection = openConnection($databaseName);
$result = mysql_query("SELECT distinct(promotion.id_promotion),diplome.libelle as L1,promotion.libelle as L2
FROM promotion,diplome,gerer WHERE gerer.id_gestionnaire=$user_id
AND promotion.id_promotion=gerer.id_promotion
AND diplome.id_diplome=promotion.id_diplome
ORDER BY diplome.libelle");
$index_max = mysql_num_rows($result);
if ($index_max == 1) {
$a_record = mysql_fetch_array($result);
$id_promotion[0] = $a_record["id_promotion"];
$id_groupe = -1;
}
}
}
// Variables globales
$G_id_matiere;
$G_nom;
$G_nb_matieres;
$un_type_seance;
if (isset($id_promotion))
$n = count($id_promotion); // nombre de promotions selectionnees
else
$n = 0;
// Chargement de la liste des matieres suivies par la promotion ou le groupe
if (!isset($id_groupe)) $id_groupe=-1;
// Si une promotion ou un groupe est selectionne
if ($n > 0)
{
// Si un groupe est selectionne
if ($id_groupe != -1 && isset($id_groupe))
{
//requete pour les matieres
$request1 = "SELECT matiere.id_matiere,matiere.nom
FROM matiere,suivipargroupe,assurer
WHERE suivipargroupe.id_groupe = $id_groupe
AND suivipargroupe.id_matiere = matiere.id_matiere
AND assurer.id_matiere = matiere.id_matiere";
$result1 = mysql_query($request1);
//requetes pour les types de seances
$request2 = "SELECT (typeseance.id_type_seance),typeseance.type
FROM typeseance,suivipargroupe,assurer
WHERE suivipargroupe.id_groupe = $id_groupe
AND typeseance.id_type_seance = assurer.id_type_seance
AND assurer.id_matiere = suivipargroupe.id_matiere";
$result2 = mysql_query($request2);
//requetes pour les noms des professeurs
$request3 = "SELECT professeur.id_professeur,professeur.nom
FROM professeur,suivipargroupe,assurer
WHERE suivipargroupe.id_groupe = $id_groupe
AND assurer.id_matiere = suivipargroupe.id_matiere
AND assurer.id_professeur=professeur.id_professeur";
$result3 = mysql_query($request3);
}
// Si une promotion est selectionnee
else
{
//requete pour les matieres
$request1 = "SELECT matiere.id_matiere,matiere.nom
FROM matiere,suiviparpromotion,assurer
WHERE suiviparpromotion.id_promotion = $id_promotion[0]
AND suiviparpromotion.id_matiere = matiere.id_matiere
AND assurer.id_matiere = matiere.id_matiere";
$result1 = mysql_query($request1);
//requetes pour les types de seances
$request2 = "SELECT typeseance.id_type_seance,typeseance.type
FROM typeseance,suiviparpromotion,assurer
WHERE suiviparpromotion.id_promotion = $id_promotion[0]
AND typeseance.id_type_seance = assurer.id_type_seance
AND assurer.id_matiere = suiviparpromotion.id_matiere";
$result2 = mysql_query($request2);
//requetes pour les noms des professeurs
$request3 = "SELECT professeur.id_professeur,professeur.nom
FROM professeur,suiviparpromotion,assurer
WHERE suiviparpromotion.id_promotion = $id_promotion[0]
AND assurer.id_matiere = suiviparpromotion.id_matiere
AND assurer.id_professeur=professeur.id_professeur";
$result3 = mysql_query($request3);
}
// Chargement des matieres dans les variables globales
$G_nb_matieres = mysql_num_rows($result1);
for ($i = 0;$i < $G_nb_matieres;$i++)
{
$une_matiere = mysql_fetch_array($result1);
$un_type_seance=mysql_fetch_array($result2);
$un_professeur=mysql_fetch_array($result3);
$G_id_matiere[$i] = $une_matiere["id_matiere"];
$G_nom[$i] = $une_matiere["nom"];
$G_type_seance[$i]=$un_type_seance["type"];
$G_id_type_seance[$i]=$un_type_seance["id_type_seance"];
$G_professeur[$i]=$un_professeur["nom"];
$G_id_professeur[$i]=$un_professeur["id_professeur"];
}
}
if (isset($choice) && $choice==-3)
{
$request_delete1 ="delete from requiert_type_salle where id_matiere='$s_id_matiere' and id_professeur='$s_id_professeur' and id_type_seance='$s_id_type_seance'";
$selection_typesalle2=mysql_query($request_delete1);
$t="typesalle_".$s_id_matiere."_".$s_id_type_seance."_".$s_id_professeur;
$u=$$t;
for ($i=0;$i<count($$t) ; $i++){
print ("s_id_professeur =");print ($s_id_professeur);print ("<br>");
print ("s_id_type_seance =");print ($s_id_type_seance);print ("<br>");
$request_insert1 ="insert into requiert_type_salle values('$s_id_matiere','$u[$i]','$s_id_professeur','$s_id_type_seance')";
$selection_typesalle=mysql_query($request_insert1);
}
}
if (isset($choice) && $choice==2)
{
$request_delete2 ="delete from requiert_type_salle where id_matiere='$s_id_matiere' and id_professeur='$s_id_professeur' and id_type_seance='$s_id_type_seance'";
$deselection_type_salle=mysql_query($request_delete2);
}
print("<form name=\"form1\" action=\"reparti_salle.php\" method=post>\n");
print(" <input type=\"hidden\" name=\"id_session\" value=\"$id_session\">\n");
print(" <input type=\"hidden\" name=\"choice\" value=\"-3\">\n");
print(" <input type=\"hidden\" name=\"s_id_matiere\" value=\"-1\">\n");
print(" <input type=\"hidden\" name=\"s_id_type_salle\" value=\"-1\">\n");
print(" <input type=\"hidden\" name=\"s_id_professeur\" value=\"-1\">\n");
print(" <input type=\"hidden\" name=\"s_id_type_seance\" value=\"-1\">\n");
print(" <table align=center border=0 cellspacing=0 cellpading=0 width=700 bgcolor=\"#C0C000\">\n");
print(" <tr>\n");
// Liste des promotions
print(" <td valign=top width=100 nowrap rowspan=2><font size=3><i>Promotion :</i></font></td>\n");
print(" <td width=250 rowspan=2>\n");
include("../Liste/liste_promotion.php");
print(" </td>\n");
// Liste des groupes associes a la promotion selectionnee
print(" <td valign=top width=100 nowrap><font size=3><i>Groupe :</i></font></td>\n");
print(" <td valign=top width=250>\n");
include("../Liste/liste_groupe.php");
print(" </td>\n");
print(" </tr>\n");
print(" </table><br>\n");
//Requetes dont on a besoin ds le tableau
$request4 = "SELECT * from typesalle";
$result4 = mysql_query($request4);
$G_nb_typesalle = mysql_num_rows($result4);
for ($i = 0;$i < $G_nb_typesalle;$i++)
{
$un_typesalle = mysql_fetch_array($result4);
$G_typesalle[$i] = $un_typesalle["libelle"];
$id_typesalle[$i]=$un_typesalle["id_type_salle"];
}
// ************************ LE TABLEAU *****************************************
$G_typesalle_selectionnee;
print(" <table align=center border=1 cellspacing=0 cellpading=0 width=700 bgcolor=\"#C0C000\">\n");
print ("<tr>");
print(" <th> Matière </th>");
print(" <th> Type Séance </th>");
print(" <th> Enseignant </th>");
print(" <th> Type Salle </th>");
print(" <th> Salle </th>");
print ("</tr>");
for ($i = 0;$i < $G_nb_matieres;$i++)
{
print("<tr>");
print ("<td align=center>");
print($G_nom[$i]);
print ("</td>");
print ("<td align=center>");
print($G_type_seance[$i]);
print ("</td>");
print ("<td align=center>");
print($G_professeur[$i]);
print ("</td>");
print ("<td align=center>");
print ("<select multiple name=\"typesalle_".$G_id_matiere[$i]."_".$G_id_type_seance[$i]."_".$G_id_professeur[$i]."[]\"
OnChange=\"s_id_professeur.value='$G_id_professeur[$i]';s_id_matiere.value='$G_id_matiere[$i]';
s_id_type_seance.value='$G_id_type_seance[$i]'; choice.value=-3; submit();\">");
$request6 = "SELECT id_type_salle
FROM requiert_type_salle
WHERE requiert_type_salle.id_matiere = $G_id_matiere[$i]
AND requiert_type_salle.id_professeur = $G_id_professeur[$i]
AND requiert_type_salle.id_type_seance = $G_id_type_seance[$i]";
$result6 = mysql_query($request6);
$G_nb_typesalle_selectionnees = mysql_num_rows($result6);
for ($l = 0;$l < $G_nb_typesalle_selectionnees;$l++){
$un_typesalle_selectionnee = mysql_fetch_row($result6);
$G_typesalle_selectionnee[$l] = $un_typesalle_selectionnee[0];
}
for ($j=0 ; $j <$G_nb_typesalle ; $j++) {
$found=false;
for($l=0;$l<$G_nb_typesalle_selectionnees && !$found;$l++)
if ($G_typesalle_selectionnee[$l]==$id_typesalle[$j]) $found=true;
if ($found) print("<option selected value=\"$id_typesalle[$j]\"> $G_typesalle[$j]");
else print("<option value=\"$id_typesalle[$j]\"> $G_typesalle[$j]");
}
print("</select>");
print ("<br>");
print ("<font size=1>");
print("<input type=reset value='Tout effacer' onClick=\"javascript:s_id_professeur.value='$G_id_professeur[$i]';s_id_matiere.value='$G_id_matiere[$i]';
s_id_type_seance.value='$G_id_type_seance[$i]';choice.value=2;submit();\">");
print ("</font>");
print ("</td>");
print ("<td align=center>");
print ("<a href=liste_salles.php?id_groupe=$id_groupe&id_promotion=$id_promotion[0]&G_id_professeur=$G_id_professeur[$i]&G_id_matiere=$G_id_matiere[$i]&id_session=$id_session&G_id_type_seance=$G_id_type_seance[$i]>
Voir </a>");
print ("</td>");
print ("</tr>");
}
print ("</form>");
print(" </table><br>\n");
buildEndOfPage();
?>