security_check();
if ($resultat_session == 'c') {
header("Location: ../utilisateurs/mon_compte.php?change_mdp=yes");
die();
} else if ($resultat_session == '0') {
header("Location: ../logout.php?auto=1");
die();
}
if (!checkAccess()) {
header("Location: ../logout.php?auto=1");
die();
}
$periode_query = mysqli_query($GLOBALS["mysqli"], "select max(num_periode) max from periodes");
$max_periode = old_mysql_result($periode_query, 0, 'max');
// On dresse la liste de toutes les classes non virtuelles
$classes_list = mysqli_query($GLOBALS["mysqli"], "SELECT DISTINCT c.* FROM classes c, periodes p WHERE p.id_classe = c.id ORDER BY classe");
$nb_classe = mysqli_num_rows($classes_list);
// On va chercher les matières existantes
$matieres_list = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM matieres ORDER BY matiere");
$nb_matieres = mysqli_num_rows($matieres_list);
if (isset($_POST['is_posted'])) {
check_token();
$msg = '';
$reg_ok = '';
$nbc = 0;
while ($nbc < $nb_classe) {
$id_classe = old_mysql_result($classes_list,$nbc,'id');
$temp = "case_".$id_classe;
if (isset($_POST[$temp])) {
// boucle sur les matières
$i = 0;
while ($i < $nb_matieres) {
$current_matiere = @old_mysql_result($matieres_list, $i, "matiere");
if (isset($_POST[$current_matiere.'_priorite']) and ($_POST[$current_matiere.'_priorite']!='')) {
//=============================
// MODIF: boireaus
/*
$reg_data = mysql_query("UPDATE j_groupes_classes jgc, j_groupes_matieres jgm
SET jgc.priorite='".$_POST[$current_matiere.'_priorite']."'
where
(jgc.id_classe='".$id_classe."' and jgc.id_groupe = jgm.id_groupe and jgm.id_matiere='".$current_matiere."')
");
*/
$sql="UPDATE j_groupes_classes jgc, j_groupes_matieres jgm
SET jgc.priorite='".$_POST[$current_matiere.'_priorite']."'
where
(jgc.id_classe='".$id_classe."' and jgc.id_groupe = jgm.id_groupe and jgm.id_matiere='".$current_matiere."')
";
//echo "$sql
\n";
// BIZARRE: Il ajoute 10 ???
$reg_data = mysqli_query($GLOBALS["mysqli"], $sql);
//=============================
if (!$reg_data) $reg_ok = 'no'; else $reg_ok = 'yes' ;
}
// La catégorie de matière
if (isset($_POST[$current_matiere.'_categorie']) and ($_POST[$current_matiere.'_categorie']!='') and is_numeric($_POST[$current_matiere.'_categorie'])) {
$sql="UPDATE j_groupes_classes jgc, j_groupes_matieres jgm
SET jgc.categorie_id='".$_POST[$current_matiere.'_categorie']."'
where
(jgc.id_classe='".$id_classe."' and jgc.id_groupe = jgm.id_groupe and jgm.id_matiere='".$current_matiere."')
";
$reg_data = mysqli_query($GLOBALS["mysqli"], $sql);
if (!$reg_data) $reg_ok = 'no'; else $reg_ok = 'yes' ;
}
// Le coef
if (isset($_POST[$current_matiere.'_coef']) and ($_POST[$current_matiere.'_coef']!='')) {
$reg_data = mysqli_query($GLOBALS["mysqli"], "UPDATE j_groupes_classes jgc, j_groupes_matieres jgm, groupes g
SET jgc.coef='".$_POST[$current_matiere.'_coef']."' , g.recalcul_rang='y'
where
(jgc.id_classe='".$id_classe."' and jgc.id_groupe = jgm.id_groupe and g.id = jgm.id_groupe and jgm.id_matiere='".$current_matiere."')
");
if (!$reg_data) $reg_ok = 'no'; else $reg_ok = 'yes' ;
}
$i++;
}
}
$nbc++;
}
if ($reg_ok=='') {
$message_enregistrement = "Aucune modification n'a été effectuée !";
$affiche_message = 'yes';
} else if ($reg_ok=='yes') {
$message_enregistrement = "Les modifications ont été effectuées avec succès.";
$affiche_message = 'yes';
} else {
$message_enregistrement = "Il y a eu un problème lors de l'enregistrement des modification.";
$affiche_message = 'yes';
}
}
//**************** EN-TETE *****************
$titre_page = "Outil de gestion - Paramétrage des matières par lots";
require_once("../lib/header.inc.php");
//**************** FIN EN-TETE *****************
if ($max_periode <= 0) {
echo "Aucune classe comportant des périodes n'a été définie.";
die();
}
echo "