'; } // //////////////////////////////////////////////////////////////////////////////////////////////////// // Formulaire de choix des épreuves pour une recherche de saisies manquantes. -> zone_chx_rubriques // Paramètres supplémentaires envoyés pour éviter d'avoir à les retrouver à chaque fois. -> form_hidden // //////////////////////////////////////////////////////////////////////////////////////////////////// $form_hidden = ''; $tab_checkbox_rubriques = array(); // Lister les matières rattachées au prof $listing_matieres_id = $_SESSION['USER_PROFIL_TYPE'] == 'professeur' ? DB_STRUCTURE_COMMUN::DB_recuperer_matieres_professeur($_SESSION['USER_ID']) : ''; $form_hidden .= '<input type="hidden" id="f_listing_matieres" name="f_listing_matieres" value="' . $listing_matieres_id . '" />'; $tab_matieres_id = explode(',', $listing_matieres_id); // Lister les épreuves par série de Brevet en place dans l'établissement foreach ($tab_brevet_series as $brevet_serie_ref => $brevet_serie_nom) { $tab_checkbox_rubriques[$brevet_serie_ref] = '<h3>' . $brevet_serie_nom . '</h3>'; $DB_TAB = DB_STRUCTURE_BREVET::DB_lister_brevet_epreuves($brevet_serie_ref); foreach ($DB_TAB as $DB_ROW) { $checked = $_SESSION['USER_PROFIL_TYPE'] != 'professeur' || count(array_intersect(explode(',', $DB_ROW['brevet_epreuve_choix_matieres']), $tab_matieres_id)) ? ' checked' : ''; $tab_checkbox_rubriques[$brevet_serie_ref] .= '<label for="rubrique_' . $brevet_serie_ref . '_' . $DB_ROW['brevet_epreuve_code'] . '"><input type="checkbox" name="f_rubrique[]" id="rubrique_' . $brevet_serie_ref . '_' . $DB_ROW['brevet_epreuve_code'] . '" value="' . $brevet_serie_ref . '_' . $DB_ROW['brevet_epreuve_code'] . '"' . $checked . ' /> ' . html($DB_ROW['brevet_epreuve_nom']) . '</label><br />'; } $tab_checkbox_rubriques[$brevet_serie_ref] .= '<label for="rubrique_' . $brevet_serie_ref . '_' . CODE_BREVET_EPREUVE_TOTAL . '"><input type="checkbox" name="f_rubrique[]" id="rubrique_' . $brevet_serie_ref . '_' . CODE_BREVET_EPREUVE_TOTAL . '" value="' . $brevet_serie_ref . '_' . CODE_BREVET_EPREUVE_TOTAL . '" /> <i>Avis de synthèse</i></label><br />'; } ?> <form action="#" method="post" id="zone_chx_rubriques" class="hide"> <h2>Rechercher des saisies manquantes</h2> <div class="astuce">La recherche sera dans tous les cas aussi restreinte aux épreuves où les élèves ont des notes reportées.</div> <p><a href="#zone_chx_rubriques" id="rubrique_check_all" class="cocher_tout">Toutes</a> <a href="#zone_chx_rubriques" id="rubrique_uncheck_all" class="cocher_rien">Aucune</a></p> <div class="col_liste"><?php echo implode('</div><div class="col_liste">', $tab_checkbox_rubriques); ?>
* */ if(!defined('SACoche')) {exit('Ce fichier ne peut être appelé directement !');} if($_SESSION['SESAMATH_ID']==ID_DEMO){exit('Action désactivée pour la démo...');} // Récupération et test de la série du DNB $serie = (isset($_POST['f_serie'])) ? Clean::texte($_POST['f_serie']) : '' ; if(!$serie) { exit('Erreur : série non transmise !'); } $DB_TAB_epreuves = DB_STRUCTURE_BREVET::DB_lister_brevet_epreuves($serie); if(empty($DB_TAB_epreuves)) { exit('Erreur : série inconnue !'); } // Test des paramètres des épreuves $tab_choix_epreuve = array(); foreach($DB_TAB_epreuves as $DB_ROW) { $epreuve = $DB_ROW['brevet_epreuve_code']; $recherche = (isset($_POST['f_'.$serie.'_'.$epreuve.'_recherche'])) ? Clean::entier($_POST['f_'.$serie.'_'.$epreuve.'_recherche']) : NULL ; $moyenne = (isset($_POST['f_'.$serie.'_'.$epreuve.'_moyenne'])) ? Clean::entier($_POST['f_'.$serie.'_'.$epreuve.'_moyenne']) : NULL ; $tab_matieres = (isset($_POST['f_'.$serie.'_'.$epreuve.'_matieres'])) ? explode(',',$_POST['f_'.$serie.'_'.$epreuve.'_matieres']) : array() ;
$tab_brevet_serie[$tab_eleve['eleve_brevet_serie']] = $tab_eleve['eleve_brevet_serie']; // Sera remplacé par le nom de la série après } if( !count($tab_brevet_serie) || isset($tab_brevet_serie['X']) ) { exit('Élève(s) trouvé(s) sans association avec une série de brevet !'); } // //////////////////////////////////////////////////////////////////////////////////////////////////// // Récupération des noms des épreuves par série de brevet (probablement une seule) // //////////////////////////////////////////////////////////////////////////////////////////////////// $tab_brevet_epreuve = array(); foreach($tab_brevet_serie as $serie_ref) { $tab_brevet_epreuve[$serie_ref] = array(); $DB_TAB = DB_STRUCTURE_BREVET::DB_lister_brevet_epreuves( $serie_ref , TRUE /*with_serie_nom*/ ); foreach($DB_TAB as $DB_ROW) { $tab_brevet_serie[$serie_ref] = $DB_ROW['brevet_serie_nom']; $tab_brevet_epreuve[$serie_ref][$DB_ROW['brevet_epreuve_code']] = $DB_ROW['brevet_epreuve_nom']; } $tab_brevet_epreuve[$serie_ref][CODE_BREVET_EPREUVE_TOTAL] = 'Avis de synthèse'; } // //////////////////////////////////////////////////////////////////////////////////////////////////// // Récupération des saisies déjà effectuées pour le bilan officiel concerné // //////////////////////////////////////////////////////////////////////////////////////////////////// // Pour la recherche de saisies manquantes, on peut simplement récupérer ce qui est présent dans la table sacoche_brevet_saisie ; en effet : // - on ne regarde que les élèves dont les notes sont enregistrées // - les notes sont toutes enregistrées à la fois, il ne peut pas y avoir de notes manquantes
// Ne pas exécuter la suite de ce fichier inclus. } // Formulaires communs $tab_choix_recherche = array(); $tab_choix_recherche[] = array('valeur' => 1, 'texte' => 'utiliser en priorité les moyennes des bulletins (si existantes)'); $tab_choix_recherche[] = array('valeur' => 0, 'texte' => 'utiliser la moyenne annuelle des acquisitions (jusqu\'à ce jour)'); $tab_choix_moyenne = array(); $tab_choix_moyenne[] = array('valeur' => 1, 'texte' => 'utiliser la moyenne du premier référentiel trouvé'); $tab_choix_moyenne[] = array('valeur' => 0, 'texte' => 'utiliser la moyenne de tous les référentiels trouvés'); // Passer les séries de Brevet en revue foreach ($DB_TAB_series as $DB_ROW) { $s = $DB_ROW['nombre'] > 1 ? 's' : ''; echo '<h2 id="h2_' . $DB_ROW['brevet_serie_ref'] . '">' . html($DB_ROW['brevet_serie_nom']) . ' (' . $DB_ROW['nombre'] . ' élève' . $s . ')</h2>' . NL; echo '<form action="#" method="post" id="form_' . $DB_ROW['brevet_serie_ref'] . '">' . NL; // Récupérer les paramètres et lister les réglages éventuellement déjà enregistrés $DB_TAB_epreuves = DB_STRUCTURE_BREVET::DB_lister_brevet_epreuves($DB_ROW['brevet_serie_ref']); foreach ($DB_TAB_epreuves as $DB_ROW) { // Id & Nom épreuve & Infos $id_start = '' . $DB_ROW['brevet_serie_ref'] . '_' . $DB_ROW['brevet_epreuve_code']; echo '<h3 id="h3_' . $id_start . '">' . html($DB_ROW['brevet_epreuve_nom']) . '</h3>' . NL; if (!$DB_ROW['brevet_epreuve_note_comptee']) { echo '<p class="astuce">Présence d\'une note obligatoire, mais seulement à titre informatif, celle-ci n\'étant pas comptabilisée dans le total des points.</p>' . NL; } if (!$DB_ROW['brevet_epreuve_note_chiffree']) { echo '<p class="astuce">Pas de note chiffrée à saisir pour cette épreuve : uniquement un état de validation.</p>' . NL; } echo '<p>' . NL; // Mode de recherche $f_nom_recherche = 'f_' . $id_start . '_recherche'; $selection_recherche = $DB_ROW['brevet_epreuve_choix_recherche'] === NULL ? FALSE : $DB_ROW['brevet_epreuve_choix_recherche']; echo '<label class="tab" for="' . $f_nom_recherche . '">Mode de recherche :</label>' . HtmlForm::afficher_select($tab_choix_recherche, $f_nom_recherche, FALSE, $selection_recherche, '') . '<br />' . NL;