コード例 #1
0
// ////////////////////////////////////////////////////////////////////////////////////////////////////
$tab_periode_eleves = isset($_POST['f_periode_eleves']) ? explode('_', $_POST['f_periode_eleves']) : '';
$tab_eleves_moyennes = isset($_POST['f_eleves_moyennes']) ? explode('x', $_POST['f_eleves_moyennes']) : '';
$rubrique_id = isset($_POST['f_rubrique']) ? Clean::entier($_POST['f_rubrique']) : 0;
$periode_id = count($tab_periode_eleves) ? $tab_periode_eleves[0] : 0;
// On vérifie les paramètres principaux
if (!$periode_id || !$rubrique_id || count($tab_periode_eleves) < 2 || !count($tab_eleves_moyennes) || $_SESSION['USER_PROFIL_TYPE'] != 'professeur' || !$_SESSION['OFFICIEL']['BULLETIN_MOYENNE_SCORES']) {
    exit('Erreur avec les données transmises !');
}
// On passe en revue les données
unset($tab_periode_eleves[0]);
$tab_eleve_id = array_filter(Clean::map_entier($tab_periode_eleves), 'positif');
$appreciation = 'Moyenne figée reportée par ' . afficher_identite_initiale($_SESSION['USER_NOM'], FALSE, $_SESSION['USER_PRENOM'], TRUE, $_SESSION['USER_GENRE']);
$nb_reports = 0;
foreach ($tab_eleves_moyennes as $eleve_moyenne) {
    list($eleve_id, $moyenne) = explode('_', $eleve_moyenne);
    $eleve_id = (int) $eleve_id;
    $note = round($moyenne, 1);
    // $tab_eleve_id contient la liste des élèves dont il faut changer les notes ; ce peut n'être qu'une intersection groupe x classe
    // $tab_eleves_moyennes contient les moyennes de tous les élèves du groupe ou de la classe
    if (in_array($eleve_id, $tab_eleve_id)) {
        DB_STRUCTURE_OFFICIEL::DB_modifier_bilan_officiel_saisie('bulletin', $periode_id, $eleve_id, $rubrique_id, 0, 'eleve', $note, $appreciation);
        $nb_reports++;
    }
}
// On affiche le résultat
if (!$nb_reports) {
    exit('Erreur avec les données transmises !');
}
$s = $nb_reports > 1 ? 's' : '';
exit('Note' . $s . ' reportée' . $s . ' pour ' . $nb_reports . ' élève' . $s . '.');
コード例 #2
0
ファイル: code_officiel_saisir.php プロジェクト: rhertzog/lcs
  $texte_classe       = empty($is_appreciation_groupe) ? '' : ' sur la classe' ;
  DB_STRUCTURE_OFFICIEL::DB_supprimer_bilan_officiel_saisie( $BILAN_TYPE , $periode_id , $eleve_ou_classe_id , $rubrique_id , $_SESSION['USER_ID'] , $saisie_type );
  $ACTION = ($rubrique_id!=0) ? '<button type="button" class="ajouter">Ajouter une appréciation'.$texte_classe.'.</button>' : '<button type="button" class="ajouter">Ajouter l\'appréciation générale'.$texte_classe.'.</button>' ;
  exit('<div class="hc">'.$ACTION.'</div>');
}

if($ACTION=='supprimer_note')
{
  // Il s'agit de la supprimer définitivement et de ne pas la recalculer : on insère une note vide
  if( ($ACTION=='tamponner') || ($BILAN_TYPE!='bulletin') || (!$rubrique_id) )
  {
    exit('Erreur avec les données transmises !');
  }
  $note = NULL;
  $appreciation = 'Moyenne effacée par '.afficher_identite_initiale($_SESSION['USER_NOM'],FALSE,$_SESSION['USER_PRENOM'],TRUE,$_SESSION['USER_GENRE']);
  DB_STRUCTURE_OFFICIEL::DB_modifier_bilan_officiel_saisie( $BILAN_TYPE , $periode_id , $eleve_id , $rubrique_id , 0 /*prof_id*/ , 'eleve' , $note , $appreciation );
  exit('<td class="now moyenne">-</td><td class="now"><span class="notnow">'.html($appreciation).' <button type="button" class="modifier">Modifier</button> <button type="button" class="nettoyer">Effacer et recalculer.</button></span></td>');
}

// ////////////////////////////////////////////////////////////////////////////////////////////////////
// Cas 3 : recalculer une note (soit effacée - NULL - soit figée car reportée manuellement)
// ////////////////////////////////////////////////////////////////////////////////////////////////////

if($ACTION=='recalculer_note')
{
  if( ($ACTION=='tamponner') || ($BILAN_TYPE!='bulletin') || (!$rubrique_id) )
  {
    exit('Erreur avec les données transmises !');
  }
  $note = calculer_et_enregistrer_moyenne_precise_bulletin( $periode_id , $classe_id , $eleve_id , $rubrique_id , $_SESSION['OFFICIEL']['BULLETIN_ONLY_SOCLE'] , $_SESSION['OFFICIEL']['BULLETIN_RETROACTIF'] );
  if($note===FALSE)
コード例 #3
0
ファイル: fonction_bulletin.php プロジェクト: Qwaseur/SACoche
function enregistrer_note($BILAN_TYPE, $periode_id, $eleve_id, $rubrique_id, $moyenne)
{
    $note = $_SESSION['OFFICIEL']['BULLETIN_CONVERSION_SUR_20'] ? round($moyenne, 1) : round($moyenne / 5, 1);
    $appreciation = 'Moyenne figée reportée par ' . afficher_identite_initiale($_SESSION['USER_NOM'], FALSE, $_SESSION['USER_PRENOM'], TRUE, $_SESSION['USER_GENRE']);
    DB_STRUCTURE_OFFICIEL::DB_modifier_bilan_officiel_saisie($BILAN_TYPE, $periode_id, $eleve_id, $rubrique_id, 0, 'eleve', $note, $appreciation);
    return array($note, $appreciation);
}