/** Renvoie dans un tableau, les données de la base pour un conteneur à partir de son Id * * id_conteneur = cn_conteneurs.id, * id_racine = cn_conteneurs.id_racine, * nom_court = cn_conteneurs.nom_court, * nom_complet = cn_conteneurs.nom_complet, * description = cn_conteneurs.description, * mode_calcul = cn_conteneurs.mode, * coefficient = cn_conteneurs.coef, * arrondir = cn_conteneurs.arrondir, * ponderation = cn_conteneurs.ponderation, * noteSurReleve = cn_conteneurs.display_parents, * noteSurBulletin = cn_conteneurs.display_bulletin, * emplacement'] = cn_conteneurs.parent * * @param int $id_conteneur L'id du conteneur * @return tableau mixed Les données du conteneur enregistrées dans la base * */ function recharge_conteneur($id_conteneur) { $conteneur = array(); // On récupère les données du conteneur $sql = "SELECT * FROM `cn_conteneurs`\n WHERE `id` ='" . $id_conteneur . "' "; $result = mysql_query($sql); if ($result) { $donnee_recu = mysql_fetch_array($result); $conteneur['id_conteneur'] = $donnee_recu['id']; $conteneur['id_racine'] = $donnee_recu['id_racine']; $conteneur['nomCourt'] = $donnee_recu['nom_court']; $conteneur['nomComplet'] = $donnee_recu['nom_complet']; $conteneur['description'] = $donnee_recu['description']; $conteneur['mode_calcul'] = $donnee_recu['mode']; $conteneur['coefficient'] = $donnee_recu['coef']; $conteneur['arrondir'] = $donnee_recu['arrondir']; $conteneur['ponderation'] = $donnee_recu['ponderation']; $conteneur['noteSurReleve'] = $donnee_recu['display_parents']; $conteneur['noteSurBulletin'] = $donnee_recu['display_bulletin']; $conteneur['emplacement'] = $donnee_recu['parent']; } else { mysql_free_result($result); charge_message("Échec lors de la récupération dans la base"); return FALSE; } mysql_free_result($result); return $conteneur; }
$_SESSION[PREFIXE]['contexte_action'] = VOIR; // Affichage de la page des évaluations header("Location: index.php"); die; } $continue = peut_supprimer_evaluation($evaluation); if (!$continue) { charge_message("Vous n'avez pas les droits pour supprimer l'évaluation"); $_SESSION[PREFIXE]['contexte_action'] = VOIR; header("Location: index.php"); die; } $continue = evaluation_vide($evaluation); if (!$continue) { charge_message("ERREUR : L'évaluation n'est pas vide"); charge_message("Vous devez supprimer les notes avant de supprimer l'évaluation"); $_SESSION[PREFIXE]['contexte_action'] = VOIR; header("Location: index.php"); die; } $confirmation_suppr = isset($_POST['confirmation_suppr']) ? $_POST['confirmation_suppr'] : (isset($_GET['confirmation_suppr']) ? $_GET['confirmation_suppr'] : NULL); if ($confirmation_suppr == SUPPRIMER) { // supprimer le conteneur if (!supprime_evaluation($evaluation)) { // TODO : renvoyer un message $_SESSION[PREFIXE]["tbs_msg"] = "Echec lors de la suppression de l'évaluation"; $_SESSION[PREFIXE]['contexte_action'] = VOIR; header("Location: index.php"); die; // à supprimer quand le message sera construit }
/** Enregistre les données collées dans la base * * Enregistre les données en vérifiant si c'est une mise à jour * * met à jour les moyennes de conteneurs * * @return bool TRUE si les données ont été enregistrées, FALSE sinon * @see charge_message() * @see mise_a_jour_moyennes_conteneurs() */ function enregistre_colle() { // echo $_SESSION[PREFIXE]['eval_colle'].'<br />'; foreach ($_SESSION[PREFIXE]['tableau_colle'] as $eleve) { if (isset($eleve['commentaire'])) { $comment = $eleve['commentaire']; } else { $comment = ''; } if (isset($eleve['note'])) { $note = $eleve['note']; } else { $note = ''; } if (isset($eleve['statut'])) { $statut = $eleve['statut']; } else { $statut = ''; } // On cherche s'il y a déjà un enregistrement $sql = "SELECT 1=1 FROM cn_notes_devoirs \n WHERE login = '******'login'] . "' \n AND id_devoir = '" . $_SESSION[PREFIXE]['eval_colle'] . "'"; $query = mysql_query($sql); if (0 == mysql_num_rows($query)) { // On a pas d'enregistrement, on le crée $sql_table = "INSERT INTO cn_notes_devoirs (login, id_devoir, note, comment, statut)\n\t\t VALUES ('" . $eleve['login'] . "', '" . $_SESSION[PREFIXE]['eval_colle'] . "', '" . $note . "', '" . $comment . "', '" . $statut . "')"; } else { // On a un enregistrement on le met à jour $envoi = ""; if ($note != '' || $statut != '') { $envoi = "note = '" . $eleve['note'] . "', statut= '" . $eleve['statut'] . "'"; } if ($comment != '') { if ($envoi != '') { $envoi .= ', '; } $envoi .= "comment= '" . $eleve['commentaire'] . "'"; } $sql_table = "UPDATE cn_notes_devoirs\n\t\t SET " . $envoi . "\n\t\t WHERE login = '******'login'] . "'\n AND id_devoir = '" . $_SESSION[PREFIXE]['eval_colle'] . "'"; } if (!mysql_query($sql_table)) { charge_message("ERREUR : Echec de l'enregistrement dans la base ! (" . $eleve['nom'] . " " . $eleve['prenom'] . ")"); charge_message("<bold>Collez à nouveau vos données et vérifier les puis enregistrez à nouveau</bold>"); mysql_free_result($sql_table); return FALSE; } // on met à jour les moyennes de conteneurs $_current_group["eleves"][$_SESSION[PREFIXE]['periode_num']]["list"][] = $eleve['login']; $arret = 'no'; $sql_conteneur = "SELECT id_conteneur FROM cn_devoirs WHERE id = '" . $_SESSION[PREFIXE]['eval_colle'] . "'"; $query_conteneur = mysql_query($sql_conteneur); if (!$query_conteneur) { charge_message("ERREUR : Echec de la mise à jour des conteneurs"); mysql_free_result($query_conteneur); return FALSE; } $conteneur = mysql_fetch_object($query_conteneur); mysql_free_result($query_conteneur); mise_a_jour_moyennes_conteneurs($_current_group, $_SESSION[PREFIXE]['periode_num'], $_SESSION[PREFIXE]['id_racine'], $conteneur->id_conteneur, $arret); } return TRUE; }
/** * Enregistre les notes dans la base * * @param array $donnees Les données à enregistrer * @return bool TRUE si les données ont été enregistrées * @see charge_message() * @see prepare_sql() */ function enregistre_notes($donnees) { $tableau_notes = $_SESSION[PREFIXE]['tableau_notes']; // on recherche les notes maxi pour toutes les évaluations $elv_deja_note = array(); foreach ($_SESSION[PREFIXE]["id_devoir"] as $id_devoir) { $sql_devoir = "SELECT note_sur, id_conteneur FROM cn_devoirs \n\t WHERE id = '" . $id_devoir . "'"; $query_devoir = mysql_query($sql_devoir); $eval = mysql_fetch_object($query_devoir); $notes_max[$id_devoir]['note_sur'] = $eval->note_sur; $notes_max[$id_devoir]['id_conteneur'] = $eval->id_conteneur; mysql_free_result($query_devoir); } unset($id_devoir); // On récupère les données passées en $_POST dans $tableau_notes while (list($key, $val) = each($donnees)) { if (mb_ereg("_note_", $key)) { $index = mb_strstr($key, "_note_", TRUE); $id_eval = mb_strcut(mb_strstr($key, "_note_", FALSE), 6); // $comment = ""; if (is_numeric($val)) { if ($val > $notes_max[$id_eval]['note_sur']) { charge_message("ERREUR : Un élève à une note en dehors du référentiel ! (" . $login . ")"); return FALSE; } $note = $val; $statut = ""; } elseif (empty($val)) { $note = ""; $statut = VIDE; } else { switch ($val) { case "a": case "A": case "abs": case "ABS": case ABSENT: $note = ""; $statut = ABSENT; break; case "d": case "D": case "disp": case "Disp": case DISPENSE: $note = ""; $statut = DISPENSE; break; case "-": case "n": case "N": case "nn": case "NN": case "nN": case "Nn": case NON_NOTE: $note = ""; $statut = NON_NOTE; break; case "": default: $note = ""; $statut = VIDE; } } // On met à jour $tableau_notes $tableau_notes[$index]['notes'][$id_eval]['note_devoir'] = $note; $tableau_notes[$index]['notes'][$id_eval]['statut'] = $statut; } elseif (mb_ereg("_app_", $key) && $val != '') { $index = mb_strstr($key, "_app_", TRUE); $id_eval = mb_strcut(mb_strstr($key, "_app_", FALSE), 5); $val = prepare_sql($val); $tableau_notes[$index]['notes'][$id_eval]['comment_devoir'] = $val; } } // on enregistre $tableau_notes dans la base foreach ($tableau_notes as $ligne_tableau) { foreach ($_SESSION[PREFIXE]["id_devoir"] as $id_eval) { if ($ligne_tableau['notes'][$id_eval]['new_note']) { // on crée une entrée $sql_table = "INSERT INTO cn_notes_devoirs (login, id_devoir, note, comment, statut)\n VALUES ('" . $ligne_tableau['login'] . "',\n '" . $ligne_tableau['notes'][$id_eval]['id_devoir'] . "',\n '" . $ligne_tableau['notes'][$id_eval]['note_devoir'] . "',\n '" . $ligne_tableau['notes'][$id_eval]['comment_devoir'] . "',\n '" . $ligne_tableau['notes'][$id_eval]['statut'] . "')"; } else { // on met à jour $sql_table = "UPDATE cn_notes_devoirs\n SET note = '" . $ligne_tableau['notes'][$id_eval]['note_devoir'] . "',\n statut= '" . $ligne_tableau['notes'][$id_eval]['statut'] . "',\n comment = '" . $ligne_tableau['notes'][$id_eval]['comment_devoir'] . "'\n WHERE login = '******'login'] . "'\n AND id_devoir = '" . $ligne_tableau['notes'][$id_eval]['id_devoir'] . "'"; } $query_table = mysql_query($sql_table); if (!$query_table) { charge_message("ERREUR : Erreur lors de l'enregistrement dans la base ! (" . $index . ")"); charge_message("<strong>Vérifiez vos données puis enregistrez à nouveau</strong>"); return FALSE; } // on met à jour les moyennes de conteneurs $_current_group["eleves"][$_SESSION[PREFIXE]['periode_num']]["list"][] = $ligne_tableau['login']; $arret = 'no'; $sql_conteneur = "SELECT id_conteneur FROM cn_devoirs WHERE id = '" . $ligne_tableau['notes'][$id_eval]['id_devoir'] . "'"; $query_conteneur = mysql_query($sql_conteneur); if (!$query_conteneur) { charge_message("ERREUR : Echec de la mise à jour des conteneurs"); mysql_free_result($query_conteneur); return FALSE; } $conteneur = mysql_fetch_object($query_conteneur); mysql_free_result($query_conteneur); mise_a_jour_moyennes_conteneurs($_current_group, $_SESSION[PREFIXE]['periode_num'], $_SESSION[PREFIXE]['id_racine'], $conteneur->id_conteneur, $arret); } unset($id_eval); } unset($ligne_tableau); // 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 \n WHERE periode='" . $_SESSION[PREFIXE]['periode_num'] . "'\n AND id_groupe='" . $_SESSION[PREFIXE]['id_groupe_session'] . "';"; $test_bulletin = mysql_query($sql); if (mysql_num_rows($test_bulletin) > 0) { charge_message("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."); } mysql_free_result($test_bulletin); return TRUE; }
if (isset($_POST['mode']) && $_POST['mode'] == ENREGISTRER) { check_token(); // on vide les données en mémoire unset($_SESSION[PREFIXE]['add_change_eval']); if (enregisteEval()) { // TODO : gérer le retour $_SESSION[PREFIXE]['contexte_module'] = MODULE_DEFAUT; $_SESSION[PREFIXE]['contexte_action'] = VOIR; $_SESSION[PREFIXE]['action'] = VOIR; unset($_SESSION[PREFIXE]['add_change_eval']); $_SESSION[PREFIXE]['post_reussi'] = TRUE; charge_message("Enregistrement de l'évaluation réussie"); header("Location: index.php"); die; } else { charge_message("Echec de l'enregistrement de l'évaluation"); } } // On n'a pas enregistré if (isset($_SESSION[PREFIXE]['add_change_eval'])) { // si on a des données en $session on les récupère $affiche_eval = $_SESSION[PREFIXE]['add_change_eval']; } else { // Sinon, on vérifie si on veut modifier une évaluation $id_devoir = isset($_POST['id_devoir']) ? $_POST['id_devoir'] : (isset($_GET['id_devoir']) ? $_GET['id_devoir'] : NULL); if (!empty($id_devoir)) { // si on passe un id, on récupère l'évaluation $affiche_eval = recharge_id($id_devoir); } else { // Sinon on initialise avec des données par défaut $affiche_eval = recharge_defaut();
/** * Fonction enregisteEval() * * Enregistre les données de l'évaluation dans la base * * @return bolean int TRUE si l'enregistrement s'est bien passé, FALSE + un message sinon */ function enregisteEval() { // On vide les messages unset($_SESSION[PREFIXE]['tbs_msg']); // On teste si les champs obligatoires sont bien remplis if (!empty($_POST['nom']) && !empty($_POST['nomComplet']) && !empty($_POST['emplacement']) && !empty($_POST['coefEval']) && !empty($_POST['display_date']) && !empty($_POST['date_ele_resp'])) { // On récupère en session les données $donnees_passees = array(); $donnees_passees['nomComplet'] = traitement_magic_quotes($_POST['nomComplet']); $donnees_passees['nom'] = traitement_magic_quotes($_POST['nom']); $donnees_passees['emplacement'] = $_POST['emplacement']; $donnees_passees['coefEval'] = $_POST['coefEval']; $donnees_passees['display_date'] = $_POST['display_date']; $donnees_passees['date_ele_resp'] = $_POST['date_ele_resp']; // ramener_sur_referentiel - noteSur20 (V ou F) if (isset($_POST['noteSur20']) && $_POST['noteSur20']) { $donnees_passees['noteSur20'] = "V"; } else { $donnees_passees['noteSur20'] = "F"; } // display_parents - noteSurReleve = 1 if (isset($_POST['noteSurReleve'])) { $donnees_passees['noteSurReleve'] = $_POST['noteSurReleve']; } else { $donnees_passees['noteSurReleve'] = 0; } // display_parents_app - appSurReleve if (isset($_POST['appSurReleve'])) { $donnees_passees['appSurReleve'] = $_POST['appSurReleve']; } else { $donnees_passees['appSurReleve'] = 0; } // facultatif moyenne // - O entre dans le calcul // - B supérieures à 10 entrent dans le calcul // - N entre dans le calcul de la moyenne que si elle améliore la moyenne if (isset($_POST['moyenne'])) { $donnees_passees['moyenne'] = $_POST['moyenne']; } else { charge_message("Vous n'avez pas défini la manière de prendre en compte la note dans la moyenne !"); } // date - display_date if (isset($_POST['display_date'])) { $donnees_passees['display_date'] = prepare_date($_POST['display_date']); } else { charge_message("Vous n'avez pas défini la date d'affichage de l'évaluation !"); } // coef - coefEval if (isset($_POST['coefEval'])) { $donnees_passees['coefEval'] = $_POST['coefEval']; } else { charge_message("Vous n'avez pas défini le coefficient de l'évaluation !"); } // note_sur - noteSur if (isset($_POST['noteSur'])) { $donnees_passees['noteSur'] = $_POST['noteSur']; } else { charge_message("Vous n'avez pas défini la note maximale de l'évaluation !"); } // date_ele_resp - date_ele_resp if (isset($_POST['date_ele_resp'])) { $donnees_passees['date_ele_resp'] = prepare_date($_POST['date_ele_resp']); } else { charge_message("Vous n'avez pas défini la date à laquelle les parents peuvent voir l'évaluation !"); } // description - evalDescription if (isset($_POST['evalDescription'])) { $donnees_passees['evalDescription'] = $_POST['evalDescription']; } else { $donnees_passees['evalDescription'] = ""; } // S'il y a des messages, c'est qu'on a des erreurs if (!empty($_SESSION[PREFIXE]['tbs_msg'])) { return FALSE; } $_SESSION[PREFIXE]['add_change_eval'] = $donnees_passees; if (isset($_POST['id_eval'])) { $donnees_passees['id_eval'] = $_POST['id_eval']; // on a un id, on est en train de modifier une évaluation $sql = "UPDATE cn_devoirs \n\t SET id_conteneur = '" . $donnees_passees['emplacement'] . "',\n\t id_racine = '" . $_SESSION[PREFIXE]['id_racine'] . "',\n\t\t nom_court = '" . $donnees_passees['nom'] . "',\n\t\t nom_complet = '" . $donnees_passees['nomComplet'] . "',\n\t\t description = '" . $donnees_passees['evalDescription'] . "',\n\t\t facultatif = '" . $donnees_passees['moyenne'] . "',\n\t\t date = '" . $donnees_passees['display_date'] . "',\n\t\t coef = '" . $donnees_passees['coefEval'] . "',\n\t\t note_sur = '" . $donnees_passees['noteSur'] . "',\n\t\t ramener_sur_referentiel = '" . $donnees_passees['noteSur20'] . "',\n\t\t display_parents = '" . $donnees_passees['noteSurReleve'] . "',\n\t\t display_parents_app = '" . $donnees_passees['appSurReleve'] . "',\n\t\t date_ele_resp = '" . $donnees_passees['date_ele_resp'] . "'\n\t WHERE id = '" . $donnees_passees['id_eval'] . "'"; } else { // on n'a pas d'id, on est en train de créer une évaluation $sql = "INSERT INTO cn_devoirs (`id_conteneur`,`id_racine`,`nom_court`,`nom_complet`,`description`,`facultatif`,`date`,`coef`,`note_sur`,`ramener_sur_referentiel`,`display_parents`,`display_parents_app`,`date_ele_resp`)\n\tVALUES ('" . $donnees_passees['emplacement'] . "','" . $_SESSION[PREFIXE]['id_racine'] . "','" . $donnees_passees['nom'] . "','" . $donnees_passees['nomComplet'] . "','" . $donnees_passees['evalDescription'] . "','" . $donnees_passees['moyenne'] . "','" . $donnees_passees['display_date'] . "','" . $donnees_passees['coefEval'] . "','" . $donnees_passees['noteSur'] . "','" . $donnees_passees['noteSur20'] . "','" . $donnees_passees['noteSurReleve'] . "','" . $donnees_passees['appSurReleve'] . "','" . $donnees_passees['date_ele_resp'] . "')"; } if (mysql_query($sql)) { return TRUE; } else { charge_message("Échec lors de l'enregistrement dans la base"); return FALSE; } } charge_message("Des champs obligatoires n'ont pas été renseignés"); return FALSE; }
/** Crée un carnet de notes pour un groupe * * Crée un carnet de notes pour un groupe en enregistrant dans cn_cahier_notes un nouvel enregistrement * et en créant un enregistrement dans cn_conteneurs * * @return bool TRUE si le carnet de note est créé, FALSE sinon * @see charge_message() * @see get_group() * */ function cree_carnet_notes($id_groupe) { $current_group = get_group($id_groupe); $nom_complet_matiere = $current_group["matiere"]["nom_complet"]; $nom_court_matiere = $current_group["matiere"]["matiere"]; $reg = mysql_query("INSERT INTO cn_conteneurs SET id_racine='', nom_court='" . $current_group["description"] . "', nom_complet='" . $nom_complet_matiere . "', description = '', mode = '2', coef = '1.0', arrondir = 's1', ponderation = '0.0', display_parents = '0', display_bulletin = '1', parent = '0'"); if ($reg) { $id_racine = mysql_insert_id(); $reg = mysql_query("UPDATE cn_conteneurs SET id_racine='{$id_racine}', parent = '0' WHERE id='{$id_racine}'"); $_SESSION[PREFIXE]['id_racine'] = $id_racine; if ($reg) { $reg = mysql_query("INSERT INTO cn_cahier_notes SET id_groupe = '{$id_groupe}', periode = '" . $_SESSION[PREFIXE]['periode_num'] . "', id_cahier_notes='{$id_racine}'"); if ($reg) { return TRUE; } else { charge_message("Échec lors de la création du carnet de notes dans la base"); return FALSE; } } else { charge_message("Échec de la création du carnet de notes dans la base lors de la mise à jour du conteneur"); return FALSE; } } else { charge_message("Échec de la création du carnet de notes dans la base lors de la création du conteneur"); return FALSE; } }
/** Renvoie un tableau avec l'organisation d'une période * * id => $id_conteneur, * id_racine=>cn_conteneurs.display_parents'), * nom_complet=>cn_conteneurs.nom_complet, * nom_court=>cn_conteneurs.nom_court, * description=>cn_conteneurs.description, * mode=>cn_conteneurs.mode, * coef=>cn_conteneurs.coef, * arrondir=>cn_conteneurs.arrondir, * ponderation=>cn_conteneurs.ponderation, * display_parents =>cn_conteneurs.display_parents, * display_bulletin => cn_conteneurs.display_bulletin, * sous_conteneur => sous_modules_conteneur($id_conteneur)) * * @param array $id_conteneur l'Id du conteneur * @return array|bool l'organistion d'un conteneur ou FALSE en cas de problème * @see sous_modules_conteneur() */ function charge_conteneur($id_conteneur) { $sql = "SELECT * FROM `cn_conteneurs` WHERE `id`= '" . $id_conteneur . "'"; $result = mysql_query($sql); if ($result) { if (mysql_num_rows($result) != 0) { $nom_complet = trim(htmlentities(mysql_result($result, 0, 'nom_complet'), ENT_COMPAT)); $nom_court = trim(htmlentities(mysql_result($result, 0, 'nom_court'), ENT_COMPAT)); // on récupère les conteneurs enfants $sous_elements = sous_modules_conteneur($id_conteneur); $conteneur = array('id' => $id_conteneur, 'id_racine' => mysql_result($result, 0, 'display_parents'), 'nom_complet' => $nom_complet, 'nom_court' => $nom_court, 'description' => mysql_result($result, 0, 'description'), 'mode' => mysql_result($result, 0, 'mode'), 'coef' => mysql_result($result, 0, 'coef'), 'arrondir' => mysql_result($result, 0, 'arrondir'), 'ponderation' => mysql_result($result, 0, 'ponderation'), 'display_parents' => mysql_result($result, 0, 'display_parents'), 'display_bulletin' => mysql_result($result, 0, 'display_bulletin'), 'sous_conteneur' => $sous_elements); return $conteneur; } } else { charge_message("Échec lors de la récupération des données de " . $id_conteneur . " dans la base"); return FALSE; } return FALSE; }
// on vérifie qu'il y a bien quelque chose à afficher if (!isset($_SESSION[PREFIXE]["id_devoir"])) { charge_message("Aucun devoir sélectionné"); $_SESSION[PREFIXE]['contexte_module'] = EVALUATIONS; $_SESSION[PREFIXE]['contexte_action'] = VOIR; header("Location: index.php"); } else { if (!count($_SESSION[PREFIXE]["id_devoir"])) { charge_message("Vous devez choisir un devoir"); $_SESSION[PREFIXE]['contexte_module'] = EVALUATIONS; $_SESSION[PREFIXE]['contexte_action'] = VOIR; header("Location: index.php"); } else { // on vérifie que le prof peut évaluer le groupe ? if (!isset($_SESSION[PREFIXE]['id_groupe_session']) || !peut_noter_groupe($_SESSION[PREFIXE]['id_groupe_session'])) { charge_message("Vous n'avez pas les droits suffisant sur ce groupe"); $_SESSION[PREFIXE]['contexte_module'] = EVALUATIONS; $_SESSION[PREFIXE]['contexte_action'] = VOIR; header("Location: index.php"); } else { // Récupérer tous les devoirs disponibles $eval_possibles = evaluations_disponibles(); // Récupérer les devoirs non choisis $eval_disponibles = eval_non_choisies($eval_possibles); $tableau_notes = array(); // Récupérer les devoirs qu'on veut modifier $eval_valides = evaluations_modifiables(); if ($eval_valides) { // Récupérer les éleves du groupe $eleves_groupe = trouveEleves(); if ($eleves_groupe) {
header("Location: index.php"); die; } else { // Sinon on réaffiche les données charge_message("Echec de la copie de la structure dans la base"); } } // On arrive pour la première fois, on récupère les données puis on affiche la page $arborescence = charge_arborescence(); if (!$arborescence) { if (isset($_SESSION[PREFIXE]['arborescence'])) { unset($_SESSION[PREFIXE]['arborescence']); } $_SESSION[PREFIXE]['contexte_module'] = MODULE_DEFAUT; $_SESSION[PREFIXE]['contexte_action'] = VOIR; charge_message("Echec de la recopie de la structure"); header("Location: index.php"); die; } // On passe le tableau en $_SESSION[PREFIXE] $_SESSION[PREFIXE]['arborescence'] = $arborescence; // On récupère les données du groupe actif $group_actif = recupere_groupe_actif($_SESSION[PREFIXE]['id_groupe_session']); // On récupère les périodes du groupe actif $periodes = recupere_periodes($group_actif); //================================== // Décommenter la ligne ci-dessous pour afficher les variables $_GET, $_POST, $_SESSION[PREFIXE] et $_SERVER pour DEBUG: // $affiche_debug=debug_var(); /** * Chargement de la vue de la page *
} elseif (isset($_POST['mode']) && $_POST['mode'] == ENREGISTRER) { // Si on a choisi Enregistrer, on vérifie check_token check_token(); // vérifier les champs et enregistrer if (enregisteConteneur()) { // on vide les données en mémoire unset($_SESSION[PREFIXE]['add_change_conteneur']); $_SESSION[PREFIXE]['contexte_action'] = VOIR; $_SESSION[PREFIXE]['action'] = VOIR; unset($_SESSION[PREFIXE]['add_change_conteneur']); $_SESSION[PREFIXE]['post_reussi'] = TRUE; charge_message("Enregistrement du conteneur réussi"); header("Location: index.php"); die; } else { charge_message("Echec de l'enregistrement du conteneur"); $affiche_conteneur = $_SESSION[PREFIXE]['add_change_conteneur']; } } else { // Sinon // si on a des données en $session on les récupère if (isset($_SESSION[PREFIXE]['add_change_conteneur'])) { $affiche_conteneur = $_SESSION[PREFIXE]['add_change_conteneur']; } else { // Sinon, on vérifie si on veut modifier un conteneur $id_conteneur = isset($_POST['id_conteneur']) ? $_POST['id_conteneur'] : (isset($_GET['id_conteneur']) ? $_GET['id_conteneur'] : NULL); // Si on passe un Id de conteneur, le charger if (!empty($id_conteneur)) { $affiche_conteneur = recharge_conteneur($id_conteneur); } else { // On charge des données par défaut
if (count($notes_copier) < count($eleves)) { charge_message("ERREUR : Le nombre de notes (" . count($notes_copier) . ") ne correspond pas au nombre d'élèves (" . count($eleves) . ") !"); $notes_copier = FALSE; } else { $i = 0; foreach ($eleves as &$eleve) { $eleve['note'] = $notes_copier[$i]['note']; $eleve['statut'] = $notes_copier[$i]['statut']; $i++; } unset($eleve); } } if ($comments_copier) { if (count($comments_copier) < count($eleves)) { charge_message("ERREUR : Le nombre de commentaires (" . count($comments_copier) . ") ne correspond pas au nombre d'élèves (" . count($eleves) . ") !"); $comments_copier = FALSE; } else { $i = 0; foreach ($eleves as &$eleve) { $eleve['commentaire'] = $comments_copier[$i]; $i++; } unset($eleve); } } // fin TODO $evaluation = donnee_evaluation($_SESSION[PREFIXE][COLLER]); // on passe $eleves en $_SESSION[PREFIXE] pour pouvoir le récupérer lorsqu'on enregistre $_SESSION[PREFIXE]['tableau_colle'] = $eleves; $_SESSION[PREFIXE]['eval_colle'] = $evaluation['id'];
* tailles clés * - action[6] * - csrf_alea[9] * - eleve = array(note[18] , commentaire[17]) * * longueur clés * * @author Régis Bouguin * @package saisie_notes * @subpackage voir * @todo voir les photos en multisites * */ if (!$suhosin_bon) { charge_message('<span class=\'rouge\'>Les paramètres de votre serveur ne vous permettent pas d\'enregistrer autant d\'évaluations<span/>'); charge_message('<span class=\'rouge\'>Vous devez fermer une évaluation<span/>'); } ?> <div id="container"> <a name='contenu'></a> <?php if (isset($id_groupe_actif)) { ?> <h2> Saisie des notes : <?php echo $group_actif["classlist_string"]; ?> - <?php