// si l'utilisateur n'a pas le statut scolarité, on vérifie qu'il est prof principal de l'élève //if (($_SESSION['statut'] != 'scolarite') and ($_SESSION['statut'] != 'secours')) { if ($_SESSION['statut'] == 'professeur') { if (getSettingAOui('GepiAccesPPTousElevesDeLaClasse') && is_pp($_SESSION['login'], $id_classe)) { // Le prof est PP de la classe, c'est OK } elseif (is_pp($_SESSION['login'], $id_classe, $current_eleve_login)) { // Le prof est PP de cet élève en particulier, c'est OK } else { $msg = "Vous n'êtes pas " . $gepi_prof_suivi . " de cet élève."; $reg = 'no'; } // On vérifie que l'élève est bien dans cette classe sur cette période pour éviter qu'un PP mette un avis à un élève qui a changé de classe $sql = "SELECT 1=1 FROM j_eleves_classes WHERE login='******' AND id_classe='{$id_classe}' AND periode='{$periode_num}';"; $test_ele_clas_per = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test_ele_clas_per) == 0) { $msg = "L'élève " . get_nom_prenom_eleve($current_eleve_login, "avec_classe") . " n'est plus dans la classe de " . get_nom_classe($id_classe) . " sur la période {$periode_num}."; $reg = 'no'; } } elseif ($_SESSION['statut'] == 'cpe' && !getSettingAOui('GepiRubConseilCpeTous')) { $test_cpe_suivi = sql_query1("select 1=1 from j_eleves_cpe\n\t\t\twhere e_login = '******' and\n\t\t\tcpe_login = '******'login'] . "'\n\t\t\t"); if ($test_cpe_suivi == '-1') { $msg = "Vous n'êtes pas cpe de cet élève."; $reg = 'no'; } } //echo "PLOP"; if ($reg == 'yes') { $sql = "DELETE FROM avis_conseil_classe WHERE (login='******' AND periode='{$periode_num}');"; $menage = mysqli_query($GLOBALS["mysqli"], $sql); if ($current_eleve_login_ap != '' || isset($current_eleve_mention) && $current_eleve_mention != 0) { $sql = "INSERT INTO avis_conseil_classe SET login='******',periode='{$periode_num}',avis='{$current_eleve_login_ap}',";
} } } /* else { echo "\$current_group[\"periodes\"][$loop_per]['num_periode'] n'est pas défini.<br />"; } */ } } } else { foreach ($current_group["periodes"] as $period) { for ($i = 0; $i < count($login_eleve); $i++) { if (isset($_POST['eleve_' . $period["num_periode"] . '_' . $i])) { if (in_array($login_eleve[$i], $tab_ele)) { $nom_eleve = get_nom_prenom_eleve($login_eleve[$i]); $sql = "INSERT INTO j_signalement SET id_groupe='{$id_groupe}', declarant='" . $_SESSION['login'] . "', nature='erreur_affect', login='******', periode='" . $period["num_periode"] . "', "; if (in_array($login_eleve[$i], $reg_eleves[$period["num_periode"]])) { $sql .= "valeur='en_trop';"; $texte_mail .= "{$nom_eleve} est en trop en période " . $period["num_periode"] . ".\n"; } else { $sql .= "valeur='manquant';"; $texte_mail .= "{$nom_eleve} est manquant en période " . $period["num_periode"] . ".\n"; } //echo "$sql<br />\n"; $insert = mysqli_query($GLOBALS["mysqli"], $sql); if (!$insert) { $msg .= "Erreur pour " . $nom_eleve . "<br />"; } //flush(); }
while ($lig_aid = mysqli_fetch_object($res_aid)) { echo " - {$lig_aid->nom} (<i>{$lig_aid->nom_complet}</i>)"; $sql = "SELECT DISTINCT jec.login FROM j_eleves_classes jec, j_aid_eleves jae WHERE jec.login=jae.login AND jec.id_classe='{$id_future_classe}' AND jae.id_aid='{$lig_aid->id_aid}';"; $test = mysqli_query($GLOBALS["mysqli"], $sql); $nb_ele_fut_aid = mysqli_num_rows($test); if ($nb_ele_fut_aid == 1) { $lig_ele_fut_aid = mysqli_fetch_object($test); echo " : " . $nb_ele_fut_aid . " élève de la classe future est inscrit dans cet AID (<span style='font-size:small; font-style:italic;'>" . get_nom_prenom_eleve($lig_ele_fut_aid->login) . "</span>)."; } elseif ($nb_ele_fut_aid > 1) { echo " : " . $nb_ele_fut_aid . " élèves de la classe future sont inscrits dans cet AID (<span style='font-size:small; font-style:italic;'>"; $cpt_ele_aid = 0; while ($lig_ele_fut_aid = mysqli_fetch_object($test)) { if ($cpt_ele_aid > 0) { echo ", "; } echo get_nom_prenom_eleve($lig_ele_fut_aid->login); $cpt_ele_aid++; } echo "</span>)"; } echo "<br />\n"; } echo "</p>\n"; echo "<p><br /></p>\n"; } echo "<script type='text/javascript'>\n\tfunction verifie_form() {\n\t\ttemoin_assoc='ok';\n\t\tfor(i=0;i<{$cpt};i++) {\n\t\t\tif(document.getElementById('id_grp_fut_'+i)) {\n\t\t\t\t//alert(\"document.getElementById('id_grp_fut_\"+i+\"').value=\"+document.getElementById('id_grp_fut_'+i).value);\n\n\t\t\t\tif(document.getElementById('id_grp_fut_'+i).value=='') {\n\t\t\t\t\ttemoin_assoc='n';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif(temoin_assoc=='n') {\n\t\t\tverif=confirm('ATTENTION:\\nUn enseignement de " . $classe . " au moins n est pas associé à un enseignement de " . $classe_future . ".\\nLes notes éventuelles de l élève à cet enseignement seront perdues si vous confirmez la volonté de procéder aux changements.');\n\t\t\tif(verif) {\n\t\t\t\tdocument.forms['form_assoc_grp'].submit();\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tdocument.forms['form_assoc_grp'].submit();\n\t\t}\n\t}\n</script>\n"; echo "<p><b>ATTENTION:</b></p>\n<blockquote>\n<p>Dans le cas où des groupes sont en commun entre la {$classe} et la {$classe_future}, si l'élève fait partie de plusieurs enseignements correspondant à la même matière (<i>exemple: l'élève fait partie de 2 enseignements de DecP3 partagés entre les deux classes</i>), il faut éviter d'intervertir les groupes.<br />\nDans le cas contraire, lors de la migration du deuxième enseignement, l'inscription au premier est supprimé.</p>\n<p>La page propose normalement de ne pas changer de groupe lorsque le groupe est partagé par les deux classes (<i>le numéro de groupe est indiqué entre parenthèses</i>).<br />\nEvitez les 'fantaisies';o).</p>\n</blockquote>\n"; } else { check_token(false); $tab_per = array($periode_num); if ($chgt_periode_sup == "y") {
</th> </tr> <tr>"; echo " <th>P.1</th> <th>P.2</th> <th>P.3</th>"; echo " </tr>"; $cpt=10; while($lig=mysqli_fetch_object($res)) { echo " <tr> <td id='td_nom_$cpt'> <input type='hidden' name='ele_login[$cpt]' id='ele_login_$cpt' value='".$lig->login."' /> ".get_nom_prenom_eleve($lig->login)." </td>"; for($i=1;$i<=3;$i++) { $note="-"; $sql="SELECT round(avg(mn.note),1) as moyenne FROM matieres_notes mn WHERE (mn.id_groupe='".$id_groupe."' AND mn.login='******' AND mn.statut ='' AND periode='$i');"; $res_note=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_note)>0) { $lig_note=mysqli_fetch_object($res_note); $note=$lig_note->moyenne; } echo " <td> $note </td>";
echo " colspan='2'"; } } ?> > <?php if (count($ele_login) > 0) { $chaine_avertissement = ""; for ($i = 0; $i < count($ele_login); $i++) { if (acces_ele_disc($ele_login[$i])) { if ($chaine_avertissement == '') { $chaine_avertissement .= "Détails visibles de "; } else { $chaine_avertissement .= ", "; } $chaine_avertissement .= get_nom_prenom_eleve($ele_login[$i]); } $tab_resp = get_resp_from_ele_login($ele_login[$i]); for ($j = 0; $j < count($tab_resp); $j++) { if (isset($tab_resp[$j]['login']) && acces_resp_disc($tab_resp[$j]['login'])) { if ($chaine_avertissement == '') { $chaine_avertissement .= "Détails visibles de "; } else { $chaine_avertissement .= ", "; } $chaine_avertissement .= $tab_resp[$j]['designation']; } } } if ($chaine_avertissement != "") { $chaine_avertissement = "<div class='fieldset_opacite50' style='float:right; color:red; width:15em; border: 1px solid red; margin: 1px;'>{$chaine_avertissement}</div>\n";
if($_SESSION['statut']=='professeur') { $acces_suite="n"; if((getSettingAOui('visuDiscProfClasses'))&&(is_prof_ele($_SESSION['login'], $login_ele))) { $acces_suite="y"; } elseif((getSettingAOui('visuDiscProfGroupes'))&&(is_prof_classe_ele($_SESSION['login'], $login_ele))) { $acces_suite="y"; } elseif(is_pp($_SESSION['login'], "", $login_ele)) { $acces_suite="y"; } if($acces_suite=="n") { $msg="Vous n'avez pas accès à cet élève.<br />"; tentative_intrusion(1, "Tentative d'accès à la consultation d'$mod_disc_terme_incident pour l'élève ".get_nom_prenom_eleve($login_ele)."."); unset($login_ele); } } /* elseif(($_SESSION['statut']=='cpe')&&(!is_cpe($_SESSION['login'], "", $login_ele))) { $msg="Vous n'avez pas accès à cet élève.<br />"; tentative_intrusion(1, "Tentative d'accès à la consultation d'$mod_disc_terme_incident pour l'élève ".get_nom_prenom_eleve($login_ele)."."); unset($login_ele); } */ } $style_specifique[] = "lib/DHTMLcalendar/calendarstyle"; $javascript_specifique[] = "lib/DHTMLcalendar/calendar"; $javascript_specifique[] = "lib/DHTMLcalendar/lang/calendar-fr";
if($nb_comptes_resp>0) { $sql="SELECT 1=1 FROM temp_responsables2_import WHERE pers_id='".$lig1->col2."' AND (resp_legal='1' OR resp_legal='2');"; $test_resp_legal=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test_resp_legal)>0) { $info_action_titre="Nouveau responsable : ".remplace_accents(stripslashes($lig->nom)." ".stripslashes($lig->prenom))." (".$lig1->col2.")"; // 20130405 $info_action_texte=""; $sql="SELECT e.login, t.resp_legal FROM eleves e, temp_responsables2_import t WHERE e.ele_id=t.ele_id AND t.pers_id='".$lig1->col2."' ORDER BY e.nom, e.prenom;"; $res_ele_resp=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_ele_resp)>0) { $info_action_texte.="Le nouveau responsable <a href='responsables/modify_resp.php?pers_id=".$lig1->col2."'>".remplace_accents(stripslashes($lig->nom)." ".stripslashes($lig->prenom))." (".$lig1->col2.")</a> est associé d'après vos fichiers Sconet à "; $cpt_ele_resp=0; while($lig_ele_resp=mysqli_fetch_object($res_ele_resp)) { if($cpt_ele_resp>0) {$info_action_texte.=", ";} $info_action_texte.="<a href='eleves/modify_eleve.php?eleve_login="******"'>".get_nom_prenom_eleve($lig_ele_resp->login, 'avec_classe')." <span title=\""; if(($lig_ele_resp->resp_legal==1)||($lig_ele_resp->resp_legal==2)) { $info_action_texte.="en responsable légal $lig_ele_resp->resp_legal"; } else { $info_action_texte.="en responsable non légal (contact,...)"; } $info_action_texte.="\">($lig_ele_resp->resp_legal)</span></a>"; $cpt_ele_resp++; } $info_action_texte.="<br />"; } $info_action_texte.="Vous souhaitez peut-être créer un compte pour ce nouveau responsable : <a href='utilisateurs/create_responsable.php?critere_recherche=$lig->nom&afficher_tous_les_resp=n'>".remplace_accents(stripslashes($lig->nom)." ".stripslashes($lig->prenom))."</a>."; $info_action_destinataire=array("administrateur"); $info_action_mode="statut"; enregistre_infos_actions($info_action_titre,$info_action_texte,$info_action_destinataire,$info_action_mode);
$tab_designation=array(); foreach($tab_connexions as $date => $tab_login) { $alt=$alt*(-1); $ligne_date.="<td class='lig$alt'>".formate_date($date)."</td>"; $ligne_eff.="<td class='lig$alt' title=\"Effectif de connexion\">".count($tab_login['login'])."</td>"; if(((($mode_2==2)||($mode_2==4)||($mode_2==6))&&($AccesDetailConnexionResp))|| ((($mode_2==3)||($mode_2==5)||($mode_2==6))&&($AccesDetailConnexionEle))) { $ligne_personnes.="<td class='lig$alt' style='vertical-align:top'>"; for($loop=0;$loop<count($tab_login['login']);$loop++) { if(($mode_2==2)||($mode_2==4)||($mode_2==6)) { if(!array_key_exists($tab_login['login'][$loop], $tab_designation)) {$tab_designation[$tab_login['login'][$loop]]=civ_nom_prenom($tab_login['login'][$loop]);} } else { if(!array_key_exists($tab_login['login'][$loop], $tab_designation)) {$tab_designation[$tab_login['login'][$loop]]=get_nom_prenom_eleve($tab_login['login'][$loop]);} } $ligne_personnes.=$tab_designation[$tab_login['login'][$loop]]."<br />"; } $ligne_personnes.="</td>"; } } $ligne_date.="</tr>"; $ligne_eff.="</tr>"; $ligne_personnes.="</tr>"; //echo "<a href='".$_SERVER['PHP_SELF']."?csv=y&id_classe=$id_classe&mode=$mode&mode_2=$mode_2&date_mysql_debut=$date_mysql_debut&date_mysql_fin=$date_mysql_fin' title=\"Exporter les statistiques de connexion au format CSV.\"><img src='../images/icons/csv.png' class='icone16' alt='CSV' /></a>"; echo "<a href='".$_SERVER['PHP_SELF']."?csv=y&id_classe=$id_classe&mode=$mode&date_mysql_debut=$date_mysql_debut&date_mysql_fin=$date_mysql_fin' title=\"Exporter les statistiques de connexion au format CSV.\"><img src='../images/icons/csv.png' class='icone16' alt='CSV' /></a>"; if(((($mode_2==2)||($mode_2==4)||($mode_2==6))&&($AccesDetailConnexionResp))|| ((($mode_2==3)||($mode_2==5)||($mode_2==6))&&($AccesDetailConnexionEle))) {
} check_token(); header('Content-Type: text/html; charset=utf-8'); $login_eleve = isset($_POST['login_ele_ajout_classe']) ? $_POST['login_ele_ajout_classe'] : ""; $id_classe = isset($_POST['id_classe']) ? $_POST['id_classe'] : ""; $num_periode = isset($_POST['num_periode']) ? $_POST['num_periode'] : array(); /* echo "\$login_eleve=$login_eleve<br />"; echo "\$id_classe=$id_classe<br />"; */ $msg = ""; $erreur = "n"; if ($login_eleve == "" || $id_classe == "" || count($num_periode) == 0) { $erreur = "y"; } else { $nom_prenom = get_nom_prenom_eleve($login_eleve); if (preg_match("/\\(/", $nom_prenom)) { $msg = "{$nom_prenom} n'est pas un élève."; $erreur = "y"; } else { $classe = get_nom_classe($id_classe); if (!$classe) { $msg = "L'identifiant '{$id_classe}' ne correspond à aucune classe."; $erreur = "y"; } else { $sql = "SELECT num_periode FROM periodes WHERE id_classe='{$id_classe}';"; $res_per = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_per) == 0) { //$msg="Aucune période n'existe pour la classe <a href='../classes/periodes.php?id_classe=$id_classe'>$classe</a>."; $msg = "Aucune période n'existe pour la classe {$classe}."; $erreur = "y";
echo "<br />\n(<i>$compteur élèves n'ont pas leurs deux responsables légaux</i>)\n"; echo "</p>\n"; echo "<center><input type='submit' value='Enregistrer' /></center>\n"; echo "<input type='hidden' name='is_posted' value='1' />\n"; echo "</form>\n"; } else{ echo "<p>Tous les élèves ont leur deux responsables légaux.</p>\n"; } if(count($tab_anomalie_ele_id)>0) { echo "<p><span style='color:red'>ANOMALIE :</span> Un ou des élèves n'ont pas d'ELE_ID.<br />Comment avez-vous initialisé/importé/créé ces élèves ?<br />En voici la liste :</p>"; echo "<ul>\n"; for($i=0;$i<count($tab_anomalie_ele_id);$i++) { echo "<li><a href='../eleves/modify_eleve.php?eleve_login="******"'>".get_nom_prenom_eleve($tab_anomalie_ele_id[$i],'avec_classe')."</li>\n"; } echo "</ul>\n"; } require("../lib/footer.inc.php"); die(); } if(!isset($quitter_la_page)){ echo "<p class='bold'><a href='index.php'"; echo " onclick=\"return confirm_abandon (this, change, '$themessage')\""; echo "><img src='../images/icons/back.png' alt='Retour' class='back_link'/> Retour</a>"; echo " | <a href='modify_resp.php'>Ajouter un responsable</a>"; }
// Lieu $tab_lignes_OOo[$nb_ligne]['lieu'] = get_lieu_from_id($lig_incident->id_lieu); // Protagonistes $tab_protagonistes_eleves = array(); $sql = "SELECT * FROM s_protagonistes WHERE id_incident='{$lig_incident->id_incident}' ORDER BY statut,qualite,login;"; $res2 = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) == 0) { $tab_lignes_OOo[$nb_ligne]['protagonistes'] = "Aucun"; } else { $liste_protagonistes = ""; while ($lig2 = mysqli_fetch_object($res2)) { if ($liste_protagonistes != "") { $liste_protagonistes .= ", "; } if ($lig2->statut == 'eleve') { $liste_protagonistes .= get_nom_prenom_eleve($lig2->login, 'avec_classe'); $tab_protagonistes_eleves[] = $lig2->login; } else { $liste_protagonistes .= civ_nom_prenom($lig2->login, '', "y"); } if ($lig2->qualite != '') { $liste_protagonistes .= " {$lig2->qualite}"; } } } $tab_lignes_OOo[$nb_ligne]['protagonistes'] = $liste_protagonistes; $id_incident_courant = $lig_incident->id_incident; // Mesures prises $texte = ""; $sql = "SELECT DISTINCT sti.login_ele FROM s_traitement_incident sti, s_mesures s WHERE sti.id_incident='{$id_incident_courant}' AND sti.id_mesure=s.id AND s.type='prise'"; //$texte.="<br />$sql";
$mgen[$cpt]=round(preg_replace('/,/', '.', $mgen[$cpt]),1); } } } $liste_temp=""; for($loop=1;$loop<=count($serie);$loop++) { if($liste_temp!="") {$liste_temp.="&";} $liste_temp.="temp$loop=".$serie[$loop]; if($affiche_mgen=='oui') { $liste_temp.="&mgen$loop=".$mgen[$loop]; } } echo "<p>".get_nom_prenom_eleve($eleve1, "avec_classe")."<br />"; echo "<img src='draw_graphe.php?"; // $liste_temp contient les séries et les moyennes générales. echo "$liste_temp"; echo "&etiquette=$liste_matieres"; echo "&titre=$graph_title"; echo "&v_legend1=$eleve1"; //echo "&v_legend2=Toutes_les_périodes"; echo "&v_legend2=".rawurlencode("Toutes_les_périodes"); echo "&compteur=$compteur"; echo "&nb_series=$nb_series"; echo "&id_classe=$id_classe"; echo "&largeur_graphe=$largeur_graphe"; echo "&hauteur_graphe=$hauteur_graphe"; echo "&taille_police=$taille_police"; echo "&epaisseur_traits=$epaisseur_traits";
if ($valider_modif == "y") { // Contrôle des saisies pour supprimer les sauts de lignes surnuméraires. $app = suppression_sauts_de_lignes_surnumeraires($app); //================================================== if ($envoi_mail_correction_autrui == "y") { $ancienne_app = ""; $sql = "SELECT appreciation FROM matieres_appreciations WHERE (login='******' AND id_groupe='" . $current_group["id"] . "' AND periode='{$corriger_app_num_periode}');"; //echo "$sql<br />"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { $lig = mysqli_fetch_object($res); $ancienne_app = $lig->appreciation; //echo "<span style='color:plum'>ancienne_app=$ancienne_app</span>"; } $tab_param_mail = array(); $texte_mail = "Je viens d'effectuer (" . strftime("%d/%m/%Y à %H:%M:%S") . ") une correction de votre appréciation pour " . get_nom_prenom_eleve($corriger_app_login_eleve) . " en " . $current_group["name"] . " (" . $current_group["description"] . " en " . $current_group["classlist_string"] . ") en période " . $corriger_app_num_periode . ".\n\nL'ancienne appréciation était:\n====================================================\n{$ancienne_app}\n====================================================\n\net la nouvelle:\n====================================================\n{$app}\n====================================================\n\n\nCordialement.\n-- \n" . civ_nom_prenom($_SESSION['login']); $envoi_mail_actif = getSettingValue('envoi_mail_actif'); if ($envoi_mail_actif != 'n' && $envoi_mail_actif != 'y') { $envoi_mail_actif = 'y'; // Passer à 'n' pour faire des tests hors ligne... la phase d'envoi de mail peut sinon ensabler. } if ($envoi_mail_actif == 'y') { $email_destinataires = ""; $sql = "SELECT DISTINCT u.login, u.email FROM utilisateurs u, j_groupes_professeurs jgp WHERE jgp.login=u.login AND jgp.id_groupe='{$corriger_app_id_groupe}';"; $req = mysqli_query($mysqli, $sql); if (mysqli_num_rows($req) > 0) { //$tab_email_destinataire=array(); $tab_login_destinataire = array(); $cpt_dest = 0; while ($lig_u = mysqli_fetch_object($req)) { if ($cpt_dest > 0) {
//echo "$sql<br />"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) == 0) { echo "\n\t\t<p>Aucun élève n'a été trouvé.<br />{$sql}</p>\n\t</fieldset>\n</form>"; require "../lib/footer.inc.php"; die; } if ($notanet_saisie_note_ouverte) { echo "\t\t<div id=\"fixe\"><p><input type='submit' value='Enregistrer' /></p></div>"; } echo "\n\t\t<div style='float:right; width:10em; color:red;'>\n\t\t\tA FAIRE : Préciser la liste des valeur acceptées (AB, DI,...)\n\t\t</div>\n\n\t\t<input type='hidden' name='temoin_suhosin_1' value='y' />\n\n\t\t<table class='boireaus boireaus_alt'>\n\t\t\t<tr>\n\t\t\t\t<th rowspan='2'>Élève</th>\n\t\t\t\t<th colspan='3'>Périodes</th>\n\t\t\t\t<th rowspan='2' title=\"Moyenne des trois périodes\">Moyenne</th>\n\t\t\t\t<th rowspan='2'>\n\t\t\t\t\tNote<br />\n\t\t\t\t\t<a href='javascript:copier_coller_moy()' title=\"Copier la moyenne des moyennes de périodes vers les champs de saisie.\"><img src='../images/icons/copy-16.png' class='icone16' alt='Coller' /></a>\n\t\t\t\t</th>\n\t\t\t</tr>\n\t\t\t<tr>"; echo "\n\t\t\t\t<th>P.1</th>\n\t\t\t\t<th>P.2</th>\n\t\t\t\t<th>P.3</th>"; echo "\n\t\t\t</tr>"; $cpt = 10; while ($lig = mysqli_fetch_object($res)) { echo "\n\t\t\t<tr>\n\t\t\t\t<td id='td_nom_{$cpt}'>\n\t\t\t\t\t<input type='hidden' name='ele_login[{$cpt}]' id='ele_login_{$cpt}' value='" . $lig->login . "' />\n\t\t\t\t\t" . get_nom_prenom_eleve($lig->login) . "\n\t\t\t\t</td>"; for ($i = 1; $i <= 3; $i++) { $note = "-"; $sql = "SELECT round(avg(mn.note),1) as moyenne FROM matieres_notes mn WHERE (mn.id_groupe='" . $id_groupe . "' AND mn.login='******' AND mn.statut ='' AND periode='{$i}');"; $res_note = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_note) > 0) { $lig_note = mysqli_fetch_object($res_note); $note = $lig_note->moyenne; } echo "\n\t\t\t\t<td>\n\t\t\t\t\t{$note}\n\t\t\t\t</td>"; } $note = "-"; $sql = "SELECT round(avg(mn.note),1) as moyenne FROM matieres_notes mn WHERE (mn.id_groupe='" . $id_groupe . "' AND mn.login='******' AND mn.statut ='');"; $res_note = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_note) > 0) { $lig_note = mysqli_fetch_object($res_note);
} require_once 'sanctions_func_lib.php'; //echo "\$ele_login=$ele_login<br />"; //echo "\$id_incident=$id_incident<br />"; $meme_sanction_pour_autres_protagonistes = ""; if (isset($ele_login)) { //echo "plop"; $texte_protagoniste_1 = "Sanction pour <b>" . get_nom_prenom_eleve($ele_login) . "</b><br />\n"; if (isset($id_incident) && !isset($id_sanction)) { $tab_protagonistes = get_protagonistes($id_incident, array('Responsable'), array('eleve')); if (count($tab_protagonistes) > 1) { //echo "plup"; $meme_sanction_pour_autres_protagonistes .= "Même " . $mod_disc_terme_sanction . " pour :<br />\n"; for ($loop = 0; $loop < count($tab_protagonistes); $loop++) { if ($tab_protagonistes[$loop] != $ele_login) { $meme_sanction_pour_autres_protagonistes .= "<input type='checkbox' name='autre_protagoniste_meme_sanction[]' id='autre_protagoniste_meme_sanction_{$loop}' value=\"{$tab_protagonistes[$loop]}\" /><label for='autre_protagoniste_meme_sanction_{$loop}'>" . get_nom_prenom_eleve($tab_protagonistes[$loop]) . "</label><br />\n"; } } $meme_sanction_pour_autres_protagonistes = $texte_protagoniste_1 . $meme_sanction_pour_autres_protagonistes; } } //elseif(isset($id_sanction)) { //} } $sql = "SELECT * FROM s_types_sanctions2 WHERE id_nature='{$valeur}';"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) == 0) { echo "<p style='color:red;'>Type de " . $mod_disc_terme_sanction . " inconnu.</p>\n"; } else { $lig = mysqli_fetch_object($res); $nature_sanction = $lig->nature;
if ($loop > 0) { $texte_mail .= ", "; } $texte_mail .= get_nom_prenom_eleve($tab_ajout[$loop]); } $texte_mail .= "\n\n"; } } if (count($suppr_eleves) > 0) { foreach ($suppr_eleves as $current_periode => $tab_suppr) { $texte_mail .= "Suppression d'élèves en période {$current_periode}:\n"; for ($loop = 0; $loop < count($tab_suppr); $loop++) { if ($loop > 0) { $texte_mail .= ", "; } $texte_mail .= get_nom_prenom_eleve($tab_suppr[$loop]); } $texte_mail .= "\n\n"; } } if (getSettingValue('url_racine_gepi') != "") { $texte_mail .= "Voir la liste des élèves de l'enseignement : " . getSettingValue('url_racine_gepi') . "/groupes/edit_eleves.php?id_groupe=" . $current_group["id"] . " \n(vous devez être connecté(e) dans GEPI avant de cliquer sur ce lien).\n"; } $gepiPrefixeSujetMail = getSettingValue("gepiPrefixeSujetMail") ? getSettingValue("gepiPrefixeSujetMail") : ""; if ($gepiPrefixeSujetMail != '') { $gepiPrefixeSujetMail .= " "; } $ajout_header = ""; $email_declarant = retourne_email($_SESSION['login']); if ($email_declarant != "" && check_mail($email_declarant)) { $ajout_header .= "Cc: {$nom_declarant} <" . $email_declarant . ">\r\n";
$sql = "SELECT DISTINCT sp.* FROM sp_saisies sp, j_eleves_groupes jeg WHERE created_by='" . $_SESSION['login'] . "' AND date_sp='{$date_sp}' AND jeg.login=sp.login AND jeg.id_groupe='{$id_groupe}';"; } else { $sql = "SELECT DISTINCT sp.* FROM sp_saisies sp, j_eleves_classes jec WHERE created_by='" . $_SESSION['login'] . "' AND date_sp='{$date_sp}' AND jec.login=sp.login AND jec.id_classe='{$id_classe}';"; } //echo "$sql<br />"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { while ($lig = mysqli_fetch_object($res)) { if (!in_array($lig->id, $tab_saisies_effectuees) && $lig->created_by == $_SESSION['login']) { $sql = "DELETE FROM sp_saisies WHERE id='" . $lig->id . "';"; //echo "$sql<br />"; $del = mysqli_query($GLOBALS["mysqli"], $sql); if ($del) { $nb_suppr++; } else { $msg .= "Erreur lors de la suppression de la saisie de type n°" . $lig->id_type . " (" . $tab_type_pointage_discipline['id_type'][$lig->id_type]['nom'] . ") pour " . get_nom_prenom_eleve($lig->login) . ".<br />"; } } } } if (count($tab_saisies_effectuees) > 0) { $msg .= count($tab_saisies_effectuees) . " saisie(s) effectuée(s) ou mise(s) à jour.<br />"; } if ($nb_suppr > 0) { $msg .= $nb_suppr . " saisie(s) supprimée(s).<br />"; } } $active_module_trombinoscopes = getSettingAOui('active_module_trombinoscopes'); $style_specifique[] = "lib/DHTMLcalendar/calendarstyle"; $javascript_specifique[] = "lib/DHTMLcalendar/calendar"; $javascript_specifique[] = "lib/DHTMLcalendar/lang/calendar-fr";
$nom_prenom_ele_prec = $tab_ele[$loop + 1]; } elseif ($tab_ele[$loop] == $login_eleve) { $login_ele_trouve++; } elseif ($login_ele_trouve == 1) { $login_ele_suiv = $tab_ele[$loop]; $nom_prenom_ele_suiv = $tab_ele[$loop + 1]; $login_ele_trouve++; } } } else { if (!isset($login_eleve)) { header("Location: ../accueil.php?msg=Elève non choisi"); die; } } $info_eleve = get_nom_prenom_eleve($login_eleve, "avec_classe"); $id_classe = get_id_classe_ele_d_apres_date($login_eleve, $ts_display_date); if ($id_classe == "") { $id_classe = get_id_classe_derniere_classe_ele($login_eleve); } //=================================================== //=================================================== if (isset($_GET['mode']) && $_GET['mode'] == "update_div_cdt" && isset($_GET['id_cours']) && isset($login_eleve)) { $class_notice_dev_fait = "color_fond_notices_t_fait"; $class_notice_dev_non_fait = ""; $CDTPeutPointerTravailFait = getSettingAOui('CDTPeutPointerTravailFait' . ucfirst($_SESSION['statut'])); if ($CDTPeutPointerTravailFait) { $tab_etat_travail_fait = get_tab_etat_travail_fait($login_eleve); echo js_cdt_modif_etat_travail(); } if (!preg_match("/^[0-9]{1,}\$/", $_GET['id_cours'])) {
$test=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test)==0) { $msg="La classe <b>".$_POST['classe_fut']."</b> n'existe pas.<br />"; $temoin="n"; } } if($temoin=="y") { $sql="UPDATE gc_eleves_options SET classe_future='".$_POST['classe_fut']."' WHERE login='******'login_ele']."' AND projet='$projet';"; //$msg=$sql; $res=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res) { $msg="ERREUR lors du changement de classe de ".get_nom_prenom_eleve($_POST['login_ele'])."<br />\n"; } else { $msg="Changement de classe de <b>".get_nom_prenom_eleve($_POST['login_ele'])."</b> vers <b>".$_POST['classe_fut']."</b> effectué.<br />\n"; } } } //**************** EN-TETE ***************** $titre_page = "Genèse classe: affichage de listes"; //echo "<div class='noprint'>\n"; require_once("../lib/header.inc.php"); //echo "</div>\n"; //**************** FIN EN-TETE ***************** //debug_var(); function mediane($tab_notes) { if(count($tab_notes)>0) {
} echo "</table>\n"; echo "</td>\n"; array_multisort($tab3, SORT_DESC, SORT_NUMERIC, $rg, SORT_ASC, SORT_NUMERIC); echo "<td>\n"; $alt = 1; echo "<table class='boireaus'>\n"; echo "<tr>\n"; echo "<th>Elève</th>\n"; echo "<th>Note</th>\n"; echo "</tr>\n"; for ($i = 0; $i < count($tab1); $i++) { $alt = $alt * -1; echo "<tr class='lig{$alt} white_hover'>\n"; echo "<td>\n"; echo get_nom_prenom_eleve($tab1[$rg[$i]]); echo "</td>\n"; echo "<td>\n"; if (isset($tab2[$i])) { echo $tab2[$rg[$i]]; } echo "</td>\n"; echo "</tr>\n"; } echo "</table>\n"; echo "</td>\n"; echo "</tr>\n"; echo "</table>\n"; if ($mode != "ajax") { /** * Pied de page
} } else { $texte .= $note; } $texte .= "."; $retour = log_modifs_acces_exceptionnel_saisie_cn_groupe_periode($id_groupe, $periode_num, $texte); } } $sql = "UPDATE cn_notes_devoirs SET comment='" . $comment . "', note='{$note}',statut='{$elev_statut}' WHERE (login='******' AND id_devoir='" . $id_devoir . "');"; //echo "$sql<br />"; $register = mysqli_query($GLOBALS["mysqli"], $sql); } else { $sql = "INSERT INTO cn_notes_devoirs SET login='******', id_devoir='" . $id_devoir . "',note='" . $note . "',statut='" . $elev_statut . "',comment='" . $comment . "';"; $register = mysqli_query($GLOBALS["mysqli"], $sql); if ($current_group["classe"]["ver_periode"][$id_classe][$periode_num] != "N") { $texte = "Saisie de note au devoir n°{$id_devoir} pour " . get_nom_prenom_eleve($reg_eleve_login, 'avec_classe') . " : "; if ($elev_statut != "") { if ($elev_statut == "v") { $texte .= "(vide)"; } else { $texte .= $elev_statut; } } else { $texte .= $note; } $texte .= ".\n"; $retour = log_modifs_acces_exceptionnel_saisie_cn_groupe_periode($id_groupe, $periode_num, $texte); } } } }
function affiche_onglets_aa($logineleve, $id_classe, $tab_periodes, $indice_onglet = 0) { $max_per = 0; echo "<style type='text/css'>\n.conteneur_t_onglet {\n\tfloat:left;\n\t/*border: 1px dashed red;*/\n}\n\n.t_onglet {\n\tfloat:left;\n\tmargin-bottom:-1px;\n\n\tborder-top: 1px solid black;\n\tborder-left: 1px solid black;\n\tborder-right: 1px solid black;\n\n\tborder-radius: 6px 20px 0px 0px;\n\t-moz-border-radius-topleft: 6px;\n\t-moz-border-radius-topright: 20px;\n\n\tpadding: 0.2em 0.2em 0 0.2em;\n\tmargin: 0.2em 0.2em 0 0.2em;\n\tz-index:100;\n}\n\n.t_onglet a {\n\ttext-decoration: none;\n\t/*\n\tOn ne force pas le fond... il est modifié par javascript pour faire ressortir l'onglet actif\n\tbackground-color: white;\n\t*/\n\tcolor: black;\n}\n\n.t_onglet_annee {\n\tfloat:left;\n\tmargin-left: 10px;\n\tmargin-right: 10px;\n\tmargin-bottom:-1px;\n\tborder-top: 1px solid black;\n\tborder-left: 1px solid black;\n\tborder-right: 1px solid black;\n\n\tcolor: black;\n\tbackground-color: white;\n\n\tpadding: 0.2em 0.2em 0 0.2em;\n\tmargin: 0.2em 0 0 2px;\n\tz-index:100;\n}\n\n.onglet {\n/*\n\tborder: 1px solid black;\n\tborder-top: 0px;\n\tborder-right: 0px;\n\tmargin-left: 4px;\n*/\n\t/*padding: 3px;*/\n\tcolor:black;\n\tfont-style: normal;\n\tfont-weight: normal;\n}\n</style>\n"; echo "<div id='div_annees_anterieures' class='infobulle_corps' style='position: absolute; top: 220px; right: 20px; width: 700px; text-align:center; color: black; padding: 0px; border:1px solid black; display:none;'>\n"; echo "<div class='infobulle_entete' style='color: #ffffff; cursor: move; width: 700px; font-weight: bold; padding: 0px;' onmousedown=\"dragStart(event, 'div_annees_anterieures')\">\n"; echo "<div style='color: #ffffff; cursor: move; font-weight: bold; float:right; width: 16px; margin-right: 1px;'>\n"; echo "<a href='#' onClick=\"cacher_div('div_annees_anterieures');return false;\">\n"; echo "<img src='../images/icons/close16.png' width='16' height='16' alt='Fermer' />\n"; echo "</a>\n"; echo "</div>\n"; echo "<div id='titre_entete_annees_anterieures'>AAA</div>\n"; echo "</div>\n"; echo "<div id='corps_annees_anterieures' class='infobulle_corps' style='color: #ffffff; cursor: auto; font-weight: bold; padding: 0px; height: 15em; width: 700px; overflow: auto;'>"; if (count($tab_periodes) == 0) { echo "<p>Aucune donnée archivée pour " . get_nom_prenom_eleve($logineleve) . ".</p>\n"; } else { $t_annee_prec = ""; for ($i = 0; $i < count($tab_periodes); $i++) { $tmp_tab = explode("|", $tab_periodes[$i]); $annee_courante = $tmp_tab[0]; $periode_courante = $tmp_tab[1]; if ($i == $indice_onglet) { $annee_choisie = $annee_courante; $periode_choisie = $periode_courante; } $annee_precedente = get_annee_precedente($annee_courante, $tab_periodes); $indice_annee_precedente = get_indice_annee_precedente($annee_courante, $tab_periodes); $annee_suivante = get_annee_suivante($annee_courante, $tab_periodes); $indice_annee_suivante = get_indice_annee_suivante($annee_courante, $tab_periodes); if ($periode_courante > $max_per) { $max_per = $periode_courante; } //echo "\$annee_courante=$annee_courante<br />"; if ($annee_courante != $t_annee_prec) { // On crée un nouvel onglet d'année if ($t_annee_prec != "") { echo "</div>\n"; } $t_annee_prec = $annee_courante; echo "\n\n<!-- Nouvelle annee anterieure -->\n"; echo "<div id='conteneur_t_annee_{$i}' class='conteneur_t_onglet'"; if ($i != $indice_onglet) { echo " style='display:none;'"; } echo ">\n"; echo "<div id='t_annee_{$i}' class='t_onglet_annee'>\n"; // AJOUTER Lien ANNEE PRECEDENTE if ($annee_precedente != "") { //echo "<a id='lien_annee_precedente' href='../mod_annees_anterieures/popup_annee_anterieure.php?id_classe=$id_classe&logineleve=$logineleve&annee_scolaire=$annee_precedente&num_periode=1&mode=bull_simp' onclick=\"document.getElementById('span_annee_courante').innerHTML='$annee_precedente'; affiche_onglet_aa('$logineleve','$id_classe','".$annee_precedente."','1','".$indice_annee_precedente."');return false;\"><img src='../images/icons/back.png' width='16' height='16' alt='Année suivante' /> </a>\n"; echo "<a id='lien_annee_precedente' href='../mod_annees_anterieures/popup_annee_anterieure.php?id_classe={$id_classe}&logineleve={$logineleve}&annee_scolaire={$annee_precedente}&num_periode=1&mode=bull_simp' onclick=\"affiche_onglet_aa('{$logineleve}','{$id_classe}','" . $annee_precedente . "','1','" . $indice_annee_precedente . "');return false;\"><img src='../images/icons/back.png' width='16' height='16' alt='Année suivante' /> </a>\n"; } //echo "<span id='span_annee_courante'>".$annee_courante."</span>"; echo $annee_courante; // AJOUTER Lien ANNEE SUIVANTE if ($annee_suivante != "") { //echo "<a id='lien_annee_suivante' href='../mod_annees_anterieures/popup_annee_anterieure.php?id_classe=$id_classe&logineleve=$logineleve&annee_scolaire=$annee_suivante&num_periode=1&mode=bull_simp' onclick=\"document.getElementById('span_annee_courante').innerHTML='$annee_suivante'; affiche_onglet_aa('$logineleve','$id_classe','".$annee_suivante."','1','".$indice_annee_suivante."');return false;\"> <img src='../images/icons/forward.png' width='16' height='16' alt='Année suivante' /></a>\n"; echo "<a id='lien_annee_suivante' href='../mod_annees_anterieures/popup_annee_anterieure.php?id_classe={$id_classe}&logineleve={$logineleve}&annee_scolaire={$annee_suivante}&num_periode=1&mode=bull_simp' onclick=\"affiche_onglet_aa('{$logineleve}','{$id_classe}','" . $annee_suivante . "','1','" . $indice_annee_suivante . "');return false;\"> <img src='../images/icons/forward.png' width='16' height='16' alt='Année suivante' /></a>\n"; } echo "</div>\n\n"; } // Ajout de l'onglet de période echo "<div id='t_periode_{$i}' class='t_onglet'"; if ($i != $indice_onglet) { echo " style='border-bottom-color: black;'"; } echo ">\n"; //echo "<a href='".$_SERVER['PHP_SELF']."?ele_login=$logineleve&onglet=$i' onclick=\"affiche_onglet('$i');return false;\">P$periode_courante</a>\n"; echo "<a href='../mod_annees_anterieures/popup_annee_anterieure.php?id_classe={$id_classe}&logineleve={$logineleve}&annee_scolaire={$annee_courante}&num_periode={$periode_courante}&mode=bull_simp' onclick=\"affiche_onglet_aa('{$logineleve}','{$id_classe}','{$annee_courante}','{$periode_courante}','{$i}');return false;\">P{$periode_courante}</a>\n"; echo "</div>\n"; } echo "</div>\n\n"; echo "<div style='clear:both;'></div>\n"; echo "<div id='contenu_onglet' class='onglet' style='"; echo "margin-left: 1px; margin-right: 1px; "; //echo "border: 1px dashed green;"; echo "'>\n"; echo "<h2>{$annee_choisie} - {$periode_choisie}</h2>\n"; echo "<p>Onglet n°{$indice_onglet}</p>\n"; // Récupérer/afficher les données de l'année/période pour cet élève // Non... on le fait via ajax_bulletins.php echo "</div>\n"; } echo "</div>\n"; echo "</div>\n"; echo "<script type='text/javascript'>\n\t// <![CDATA[\n\t//function affiche_annees_anterieures(login_eleve,id_classe) {\n\tfunction affiche_annees_anterieures(login_eleve,id_classe,annee_scolaire) {\n\t\tdocument.getElementById('titre_entete_annees_anterieures').innerHTML='Années antérieures de '+login_eleve;\n\n\t\tif(document.getElementById('conteneur_t_annee_0')) {\n\t\t\tfor(i=0;i<=" . count($tab_periodes) . ";i++) {\n\t\t\t\tif(document.getElementById('conteneur_t_annee_'+i)) {\n\t\t\t\t\tdocument.getElementById('conteneur_t_annee_'+i).style.display='none';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdocument.getElementById('conteneur_t_annee_0').style.display='';\n\t\t}\n\n\t\tfor(i=0;i<=" . count($tab_periodes) . ";i++) {\n\t\t\tif(document.getElementById('t_periode_'+i)) {\n\t\t\t\tdocument.getElementById('t_periode_'+i).style.backgroundColor='grey';\n\t\t\t}\n\t\t}\n\n\t\tif(document.getElementById('t_periode_0')) {\n\t\t\tdocument.getElementById('t_periode_0').style.backgroundColor='white';\n\t\t}\n\n\t\tnew Ajax.Updater(\$('contenu_onglet'),'../mod_annees_anterieures/ajax_bulletins.php?logineleve='+login_eleve+'&id_classe='+id_classe+'&annee_scolaire='+annee_scolaire,{method: 'get'});\n\t}\n\n\tfunction affiche_onglet_aa(logineleve,id_classe,annee_scolaire,num_periode,indice_onglet) {\n\t\tif(annee_scolaire!='') {\n\n\t\t\tif(document.getElementById('conteneur_t_annee_'+indice_onglet)) {\n\t\t\t\tfor(i=0;i<=" . count($tab_periodes) . ";i++) {\n\t\t\t\t\tif(document.getElementById('conteneur_t_annee_'+i)) {\n\t\t\t\t\t\tdocument.getElementById('conteneur_t_annee_'+i).style.display='none';\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tdocument.getElementById('conteneur_t_annee_'+indice_onglet).style.display='';\n\t\t\t}\n\n\t\t\tfor(i=0;i<=" . count($tab_periodes) . ";i++) {\n\t\t\t\tif(document.getElementById('t_periode_'+i)) {\n\t\t\t\t\tdocument.getElementById('t_periode_'+i).style.borderBottom='1 px solid black';\n\t\t\t\t\tdocument.getElementById('t_periode_'+i).style.backgroundColor='grey';\n\t\t\t\t}\n\t\t\t}\n\t\n\t\t\tif(document.getElementById('t_periode_'+indice_onglet)) {\n\t\t\t\tdocument.getElementById('t_periode_'+indice_onglet).style.borderBottom='0 px solid black';\n\t\t\t\t\tdocument.getElementById('t_periode_'+indice_onglet).style.backgroundColor='white';\n\t\t\t}\n\t\n\t\t\tif(document.getElementById('t_annee_'+indice_onglet)) {\n\t\t\t\tdocument.getElementById('t_annee_'+indice_onglet).style.borderBottom='0 px solid black';\n\t\t\t}\n\t\n\t\t\tnew Ajax.Updater(\$('contenu_onglet'),'../mod_annees_anterieures/ajax_bulletins.php?logineleve='+logineleve+'&id_classe='+id_classe+'&annee_scolaire='+annee_scolaire+'&num_periode='+num_periode,{method: 'get'});\n\t\t}\n\t}\n\n\t//]]>\n</script>\n"; }
$sql="SELECT DISTINCT n_anonymat FROM eb_copies WHERE id_epreuve='$id_epreuve';"; $test2=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test1)!=mysqli_num_rows($test2)) { echo "<p style='color:red;'>Les numéros anonymats ne sont pas uniques sur l'épreuve (<i>cela ne devrait pas arriver</i>).</p>\n"; require("../lib/footer.inc.php"); die(); } $sql="SELECT login_ele FROM eb_copies WHERE n_anonymat='' AND id_epreuve='$id_epreuve';"; $test3=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test3)>0) { echo "<p style='color:red;'>Un ou des numéros anonymats ne sont pas valides sur l'épreuve : "; $cpt=0; while($lig=mysqli_fetch_object($test3)) { if($cpt>0) {echo ", ";} echo get_nom_prenom_eleve($lig->login_ele); $cpt++; } echo "<br />Cela ne devrait pas arriver.<br />La saisie n'est pas possible.</p>\n"; require("../lib/footer.inc.php"); die(); } //======================================================== //======================================================== //echo "<p style='color:red;'>A FAIRE : Contrôler si certains élèves n'ont pas été affectés dans des salles.</p>\n"; $sql="SELECT 1=1 FROM eb_copies WHERE id_epreuve='$id_epreuve' AND id_salle='-1';"; //echo "$sql<br />"; $test=mysqli_query($GLOBALS["mysqli"], $sql); $nb_tmp=mysqli_num_rows($test);
$annee_suivante = $annee; } else { $jour_suivant = 1; $mois_suivant = 1; $annee_suivante = $annee + 1; } if ($mois > 1) { $jour_prec = 1; $mois_prec = $mois - 1; $annee_prec = $annee; } else { $jour_prec = 1; $mois_prec = 12; $annee_prec = $annee - 1; } echo "<div style='text-align:center;'>\n<h2>" . get_nom_prenom_eleve($login_ele, "avec_classe") . "</h2>\n<p>\n\t<a href='" . $_SERVER['PHP_SELF'] . "?login_ele={$login_ele}&annee={$annee_prec}&mois={$mois_prec}'>Préc.</a>\n\t- {$nom_mois} {$annee} -\n\t<a href='" . $_SERVER['PHP_SELF'] . "?login_ele={$login_ele}&annee={$annee_suivante}&mois={$mois_suivant}'>Suivant</a>\n</p>"; $ts_j1_mois_suiv = mktime(12, 0, 0, $mois_suivant, $jour_suivant, $annee_suivante); $num_jsem_suiv = strftime("%u", $ts_j1_mois_suiv); $ts_dim_suiv = $ts_j1_mois_suiv; if ($temoin_debug == 1) { echo "<p>Le {$jour_suivant}/{$mois_suivant}/{$annee_suivante} est un " . strftime("%A", $ts_j1_mois_suiv) . "</p>"; } if ($num_jsem_suiv != "1") { $ts_dim_suiv = $ts_j1_mois_suiv + (7 - $num_jsem_suiv) * 24 * 3600; if ($temoin_debug == 1) { echo "<p>Le premier dimanche suivant le mois {$mois} est le " . strftime("%A %d/%m/%Y", $ts_dim_suiv) . " ({$ts_dim_suiv})" . "</p>"; } } $tab_classe = get_clas_ele_telle_date($login_ele, $annee . "-" . $mois . "-" . $jour . " 00:00:00"); if (isset($tab_classe['id_classe'])) { $id_classe = $tab_classe['id_classe'];
function tableau_eleves_req($id_aff, $id_req) { global $projet; $id_clas_act = array(); $clas_fut = array(); $avec_lv1 = array(); $sans_lv1 = array(); $avec_lv2 = array(); $sans_lv2 = array(); $avec_lv3 = array(); $sans_lv3 = array(); $avec_autre = array(); $sans_autre = array(); $avec_profil = array(); $sans_profil = array(); // Pour utiliser des listes d'affichage //$requete_definie=isset($_POST['requete_definie']) ? $_POST['requete_definie'] : (isset($_GET['requete_definie']) ? $_GET['requete_definie'] : 'n'); //$id_aff=isset($_POST['id_aff']) ? $_POST['id_aff'] : (isset($_GET['id_aff']) ? $_GET['id_aff'] : NULL); //$id_req=isset($_POST['id_req']) ? $_POST['id_req'] : (isset($_GET['id_req']) ? $_GET['id_req'] : NULL); //if(($requete_definie=='y')&&(isset($id_aff))&&(isset($id_req))) { $sql = "SELECT * FROM gc_affichages WHERE projet='{$projet}' AND id_aff='{$id_aff}' AND id_req='{$id_req}' ORDER BY type;"; $res_tmp = mysqli_query($GLOBALS["mysqli"], $sql); while ($lig_tmp = mysqli_fetch_object($res_tmp)) { switch ($lig_tmp->type) { case 'id_clas_act': if (!in_array($lig_tmp->valeur, $id_clas_act)) { $id_clas_act[] = $lig_tmp->valeur; } break; case 'clas_fut': if (!in_array($lig_tmp->valeur, $clas_fut)) { $clas_fut[] = $lig_tmp->valeur; } break; case 'avec_lv1': if (!in_array($lig_tmp->valeur, $avec_lv1)) { $avec_lv1[] = $lig_tmp->valeur; } break; case 'avec_lv2': if (!in_array($lig_tmp->valeur, $avec_lv2)) { $avec_lv2[] = $lig_tmp->valeur; } break; case 'avec_lv3': if (!in_array($lig_tmp->valeur, $avec_lv3)) { $avec_lv3[] = $lig_tmp->valeur; } break; case 'avec_autre': if (!in_array($lig_tmp->valeur, $avec_autre)) { $avec_autre[] = $lig_tmp->valeur; } break; case 'avec_profil': if (!in_array($lig_tmp->valeur, $avec_profil)) { $avec_profil[] = $lig_tmp->valeur; } break; case 'sans_lv1': if (!in_array($lig_tmp->valeur, $sans_lv1)) { $sans_lv1[] = $lig_tmp->valeur; } break; case 'sans_lv2': if (!in_array($lig_tmp->valeur, $sans_lv2)) { $sans_lv2[] = $lig_tmp->valeur; } break; case 'sans_lv3': if (!in_array($lig_tmp->valeur, $sans_lv3)) { $sans_lv3[] = $lig_tmp->valeur; } break; case 'sans_autre': if (!in_array($lig_tmp->valeur, $sans_autre)) { $sans_autre[] = $lig_tmp->valeur; } break; case 'sans_profil': if (!in_array($lig_tmp->valeur, $sans_profil)) { $sans_profil[] = $lig_tmp->valeur; } break; } } //} //========================= // Début de la requête à forger pour ne retenir que les élèves souhaités $sql_ele = "SELECT DISTINCT login FROM gc_eleves_options WHERE projet='{$projet}' AND classe_future!='Dep' AND classe_future!='Red'"; $sql_ele_id_classe_act = ""; $sql_ele_classe_fut = ""; //========================= //$chaine_lien_modif_requete="projet=$projet"; $chaine_classes_actuelles = ""; if (count($id_clas_act) > 0) { for ($i = 0; $i < count($id_clas_act); $i++) { if ($i > 0) { $sql_ele_id_classe_act .= " OR "; } $sql_ele_id_classe_act .= "id_classe_actuelle='{$id_clas_act[$i]}'"; if ($i > 0) { $chaine_classes_actuelles .= ", "; } $chaine_classes_actuelles .= get_class_from_id($id_clas_act[$i]); //$chaine_lien_modif_requete.="&id_clas_act[$i]=".$id_clas_act[$i]; } $sql_ele .= " AND ({$sql_ele_id_classe_act})"; } $chaine_classes_futures = ""; if (count($clas_fut) > 0) { for ($i = 0; $i < count($clas_fut); $i++) { if ($i > 0) { $sql_ele_classe_fut .= " OR "; } $sql_ele_classe_fut .= "classe_future='{$clas_fut[$i]}'"; if ($i > 0) { $chaine_classes_futures .= ", "; } if ($clas_fut[$i] == '') { $chaine_classes_futures .= 'Non.aff'; } else { $chaine_classes_futures .= $clas_fut[$i]; } //$chaine_lien_modif_requete.="&clas_fut[$i]=".$clas_fut[$i]; } $sql_ele .= " AND ({$sql_ele_classe_fut})"; } $chaine_avec_opt = ""; for ($i = 0; $i < count($avec_lv1); $i++) { $sql_ele .= " AND liste_opt LIKE '%|{$avec_lv1[$i]}|%'"; if ($chaine_avec_opt != "") { $chaine_avec_opt .= ", "; } $chaine_avec_opt .= "<span style='color:green;'>" . $avec_lv1[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_lv1[$i]=".$avec_lv1[$i]; } for ($i = 0; $i < count($avec_lv2); $i++) { $sql_ele .= " AND liste_opt LIKE '%|{$avec_lv2[$i]}|%'"; if ($chaine_avec_opt != "") { $chaine_avec_opt .= ", "; } $chaine_avec_opt .= "<span style='color:green;'>" . $avec_lv2[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_lv2[$i]=".$avec_lv2[$i]; } for ($i = 0; $i < count($avec_lv3); $i++) { $sql_ele .= " AND liste_opt LIKE '%|{$avec_lv3[$i]}|%'"; if ($chaine_avec_opt != "") { $chaine_avec_opt .= ", "; } $chaine_avec_opt .= "<span style='color:green;'>" . $avec_lv3[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_lv3[$i]=".$avec_lv3[$i]; } for ($i = 0; $i < count($avec_autre); $i++) { $sql_ele .= " AND liste_opt LIKE '%|{$avec_autre[$i]}|%'"; if ($chaine_avec_opt != "") { $chaine_avec_opt .= ", "; } $chaine_avec_opt .= "<span style='color:green;'>" . $avec_autre[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_autre[$i]=".$avec_autre[$i]; } $chaine_sans_opt = ""; for ($i = 0; $i < count($sans_lv1); $i++) { $sql_ele .= " AND liste_opt NOT LIKE '%|{$sans_lv1[$i]}|%'"; if ($chaine_sans_opt != "") { $chaine_sans_opt .= ", "; } $chaine_sans_opt .= "<span style='color:red;'>" . $sans_lv1[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_lv1[$i]=".$sans_lv1[$i]; } for ($i = 0; $i < count($sans_lv2); $i++) { $sql_ele .= " AND liste_opt NOT LIKE '%|{$sans_lv2[$i]}|%'"; if ($chaine_sans_opt != "") { $chaine_sans_opt .= ", "; } $chaine_sans_opt .= "<span style='color:red;'>" . $sans_lv2[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_lv2[$i]=".$sans_lv2[$i]; } for ($i = 0; $i < count($sans_lv3); $i++) { $sql_ele .= " AND liste_opt NOT LIKE '%|{$sans_lv3[$i]}|%'"; if ($chaine_sans_opt != "") { $chaine_sans_opt .= ", "; } $chaine_sans_opt .= "<span style='color:red;'>" . $sans_lv3[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_lv3[$i]=".$sans_lv3[$i]; } for ($i = 0; $i < count($sans_autre); $i++) { $sql_ele .= " AND liste_opt NOT LIKE '%|{$sans_autre[$i]}|%'"; if ($chaine_sans_opt != "") { $chaine_sans_opt .= ", "; } $chaine_sans_opt .= "<span style='color:red;'>" . $sans_autre[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_autre[$i]=".$sans_autre[$i]; } $chaine_avec_profil = ""; if (count($avec_profil) > 0) { $sql_ele_profil = ""; for ($i = 0; $i < count($avec_profil); $i++) { if ($i > 0) { $sql_ele_profil .= " OR "; } $sql_ele_profil .= "profil='{$avec_profil[$i]}'"; if ($chaine_avec_profil != "") { $chaine_avec_profil .= ", "; } $chaine_avec_profil .= "<span style='color:red;'>" . $avec_profil[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_profil[$i]=".$avec_profil[$i]; } $sql_ele .= " AND ({$sql_ele_profil})"; } $chaine_sans_profil = ""; if (count($sans_profil) > 0) { $sql_ele_profil = ""; for ($i = 0; $i < count($sans_profil); $i++) { if ($i > 0) { $sql_ele_profil .= " AND "; } $sql_ele_profil .= "profil!='{$sans_profil[$i]}'"; if ($chaine_sans_profil != "") { $chaine_sans_profil .= ", "; } $chaine_sans_profil .= "<span style='color:red;'>" . $sans_profil[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_profil[$i]=".$sans_profil[$i]; } $sql_ele .= " AND ({$sql_ele_profil})"; } $retour = ""; $tab_retour = array(); //$tab_ele=array(); $sql_ele .= ";"; //echo "$sql_ele<br />\n"; $cpt = 0; $res_ele = mysqli_query($GLOBALS["mysqli"], $sql_ele); while ($lig_ele = mysqli_fetch_object($res_ele)) { //$tab_ele[]=$lig_ele->login; //$retour.=get_nom_prenom_eleve($lig_ele->login,'avec_classe')."<br />"; $tab_retour[] = get_nom_prenom_eleve($lig_ele->login, 'avec_classe') . "<br />"; $cpt++; } sort($tab_retour); for ($i = 0; $i < count($tab_retour); $i++) { $retour .= $tab_retour[$i]; } return $retour; }
} else { for ($loop = 0; $loop < count($change_inscription_eleves_periodes); $loop++) { $sql = "SELECT login FROM j_eleves_groupes WHERE id_groupe='{$lig_grp_inscr->id_groupe}' AND periode='" . $change_inscription_eleves_periodes[$loop] . "';"; $res_ele_inscr = mysqli_query($GLOBALS["mysqli"], $sql); while ($lig_ele_inscr = mysqli_fetch_object($res_ele_inscr)) { if (!test_before_eleve_removal($lig_ele_inscr->login, $lig_grp_inscr->id_groupe, $change_inscription_eleves_periodes[$loop])) { $msg .= "<br />" . get_nom_prenom_eleve($lig_ele_inscr->login) . " a un bulletin non vide en période " . $change_inscription_eleves_periodes[$loop]; } elseif (nb_notes_ele_dans_tel_enseignement($lig_ele_inscr->login, $lig_grp_inscr->id_groupe, $change_inscription_eleves_periodes[$loop]) > 0) { $msg .= "<br />" . get_nom_prenom_eleve($lig_ele_inscr->login) . " a un bulletin non vide en période " . $change_inscription_eleves_periodes[$loop]; } else { $sql = "DELETE FROM j_eleves_groupes WHERE login='******' AND id_groupe='{$lig_grp_inscr->id_groupe}' AND periode='" . $change_inscription_eleves_periodes[$loop] . "';"; $del = mysqli_query($GLOBALS["mysqli"], $sql); if ($del) { $nb_reg_ok++; } else { $msg .= "<br />ERREUR lors de la désinscription de " . get_nom_prenom_eleve($lig_ele_inscr->login) . " du groupe n°" . $lig_grp_inscr->id_groupe . " en période " . $change_inscription_eleves_periodes[$loop]; } } } } } } } /* $_POST['change_coef2']= y $_POST['coef_enseignements2']= 3 $_POST['matiere_modif_coef']= MATHS $_POST['modif_enseignement_visibilite2']= bulletins|y */ if (isset($_POST['change_coef2']) && isset($_POST['coef_enseignements2']) && $_POST['coef_enseignements2'] != "" && is_numeric($_POST['coef_enseignements2']) && isset($_POST['matiere_modif_coef']) && $_POST['matiere_modif_coef'] != "") { $modif_enseignement_visibilite2 = isset($_POST['modif_enseignement_visibilite2']) ? $_POST['modif_enseignement_visibilite2'] : "";
$k = '0'; while ($k < $nombreligne) { $pb = 'no'; $login_eleve = old_mysql_result($call_eleves, $k, 'login'); $id_eleve = old_mysql_result($call_eleves, $k, 'id_eleve'); if (isset($_POST['ajout_eleve_' . $id_eleve])) { $i = 1; while ($i < $nb_periode) { $tab_per_ajout_eleve = $_POST['ajout_eleve_' . $id_eleve]; if (isset($tab_per_ajout_eleve[$i])) { // Contrôler que l'élève n'est pas déjà dans une autre classe $sql = "SELECT id_classe FROM j_eleves_classes WHERE\n\t\t\t\t\t(login = '******' and\n\t\t\t\t\tid_classe!='{$id_classe}' and\n\t\t\t\t\tperiode = '{$i}')"; $test_clas_per = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test_clas_per) > 0) { $lig_clas_per = mysqli_fetch_object($test_clas_per); $msg_complement .= get_nom_prenom_eleve($login_eleve) . " est déjà dans une autre classe : " . get_class_from_id($lig_clas_per->id_classe) . " en période {$i}<br />\n"; $reg_ok = 'no'; } else { $sql = "SELECT login FROM j_eleves_classes WHERE\n\t\t\t\t\t\t(login = '******' and\n\t\t\t\t\t\tid_classe = '{$id_classe}' and\n\t\t\t\t\t\tperiode = '{$i}')"; $res_clas_per = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_clas_per) == 0) { $sql = "INSERT INTO j_eleves_classes VALUES('{$login_eleve}', '{$id_classe}', {$i}, '0');"; $reg_data = mysqli_query($GLOBALS["mysqli"], $sql); if (!$reg_data) { $reg_ok = 'no'; } else { // Ménage: $sql = "SELECT id FROM infos_actions WHERE titre LIKE 'Ajout dans une classe % effectuer pour %({$login_eleve})';"; $res_actions = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_actions) > 0) { while ($lig_action = mysqli_fetch_object($res_actions)) {
$nb_eleves=mysqli_num_rows($res_ele); $cpt=0; while($lig_ele=mysqli_fetch_object($res_ele)) { $alt=$alt*(-1); echo "<tr class='lig$alt'>\n"; if($cpt==0) { $liste_profs=""; foreach($current_group["profs"]["list"] as $key => $prof_login) { if($liste_profs!="") {$liste_profs.=", ";} $liste_profs.=civ_nom_prenom($prof_login); } echo "<td valign='top' rowspan='$nb_eleves'>".$current_group['name']."<br /><span style='font-size:small;'>(".$current_group["description"]." en ".$current_group["classlist_string"].")</span><br /><span style='font-size:small;'>".$liste_profs."</span></td>\n"; } echo "<td>".get_nom_prenom_eleve($lig_ele->login)."<input type='hidden' name='enregistrement[$compteur]' value='".$lig_ele->login."|".$lig_ele->id_groupe."|".$lig_ele->periode."' /></td>\n"; echo "<td>$lig_ele->periode</td>\n"; echo "<td>"; echo "<div style='border: 1px solid black; margin: 2px;'>\n"; echo "<b>Appréciation enregistrée :</b> "; //echo nl2br($lig_ele->old_app); $sql="SELECT * FROM matieres_appreciations WHERE periode='$lig_ele->periode' AND id_groupe='$lig_ele->id_groupe' AND login='******';"; $res_old_app=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_old_app)>0) { $lig_old=mysqli_fetch_object($res_old_app); echo nl2br($lig_old->appreciation); } else { echo "<span style='color:red'>Aucune appréciation n'a été enregistrée avant la proposition de correction.</span>\n"; } echo "</div>\n";
echo "</p> <p style='color:red'>Vous n'avez pas accès à la saisie d'".$mod_disc_terme_avertissement_fin_periode.".</p>"; require("../lib/footer.inc.php"); die(); } // Le login élève est choisi. if(isset($login_ele)) { $tab_classes_ele=get_class_periode_from_ele_login($login_ele); echo " | <a href='".$_SERVER['PHP_SELF']."'>Choisir une autre classe</a>"; echo "</p> <p class='bold'>Saisie d'".$mod_disc_terme_avertissement_fin_periode." pour ".get_nom_prenom_eleve($login_ele)."</p> <p style='margin-left:4em; text-indent:-2em;'>Choix de la période :<br />"; foreach($tab_classes_ele['periode'] as $current_num_per => $current_tab_classe) { $id_classe=$current_tab_classe['id_classe']; include("../lib/periodes.inc.php"); if($ver_periode[$current_num_per]!="O") { echo "<a href='".$_SERVER['PHP_SELF']."?login_ele=$login_ele&id_classe=".$current_tab_classe['id_classe']."&periode=$current_num_per'>".$current_tab_classe['classe']." : ".$nom_periode[$current_num_per]."</a><br />"; } else { echo $current_tab_classe['classe']." : ".$nom_periode[$current_num_per]." (<em style='color:".$couleur_verrouillage_periode['O']."'>période close</em>)<br />"; } }
else { echo " <p>".mysqli_num_rows($res_ele_sans_flux)." élève(s) n'a(ont) pas leur flux RSS initialisé.</p> <table class='boireaus'> <tr> <th><a href=\"javascript:ToutCocher();changement();\"><img src='../images/enabled.png' width='15' height='15' alt='Tout cocher' /></a> / <a href=\"javascript:ToutDecocher();changement();\"><img src='../images/disabled.png' width='15' height='15' alt='Tout décocher' /></a></th> <th>Élève</th> </tr>"; $cpt=0; $alt=1; while($lig_ele_sans_flux=mysqli_fetch_object($res_ele_sans_flux)) { $alt=$alt*(-1); echo " <tr class='lig$alt white_hover'> <td><input type='checkbox' name='rss_ele_a_initialiser[]' id='rss_ele_a_initialiser_$cpt' value='$lig_ele_sans_flux->login' /></td> <td><label for='rss_ele_a_initialiser_$cpt'>".get_nom_prenom_eleve($lig_ele_sans_flux->login, 'avec_classe')."</label></td> </tr>"; $cpt++; } echo " </table> <script type='text/javascript'> function ToutCocher(i) { for (var ki=0;ki<$cpt;ki++) { if(document.getElementById('rss_ele_a_initialiser_'+ki)){ document.getElementById('rss_ele_a_initialiser_'+ki).checked = true; } } }