$note_val = isset($_POST['f_note']) ? Clean::texte($_POST['f_note']) : NULL; $devoir_id = isset($_POST['f_devoir']) ? Clean::entier($_POST['f_devoir']) : NULL; $groupe_id = isset($_POST['f_groupe']) ? Clean::entier($_POST['f_groupe']) : NULL; $tab_notes = array('RR', 'R', 'V', 'VV', 'NN', 'NE', 'NF', 'NR', 'ABS', 'DISP', 'REQ', 'X'); if ($action == 'enregistrer_note' && $item_id && $eleve_id && in_array($note_val, $tab_notes) && $devoir_id !== NULL && $groupe_id !== NULL) { // Nom du devoir $tab_jour = array(0 => 'dimanche', 1 => 'lundi', 2 => 'mardi', 3 => 'mercredi', 4 => 'jeudi', 5 => 'vendredi', 6 => 'samedi'); $tab_mois = array(1 => 'janvier', 2 => 'février', 3 => 'mars', 4 => 'avril', 5 => 'mai', 6 => 'juin', 7 => 'juillet', 8 => 'août', 9 => 'septembre', 10 => 'octobre', 11 => 'novembre', 12 => 'décembre'); $description = 'Évaluation ponctuelle du ' . $tab_jour[date("w")] . ' ' . date("j") . ' ' . $tab_mois[date("n")] . ' ' . date("Y") . '.'; // On cherche le devoir correspondant. $presence_devoir = FALSE; if ($devoir_id && $groupe_id && DB_STRUCTURE_PROFESSEUR::DB_tester_devoir_ponctuel_prof_by_ids($devoir_id, $_SESSION['USER_ID'], $groupe_id)) { $presence_devoir = TRUE; } else { // Si absence d'identifiants transmis, alors soit le devoir n'existe pas, soit il existe et c'est la 1ère saisie d'une série $DB_ROW = DB_STRUCTURE_PROFESSEUR::DB_recuperer_devoir_ponctuel_prof_by_date($_SESSION['USER_ID'], TODAY_MYSQL, $description); if (!empty($DB_ROW)) { $presence_devoir = TRUE; $devoir_id = $DB_ROW['devoir_id']; $groupe_id = $DB_ROW['groupe_id']; } } // Si pas de devoir, il faut l'ajouter if (!$presence_devoir) { // Commencer par créer un nouveau groupe de type "eval", utilisé uniquement pour cette évaluation (c'est transparent pour le professeur) ; y associe automatiquement le prof, en responsable du groupe $groupe_id = DB_STRUCTURE_PROFESSEUR::DB_ajouter_groupe_par_prof('eval', '', 0); // Insèrer l'enregistrement de l'évaluation $devoir_id = DB_STRUCTURE_PROFESSEUR::DB_ajouter_devoir($_SESSION['USER_ID'], $groupe_id, TODAY_MYSQL, $description, TODAY_MYSQL, NULL, '', '', 'alpha'); } // Maintenant on recupère le contenu de la base déjà enregistré pour le comparer avec la saisie envoyée. $presence_item = FALSE;