//echo "$sql<br />"; $reg = mysqli_query($GLOBALS["mysqli"], $sql); if (!$reg) { $reg_ok = "no"; } //========================================================== // MODIF: boireaus // // Mise à jour des moyennes du conteneur et des conteneurs parent, grand-parent, etc... // $arret = 'no'; if (!isset($_POST['new_conteneur'])) { mise_a_jour_moyennes_conteneurs($current_group, $periode_num, $id_racine, $id_conteneur, $arret); // La boite courante est mise à jour... // ... mais pas la boite destination. recherche_enfant($id_racine); } //========================================================== if ($reg_ok == 'yes') { if ($new == 'yes') { $msg .= "Nouvel enregistrement réussi."; } else { $msg .= "Les modifications ont été effectuées avec succès."; } } else { $msg .= "Il y a eu un problème lors de l'enregistrement"; } // Pour debug: //die(); // // retour
/** * * @global int * @global int * @global int * @param int $id_parent_tmp */ function recherche_enfant($id_parent_tmp){ global $current_group, $periode_num, $id_racine; $sql="SELECT * FROM cn_conteneurs WHERE parent='$id_parent_tmp'"; //echo "<!-- $sql -->\n"; $res_enfant=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_enfant)>0){ while($lig_conteneur_enfant=mysqli_fetch_object($res_enfant)){ recherche_enfant($lig_conteneur_enfant->id); } } else{ $arret = 'no'; $id_conteneur_enfant=$id_parent_tmp; // Mise_a_jour_moyennes_conteneurs pour un enfant non parent... mise_a_jour_moyennes_conteneurs($current_group, $periode_num,$id_racine,$id_conteneur_enfant,$arret); } }
mise_a_jour_moyennes_conteneurs($current_group, $periode_num, $id_racine, $id_conteneur, $arret); //========================================================== // Ajout d'un test: // Si on modifie un devoir alors que des notes ont été reportées sur le bulletin, il faut penser à mettre à jour la recopie vers le bulletin. $sql = "SELECT 1=1 FROM matieres_notes WHERE periode='" . $periode_num . "' AND id_groupe='" . $id_groupe . "';"; $test_bulletin = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test_bulletin) > 0) { $msg .= " ATTENTION: Des notes sont présentes sur le bulletin.<br />Si vous avez modifié ou ajouté des notes, pensez à mettre à jour la recopie vers le bulletin.<br />"; } //========================================================== $affiche_message = 'yes'; } if (isset($_GET['recalculer']) && isset($id_conteneur) && isset($periode_num) && isset($current_group)) { check_token(); if (isset($id_conteneur) && ($current_group["classe"]["ver_periode"]["all"][$periode_num] >= 2 || $acces_exceptionnel_saisie)) { recherche_enfant($id_conteneur); $msg .= "Recalcul des moyennes du carnet de notes effectué.<br />"; } } if (isset($_POST['import_sacoche'])) { $message_enregistrement = "Vos notes ne sont pas encore enregistrées, veuillez les vérifier et cliquer sur le bouton d'enregistrement"; } else { $message_enregistrement = "Les modifications ont été enregistrées !"; } require 'cc_lib.php'; $themessage = 'Des notes ont été modifiées. Voulez-vous vraiment quitter sans enregistrer ?'; $message_cnil_commentaires = "* En conformité avec la CNIL, le professeur s'engage à ne faire figurer dans le carnet de notes que des notes et commentaires portés à la connaissance de l'élève (<em>note et commentaire portés sur la copie, ...</em>).<br />"; $message_cnil_commentaires .= "<br />"; $message_cnil_commentaires .= "Veillez donc à respecter les préconisations suivantes :<br />"; $message_cnil_commentaires .= "<strong>Règle n° 1 :</strong> Avoir à l'esprit, quand on renseigne ces zones commentaires, que la personne qui est concernée peut exercer son droit d'accès et lire ces commentaires !<br />"; $message_cnil_commentaires .= "<strong>Règle n° 2 :</strong> Rédiger des commentaires purement objectifs et jamais excessifs ou insultants.<br />";
} } } //========================================================================= // Boucle sur les périodes for ($loop_periode_num = 0; $loop_periode_num < count($tab_periode_num); $loop_periode_num++) { if (isset($_POST['forcer_recalcul_moy_conteneurs']) && $_POST['forcer_recalcul_moy_conteneurs'] == 'y') { $sql = "SELECT DISTINCT ccn.id_cahier_notes,ccn.id_groupe FROM cn_cahier_notes ccn,groupes g,j_groupes_classes jgc,classes c WHERE\n\t\t\t\t\t\tccn.id_groupe=g.id AND\n\t\t\t\t\t\tjgc.id_groupe=g.id AND\n\t\t\t\t\t\tc.id=jgc.id_classe AND\n\t\t\t\t\t\tccn.periode='" . $tab_periode_num[$loop_periode_num] . "' AND\n\t\t\t\t\t\tc.id='" . $id_classe . "'\n\t\t\t\t\t\tORDER BY c.classe,g.description"; //echo "$sql"; $res_recalcul_moy_conteneurs = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_recalcul_moy_conteneurs) > 0) { while ($lig_recalcul_moy_conteneurs = mysqli_fetch_object($res_recalcul_moy_conteneurs)) { $current_group = get_group($lig_recalcul_moy_conteneurs->id_groupe); $periode_num = $tab_periode_num[$loop_periode_num]; $id_racine = $lig_recalcul_moy_conteneurs->id_cahier_notes; recherche_enfant($lig_recalcul_moy_conteneurs->id_cahier_notes); } unset($current_group); unset($periode_num); unset($id_racine); } } //$periode_num=1; $periode_num = $tab_periode_num[$loop_periode_num]; // Est-ce bien un entier? if (mb_strlen(preg_replace("/[0-9]/", "", $periode_num)) || $periode_num == "") { echo "<p>Identifiant de période erroné: <span style='color:red'>" . $periode_num . "</span></p>\n"; require "../lib/footer.inc.php"; die; } //==============================