1
|
<?php
|
2
|
/*
|
3
|
* $Id: saisie_avis2.php 4878 2010-07-24 13:54:01Z regis $
|
4
|
*
|
5
|
* Copyright 2001, 2005 Thomas Belliard, Laurent Delineau, Edouard Hue, Eric Lebrun
|
6
|
*
|
7
|
* This file is part of GEPI.
|
8
|
*
|
9
|
* GEPI is free software; you can redistribute it and/or modify
|
10
|
* it under the terms of the GNU General Public License as published by
|
11
|
* the Free Software Foundation; either version 2 of the License, or
|
12
|
* (at your option) any later version.
|
13
|
*
|
14
|
* GEPI is distributed in the hope that it will be useful,
|
15
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
* GNU General Public License for more details.
|
18
|
*
|
19
|
* You should have received a copy of the GNU General Public License
|
20
|
* along with GEPI; if not, write to the Free Software
|
21
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
22
|
*/
|
23
|
|
24
|
// On indique qu'il faut creer des variables non prot?g?es (voir fonction cree_variables_non_protegees())
|
25
|
$variables_non_protegees = 'yes';
|
26
|
|
27
|
// Initialisations files
|
28
|
require_once("../lib/initialisations.inc.php");
|
29
|
|
30
|
$gepiYear = getSettingValue("gepiYear");
|
31
|
|
32
|
// Resume session
|
33
|
$resultat_session = $session_gepi->security_check();
|
34
|
if ($resultat_session == 'c') {
|
35
|
header("Location: ../utilisateurs/mon_compte.php?change_mdp=yes");
|
36
|
die();
|
37
|
} else if ($resultat_session == '0') {
|
38
|
header("Location: ../logout.php?auto=1");
|
39
|
die();
|
40
|
}
|
41
|
|
42
|
include "../lib/bulletin_simple.inc.php";
|
43
|
if (!checkAccess()) {
|
44
|
header("Location: ../logout.php?auto=1");
|
45
|
die();
|
46
|
}
|
47
|
|
48
|
// On teste si un professeur peut saisir les avis
|
49
|
if (($_SESSION['statut'] == 'professeur') and getSettingValue("GepiRubConseilProf")!='yes') {
|
50
|
die("Droits insuffisants pour effectuer cette op?ration");
|
51
|
}
|
52
|
|
53
|
// On teste si le service scolarit? peut saisir les avis
|
54
|
if (($_SESSION['statut'] == 'scolarite') and getSettingValue("GepiRubConseilScol")!='yes') {
|
55
|
die("Droits insuffisants pour effectuer cette op?ration");
|
56
|
}
|
57
|
|
58
|
// initialisation
|
59
|
$id_classe = isset($_POST["id_classe"]) ? $_POST["id_classe"] :(isset($_GET["id_classe"]) ? $_GET["id_classe"] :NULL);
|
60
|
$periode_num = isset($_POST["periode_num"]) ? $_POST["periode_num"] :(isset($_GET["periode_num"]) ? $_GET["periode_num"] :NULL);
|
61
|
$fiche = isset($_POST["fiche"]) ? $_POST["fiche"] :(isset($_GET["fiche"]) ? $_GET["fiche"] :NULL);
|
62
|
$current_eleve_login = isset($_POST["current_eleve_login"]) ? $_POST["current_eleve_login"] :(isset($_GET["current_eleve_login"]) ? $_GET["current_eleve_login"] :NULL);
|
63
|
$ind_eleve_login_suiv = isset($_POST["ind_eleve_login_suiv"]) ? $_POST["ind_eleve_login_suiv"] :(isset($_GET["ind_eleve_login_suiv"]) ? $_GET["ind_eleve_login_suiv"] :NULL);
|
64
|
$current_eleve_login_ap = isset($NON_PROTECT["current_eleve_login_ap"]) ? traitement_magic_quotes(corriger_caracteres($NON_PROTECT["current_eleve_login_ap"])) :NULL;
|
65
|
// **** AJOUT POUR LES MENTIONS ****
|
66
|
$current_eleve_login_me = $_POST["current_eleve_mention"];
|
67
|
// **** FIN D'AJOUT POUR LES MENTIONS ****
|
68
|
//================================
|
69
|
// AJOUT: boireaus 20070713
|
70
|
//$current_eleve_login_ap=nl2br($current_eleve_login_ap);
|
71
|
//================================
|
72
|
$affiche_message = isset($_GET["affiche_message"]) ? $_GET["affiche_message"] :NULL;
|
73
|
|
74
|
include "../lib/periodes.inc.php";
|
75
|
|
76
|
//*******************************************************************************************************
|
77
|
$msg = '';
|
78
|
if (isset($_POST['is_posted'])) {
|
79
|
if (($periode_num < $nb_periode) and ($periode_num > 0) and ($ver_periode[$periode_num] != "O")) {
|
80
|
$reg = 'yes';
|
81
|
// si l'utilisateur n'a pas le statut scolarit?, on v?rifie qu'il est prof principal de l'?l?ve
|
82
|
if (($_SESSION['statut'] != 'scolarite') and ($_SESSION['statut'] != 'secours')) {
|
83
|
$test_prof_suivi = sql_query1("select professeur from j_eleves_professeurs
|
84
|
where login = '$current_eleve_login' and
|
85
|
professeur = '".$_SESSION['login']."' and
|
86
|
id_classe = '".$id_classe."'
|
87
|
");
|
88
|
if ($test_prof_suivi == '-1') {
|
89
|
$msg = "Vous n'?tes pas professeur de suivi de cet ?l?ve.";
|
90
|
$reg = 'no';
|
91
|
}
|
92
|
}
|
93
|
if ($reg == 'yes') {
|
94
|
// REMPLACEMENT DE "SELECT * FROM..." par "SELECT avis FROM..." dans la ligne suivante
|
95
|
$test_eleve_avis_query = mysql_query("SELECT avis FROM avis_conseil_classe WHERE (login='$current_eleve_login' AND periode='$periode_num')");
|
96
|
// **** AJOUT POUR LES MENTIONS ****
|
97
|
$test_eleve_mention_query = mysql_query("SELECT mention FROM avis_conseil_classe WHERE (login='$current_eleve_login' AND periode='$periode_num')");
|
98
|
// **** FIN D'AJOUT POUR LES MENTIONS ****
|
99
|
$testA = mysql_num_rows($test_eleve_avis_query);
|
100
|
if ($testA != "0") {
|
101
|
$registerA = mysql_query("UPDATE avis_conseil_classe SET avis='$current_eleve_login_ap',statut='' WHERE (login='$current_eleve_login' AND periode='$periode_num')");
|
102
|
} else {
|
103
|
$registerA = mysql_query("INSERT INTO avis_conseil_classe SET login='$current_eleve_login',periode='$periode_num',avis='$current_eleve_login_ap',statut=''");
|
104
|
}
|
105
|
// **** AJOUT POUR LES MENTIONS ****
|
106
|
$testM = mysql_num_rows($test_eleve_mention_query);
|
107
|
if ($testM != "0") {
|
108
|
$registerM = mysql_query("UPDATE avis_conseil_classe SET mention='$current_eleve_login_me',statut='' WHERE (login='$current_eleve_login' AND periode='$periode_num')");
|
109
|
} else {
|
110
|
$registerM = mysql_query("INSERT INTO avis_conseil_classe SET login='$current_eleve_login',periode='$periode_num',mention='$current_eleve_login_me',statut=''");
|
111
|
}
|
112
|
// **** FIN D'AJOUT POUR LES MENTIONS
|
113
|
|
114
|
if ((!$registerA)||(!$registerM)) {
|
115
|
$msg = "Erreur lors de l'enregistrement des donn?es.";
|
116
|
} else {
|
117
|
$affiche_message = 'yes'; }
|
118
|
}
|
119
|
} else {
|
120
|
$msg = "La p?riode sur laquelle vous voulez enregistrer est verrouill?e";
|
121
|
}
|
122
|
if (isset($_POST['ok1'])) {
|
123
|
if (($_SESSION['statut'] == 'scolarite') or ($_SESSION['statut'] == 'secours')) {
|
124
|
$appel_donnees_eleves = mysql_query("SELECT DISTINCT e.* FROM eleves e, j_eleves_classes c
|
125
|
WHERE (
|
126
|
c.id_classe='$id_classe' AND
|
127
|
c.login = e.login AND
|
128
|
c.periode = '".$periode_num."'
|
129
|
|
130
|
) ORDER BY nom,prenom");
|
131
|
} else {
|
132
|
$appel_donnees_eleves = mysql_query("SELECT DISTINCT e.* FROM eleves e, j_eleves_classes c, j_eleves_professeurs p
|
133
|
WHERE (c.id_classe='$id_classe' AND
|
134
|
c.login = e.login AND
|
135
|
p.login = c.login AND
|
136
|
p.professeur = '".$_SESSION['login']."' AND
|
137
|
c.periode = '".$periode_num."'
|
138
|
) ORDER BY nom,prenom");
|
139
|
}
|
140
|
$nb_eleve = mysql_num_rows($appel_donnees_eleves);
|
141
|
$current_eleve_login = @mysql_result($appel_donnees_eleves, $ind_eleve_login_suiv, "login");
|
142
|
$ind_eleve_login_suiv++;
|
143
|
if ($ind_eleve_login_suiv >= $nb_eleve) $ind_eleve_login_suiv = 0;
|
144
|
//header("Location: saisie_avis2.php?periode_num=$periode_num&id_classe=$id_classe&current_eleve_login=$current_eleve_login&ind_eleve_login_suiv=$ind_eleve_login_suiv&fiche=y&msg=$msg&affiche_message=$affiche_message#app");
|
145
|
header("Location: saisie_avis2.php?periode_num=$periode_num&id_classe=$id_classe¤t_eleve_login=$current_eleve_login&ind_eleve_login_suiv=$ind_eleve_login_suiv&fiche=y&msg=$msg&affiche_message=$affiche_message#app");
|
146
|
}
|
147
|
}
|
148
|
//*******************************************************************************************************
|
149
|
$message_enregistrement = "Les modifications ont ?t? enregistr?es !";
|
150
|
$themessage = 'Des appr?ciations ont ?t? modifi?es. Voulez-vous vraiment quitter sans enregistrer ?';
|
151
|
//**************** EN-TETE *****************
|
152
|
$titre_page = "Saisie des avis | Saisie";
|
153
|
require_once("../lib/header.inc");
|
154
|
//**************** FIN EN-TETE *****************
|
155
|
|
156
|
//debug_var();
|
157
|
|
158
|
?>
|
159
|
<script type="text/javascript" language="javascript">
|
160
|
change = 'no';
|
161
|
|
162
|
</script>
|
163
|
<?php
|
164
|
|
165
|
// Premi?re ?tape : la classe est d?finie, on definit la p?riode
|
166
|
if (isset($id_classe) and (!isset($periode_num))) {
|
167
|
$classe_suivi = sql_query1("SELECT nom_complet FROM classes WHERE id = '".$id_classe."'");
|
168
|
echo "<p class=bold><a href=\"saisie_avis.php\"><img src='../images/icons/back.png' alt='Retour' class='back_link' /> Mes classes</a></p>\n";
|
169
|
echo "<p><b>".$classe_suivi.", choisissez la p?riode : </b></p>\n";
|
170
|
include "../lib/periodes.inc.php";
|
171
|
$i="1";
|
172
|
echo "<ul>\n";
|
173
|
while ($i < $nb_periode) {
|
174
|
if ($ver_periode[$i] != "O") {
|
175
|
echo "<li><a href='saisie_avis2.php?id_classe=".$id_classe."&periode_num=".$i."'>".ucfirst($nom_periode[$i])."</a></li>\n";
|
176
|
} else {
|
177
|
echo "<li>".ucfirst($nom_periode[$i])." (".$gepiClosedPeriodLabel.", ?dition impossible).</li>\n";
|
178
|
}
|
179
|
$i++;
|
180
|
}
|
181
|
echo "</ul>\n";
|
182
|
}
|
183
|
|
184
|
// Deuxi?me ?tape : la classe est d?finie, la p?riode est d?finie, on affiche la liste des ?l?ves
|
185
|
if (isset($id_classe) and (isset($periode_num)) and (!isset($fiche))) {
|
186
|
$classe_suivi = sql_query1("SELECT nom_complet FROM classes WHERE id = '".$id_classe."'");
|
187
|
?>
|
188
|
|
189
|
<form enctype="multipart/form-data" action="saisie_avis2.php" name="form1" method='post'>
|
190
|
|
191
|
<p class=bold><a href="saisie_avis2.php?id_classe=<?php echo $id_classe; ?>"><img src='../images/icons/back.png' alt='Retour' class='back_link' /> Choisir une autre p?riode</a>
|
192
|
|
193
|
<?php
|
194
|
|
195
|
echo "<input type='hidden' name='periode_num' value='$periode_num' />\n";
|
196
|
|
197
|
// Ajout lien classe pr?c?dente / classe suivante
|
198
|
if($_SESSION['statut']=='scolarite'){
|
199
|
$sql = "SELECT DISTINCT c.id,c.classe FROM classes c, periodes p, j_scol_classes jsc WHERE p.id_classe = c.id AND jsc.id_classe=c.id AND jsc.login='".$_SESSION['login']."' ORDER BY classe";
|
200
|
}
|
201
|
elseif($_SESSION['statut']=='professeur'){
|
202
|
|
203
|
// On a filtr? plus haut les profs qui n'ont pas getSettingValue("GepiRubConseilProf")=='yes'
|
204
|
$sql="SELECT DISTINCT c.id,c.classe FROM classes c,
|
205
|
j_eleves_classes jec,
|
206
|
j_eleves_professeurs jep
|
207
|
WHERE jec.id_classe=c.id AND
|
208
|
jep.login=jec.login AND
|
209
|
jep.professeur='".$_SESSION['login']."'
|
210
|
ORDER BY c.classe;";
|
211
|
}
|
212
|
elseif($_SESSION['statut']=='cpe'){
|
213
|
// On ne devrait pas arriver ici en CPE...
|
214
|
// Il n'y a pas de droit de saisie des avis du conseil.
|
215
|
$sql="SELECT DISTINCT c.id,c.classe FROM classes c, periodes p, j_eleves_classes jec, j_eleves_cpe jecpe WHERE
|
216
|
p.id_classe = c.id AND
|
217
|
jec.id_classe=c.id AND
|
218
|
jec.periode=p.num_periode AND
|
219
|
jecpe.e_login=jec.login AND
|
220
|
jecpe.cpe_login='".$_SESSION['login']."'
|
221
|
ORDER BY classe";
|
222
|
}
|
223
|
elseif($_SESSION['statut'] == 'autre'){
|
224
|
// On recherche toutes les classes pour ce statut qui n'est accessible que si l'admin a donn? les bons droits
|
225
|
$sql="SELECT DISTINCT c.* FROM classes c, periodes p WHERE p.id_classe = c.id ORDER BY classe";
|
226
|
}
|
227
|
elseif($_SESSION['statut'] == 'secours'){
|
228
|
$sql="SELECT DISTINCT c.* FROM classes c, periodes p WHERE p.id_classe = c.id ORDER BY classe";
|
229
|
}
|
230
|
|
231
|
$chaine_options_classes="";
|
232
|
|
233
|
$cpt_classe=0;
|
234
|
$num_classe=-1;
|
235
|
|
236
|
$res_class_tmp=mysql_query($sql);
|
237
|
$nb_classes_suivies=mysql_num_rows($res_class_tmp);
|
238
|
if($nb_classes_suivies>0){
|
239
|
$id_class_prec=0;
|
240
|
$id_class_suiv=0;
|
241
|
$temoin_tmp=0;
|
242
|
while($lig_class_tmp=mysql_fetch_object($res_class_tmp)){
|
243
|
if($lig_class_tmp->id==$id_classe){
|
244
|
// Index de la classe dans les <option>
|
245
|
$num_classe=$cpt_classe;
|
246
|
|
247
|
$chaine_options_classes.="<option value='$lig_class_tmp->id' selected='true'>$lig_class_tmp->classe</option>\n";
|
248
|
$temoin_tmp=1;
|
249
|
if($lig_class_tmp=mysql_fetch_object($res_class_tmp)){
|
250
|
$chaine_options_classes.="<option value='$lig_class_tmp->id'>$lig_class_tmp->classe</option>\n";
|
251
|
$id_class_suiv=$lig_class_tmp->id;
|
252
|
}
|
253
|
else{
|
254
|
$id_class_suiv=0;
|
255
|
}
|
256
|
}
|
257
|
else {
|
258
|
$chaine_options_classes.="<option value='$lig_class_tmp->id'>$lig_class_tmp->classe</option>\n";
|
259
|
}
|
260
|
if($temoin_tmp==0){
|
261
|
$id_class_prec=$lig_class_tmp->id;
|
262
|
}
|
263
|
|
264
|
$cpt_classe++;
|
265
|
|
266
|
}
|
267
|
}
|
268
|
|
269
|
// =================================
|
270
|
if(isset($id_class_prec)){
|
271
|
if($id_class_prec!=0){echo " | <a href='".$_SERVER['PHP_SELF']."?id_classe=$id_class_prec&periode_num=$periode_num' onclick=\"return confirm_abandon (this, change, '$themessage')\">Classe pr?c?dente</a>";}
|
272
|
}
|
273
|
|
274
|
if(($chaine_options_classes!="")&&($nb_classes_suivies>1)) {
|
275
|
|
276
|
echo "<script type='text/javascript'>
|
277
|
// Initialisation
|
278
|
change='no';
|
279
|
|
280
|
function confirm_changement_classe(thechange, themessage)
|
281
|
{
|
282
|
if (!(thechange)) thechange='no';
|
283
|
if (thechange != 'yes') {
|
284
|
document.form1.submit();
|
285
|
}
|
286
|
else{
|
287
|
var is_confirmed = confirm(themessage);
|
288
|
if(is_confirmed){
|
289
|
document.form1.submit();
|
290
|
}
|
291
|
else{
|
292
|
document.getElementById('id_classe').selectedIndex=$num_classe;
|
293
|
}
|
294
|
}
|
295
|
}
|
296
|
</script>\n";
|
297
|
|
298
|
//echo " | <select name='id_classe' onchange=\"document.forms['form1'].submit();\">\n";
|
299
|
echo " | <select name='id_classe' id='id_classe' onchange=\"confirm_changement_classe(change, '$themessage');\">\n";
|
300
|
echo $chaine_options_classes;
|
301
|
echo "</select>\n";
|
302
|
}
|
303
|
|
304
|
if(isset($id_class_suiv)){
|
305
|
if($id_class_suiv!=0){echo " | <a href='".$_SERVER['PHP_SELF']."?id_classe=$id_class_suiv&periode_num=$periode_num' onclick=\"return confirm_abandon (this, change, '$themessage')\">Classe suivante</a>";}
|
306
|
}
|
307
|
//fin ajout lien classe pr?c?dente / classe suivante
|
308
|
echo "</p>\n";
|
309
|
|
310
|
echo "</form>\n";
|
311
|
|
312
|
?>
|
313
|
|
314
|
<p class='grand'>Classe : <?php echo $classe_suivi; ?></p>
|
315
|
|
316
|
<p>Cliquez sur le nom de l'?l?ve pour lequel vous voulez entrer ou modifier l'appr?ciation.</p>
|
317
|
<table class='boireaus' border="1" cellspacing="2" cellpadding="5" width="100%" summary="Choix de l'?l?ve">
|
318
|
<tr>
|
319
|
<th width="20%"><b>Nom Pr?nom</b></th>
|
320
|
<th width="60%"><b><?php echo ucfirst($nom_periode[$periode_num]) ; ?> : avis du conseil de classe</b></th> <!-- AJOUT 60 % POUR LES MENTIONS --!>
|
321
|
<th><b>Mention</b></th> <!-- AJOUT POUR LES MENTIONS --!>
|
322
|
</tr>
|
323
|
<?php
|
324
|
if (($_SESSION['statut'] == 'scolarite') or ($_SESSION['statut'] == 'secours')) {
|
325
|
$sql="SELECT DISTINCT e.* FROM eleves e, j_eleves_classes c
|
326
|
WHERE (c.id_classe='$id_classe' AND
|
327
|
c.login = e.login AND
|
328
|
c.periode = '".$periode_num."'
|
329
|
) ORDER BY nom,prenom";
|
330
|
} else {
|
331
|
$sql="SELECT DISTINCT e.* FROM eleves e, j_eleves_classes c, j_eleves_professeurs p
|
332
|
WHERE (c.id_classe='$id_classe' AND
|
333
|
c.login = e.login AND
|
334
|
p.login = c.login AND
|
335
|
p.professeur = '".$_SESSION['login']."' AND
|
336
|
c.periode = '".$periode_num."'
|
337
|
) ORDER BY nom,prenom";
|
338
|
}
|
339
|
//echo "<tr><td colspan='2'>$sql</td></tr>";
|
340
|
$appel_donnees_eleves = mysql_query($sql);
|
341
|
$nombre_lignes = mysql_num_rows($appel_donnees_eleves);
|
342
|
$i = "0";
|
343
|
$alt=1;
|
344
|
while($i < $nombre_lignes) {
|
345
|
$current_eleve_login = mysql_result($appel_donnees_eleves, $i, "login");
|
346
|
$ind_eleve_login_suiv = 0;
|
347
|
if ($i < $nombre_lignes-1) $ind_eleve_login_suiv = $i+1;
|
348
|
$current_eleve_nom = mysql_result($appel_donnees_eleves, $i, "nom");
|
349
|
$current_eleve_prenom = mysql_result($appel_donnees_eleves, $i, "prenom");
|
350
|
$current_eleve_avis_query = mysql_query("SELECT avis FROM avis_conseil_classe WHERE (login='$current_eleve_login' AND periode='$periode_num')");
|
351
|
$current_eleve_avis = @mysql_result($current_eleve_avis_query, 0, "avis");
|
352
|
// ***** AJOUT POUR LES MENTIONS *****
|
353
|
$current_eleve_mention_query = mysql_query("SELECT mention FROM avis_conseil_classe WHERE (login='$current_eleve_login' AND periode='$periode_num')");
|
354
|
$current_eleve_mention = @mysql_result($current_eleve_mention_query, 0, "mention");
|
355
|
// ***** FIN DE L'AJOUT POUR LES MENTIONS *****
|
356
|
|
357
|
$alt=$alt*(-1);
|
358
|
echo "<tr class='lig$alt'>\n";
|
359
|
echo "<td>\n<a href = 'saisie_avis2.php?periode_num=$periode_num&id_classe=$id_classe&fiche=y&current_eleve_login=$current_eleve_login&ind_eleve_login_suiv=$ind_eleve_login_suiv#app'>$current_eleve_nom $current_eleve_prenom</a></td>\n";
|
360
|
echo "<td><span class=\"medium\">$current_eleve_avis </span></td>\n";
|
361
|
// *** AJOUT POUR LES MENTIONS (ATTENTION : la ligne ci-dessus a du coup ?t? mise en commentaire) ****
|
362
|
// echo "<td><span class=\"medium\">$current_eleve_mention </span></td>\n";
|
363
|
if($current_eleve_mention=='F') echo "<td><span class=\"medium\">F?licitations</span></td>\n";
|
364
|
elseif($current_eleve_mention=='M') echo "<td><span class=\"medium\">Mention honorable</span></td>\n";
|
365
|
elseif($current_eleve_mention=='E') echo "<td><span class=\"medium\">Encouragements</span></td>\n";
|
366
|
else echo "<td><span class=\"medium\">-</span></td>\n";
|
367
|
// *** FIN D'AJOUT POUR LES MENTIONS ****
|
368
|
echo "</tr>\n";
|
369
|
$i++;
|
370
|
}
|
371
|
echo "</table>\n";
|
372
|
|
373
|
$sql="SELECT * FROM synthese_app_classe WHERE (id_classe='$id_classe' AND periode='$periode_num');";
|
374
|
$res_current_synthese=mysql_query($sql);
|
375
|
$current_synthese= @mysql_result($res_current_synthese, 0, "synthese");
|
376
|
if ($current_synthese=='') {$current_synthese='-';}
|
377
|
|
378
|
echo "<p><b>Synth?se des avis sur le groupe classe :</b></p>\n";
|
379
|
echo "<table class='boireaus' border='1' cellspacing='2' cellpadding='5' width='100%' summary='Synthese'>";
|
380
|
$alt=$alt*(-1);
|
381
|
echo "<tr class='lig$alt'>\n";
|
382
|
echo "<td width='20%'>\n<a href='saisie_synthese_app_classe.php?num_periode=$periode_num&id_classe=$id_classe#synthese'>Saisir la synth?se</a></td>\n";
|
383
|
echo "<td><p class=\"medium\">".nl2br($current_synthese)."</p></td>\n";
|
384
|
echo "</tr>\n";
|
385
|
echo "</table>\n";
|
386
|
|
387
|
}
|
388
|
|
389
|
|
390
|
if (isset($fiche)) {
|
391
|
|
392
|
echo "<p><a href='".$_SERVER['PHP_SELF']."?id_classe=$id_classe&periode_num=$periode_num' onclick=\"return confirm_abandon (this, change, '$themessage')\"><img src='../images/icons/back.png' alt='Retour' class='back_link' /> Retour</a></p>\n";
|
393
|
|
394
|
// On teste la pr?sence d'au moins un coeff pour afficher la colonne des coef
|
395
|
$test_coef = mysql_num_rows(mysql_query("SELECT coef FROM j_groupes_classes WHERE (id_classe='".$id_classe."' and coef > 0)"));
|
396
|
|
397
|
// On remonte $affiche_categories au-dessus de include "../lib/calcul_rang.inc.php"; sans quoi il se produit des erreurs.
|
398
|
$affiche_categories = sql_query1("SELECT display_mat_cat FROM classes WHERE id='".$id_classe."'");
|
399
|
if ($affiche_categories == "y") { $affiche_categories = true; } else { $affiche_categories = false;}
|
400
|
|
401
|
// on teste si le rang doit ?tre affich?
|
402
|
$affiche_rang = sql_query1("SELECT display_rang FROM classes WHERE id='".$id_classe."'");
|
403
|
|
404
|
// Ajout: boireaus (sans cela le rang total n'est pas affich?.)
|
405
|
if ($affiche_rang == 'y'){
|
406
|
//include "../lib/calcul_rang.inc.php";}
|
407
|
|
408
|
$periode_courante=$periode_num;
|
409
|
$periode_num=1;
|
410
|
while ($periode_num <= $periode_courante) {
|
411
|
include "../lib/calcul_rang.inc.php";
|
412
|
$periode_num++;
|
413
|
}
|
414
|
$periode_num=$periode_courante;
|
415
|
}
|
416
|
|
417
|
// Variable temporaire utilis?e pour conserver le nombre de coef sup?rieurs ? z?ro parce que test_coef et r?affect? dans calcul_moy_gen.inc.php
|
418
|
$nb_coef_superieurs_a_zero=$test_coef;
|
419
|
|
420
|
//=====================================
|
421
|
// Ajout pour faire apparaitre la moyenne g?n?rale
|
422
|
//if($test_coef>0) {
|
423
|
// On ne restreint plus ici: il faut lancer calcul_moy_gen pour extraire les moyennes m?mes si on n'afficha pas les moyennes g?n?rales.
|
424
|
|
425
|
// Mise en r?serve de variables modifi?es dans le calcul de moyennes g?n?rales
|
426
|
$periode_num_reserve=$periode_num;
|
427
|
$current_eleve_login_reserve=$current_eleve_login;
|
428
|
|
429
|
// On r?initialise $current_eleve_login qui est modifi? dans le calcul de moyennes g?n?rales
|
430
|
unset($current_eleve_login);
|
431
|
|
432
|
$display_moy_gen="y";
|
433
|
$coefficients_a_1="n";
|
434
|
$affiche_graph="n";
|
435
|
|
436
|
// unset($tab_moy_gen);
|
437
|
//unset($tab_moy_cat_classe);
|
438
|
for($loop=1;$loop<=$periode_num_reserve;$loop++) {
|
439
|
$periode_num=$loop;
|
440
|
include "../lib/calcul_moy_gen.inc.php";
|
441
|
// $tab_moy_gen[$loop]=$moy_generale_classe;
|
442
|
|
443
|
|
444
|
//==============================================
|
445
|
//==============================================
|
446
|
//==============================================
|
447
|
$tab_moy['periodes'][$periode_num]=array();
|
448
|
$tab_moy['periodes'][$periode_num]['tab_login_indice']=$tab_login_indice; // [$login_eleve]
|
449
|
$tab_moy['periodes'][$periode_num]['moy_gen_eleve']=$moy_gen_eleve; // [$i]
|
450
|
$tab_moy['periodes'][$periode_num]['moy_gen_eleve1']=$moy_gen_eleve1; // [$i]
|
451
|
//$tab_moy['periodes'][$periode_num]['moy_gen_classe1']=$moy_gen_classe1; // [$i]
|
452
|
$tab_moy['periodes'][$periode_num]['moy_generale_classe']=$moy_generale_classe;
|
453
|
$tab_moy['periodes'][$periode_num]['moy_generale_classe1']=$moy_generale_classe1;
|
454
|
$tab_moy['periodes'][$periode_num]['moy_max_classe']=$moy_max_classe;
|
455
|
$tab_moy['periodes'][$periode_num]['moy_min_classe']=$moy_min_classe;
|
456
|
|
457
|
// Il faudrait r?cup?rer/stocker les cat?gories?
|
458
|
$tab_moy['periodes'][$periode_num]['moy_cat_eleve']=$moy_cat_eleve; // [$i][$cat]
|
459
|
$tab_moy['periodes'][$periode_num]['moy_cat_classe']=$moy_cat_classe; // [$i][$cat]
|
460
|
$tab_moy['periodes'][$periode_num]['moy_cat_min']=$moy_cat_min; // [$i][$cat]
|
461
|
$tab_moy['periodes'][$periode_num]['moy_cat_max']=$moy_cat_max; // [$i][$cat]
|
462
|
|
463
|
$tab_moy['periodes'][$periode_num]['quartile1_classe_gen']=$quartile1_classe_gen;
|
464
|
$tab_moy['periodes'][$periode_num]['quartile2_classe_gen']=$quartile2_classe_gen;
|
465
|
$tab_moy['periodes'][$periode_num]['quartile3_classe_gen']=$quartile3_classe_gen;
|
466
|
$tab_moy['periodes'][$periode_num]['quartile4_classe_gen']=$quartile4_classe_gen;
|
467
|
$tab_moy['periodes'][$periode_num]['quartile5_classe_gen']=$quartile5_classe_gen;
|
468
|
$tab_moy['periodes'][$periode_num]['quartile6_classe_gen']=$quartile6_classe_gen;
|
469
|
$tab_moy['periodes'][$periode_num]['place_eleve_classe']=$place_eleve_classe;
|
470
|
|
471
|
$tab_moy['periodes'][$periode_num]['current_eleve_login']=$current_eleve_login; // [$i]
|
472
|
//$tab_moy['periodes'][$periode_num]['current_group']=$current_group;
|
473
|
//if($loop==$periode1) {
|
474
|
if($loop==1) {
|
475
|
$tab_moy['current_group']=$current_group; // [$j]
|
476
|
}
|
477
|
$tab_moy['periodes'][$periode_num]['current_eleve_note']=$current_eleve_note; // [$j][$i]
|
478
|
$tab_moy['periodes'][$periode_num]['current_eleve_statut']=$current_eleve_statut; // [$j][$i]
|
479
|
//$tab_moy['periodes'][$periode_num]['current_group']=$current_group;
|
480
|
$tab_moy['periodes'][$periode_num]['current_coef']=$current_coef; // [$j]
|
481
|
$tab_moy['periodes'][$periode_num]['current_classe_matiere_moyenne']=$current_classe_matiere_moyenne; // [$j]
|
482
|
|
483
|
$tab_moy['periodes'][$periode_num]['current_coef_eleve']=$current_coef_eleve; // [$i][$j] ATTENTION
|
484
|
$tab_moy['periodes'][$periode_num]['moy_min_classe_grp']=$moy_min_classe_grp; // [$j]
|
485
|
$tab_moy['periodes'][$periode_num]['moy_max_classe_grp']=$moy_max_classe_grp; // [$j]
|
486
|
if(isset($current_eleve_rang)) {
|
487
|
// $current_eleve_rang n'est pas renseign? si $affiche_rang='n'
|
488
|
$tab_moy['periodes'][$periode_num]['current_eleve_rang']=$current_eleve_rang; // [$j][$i]
|
489
|
}
|
490
|
$tab_moy['periodes'][$periode_num]['quartile1_grp']=$quartile1_grp; // [$j]
|
491
|
$tab_moy['periodes'][$periode_num]['quartile2_grp']=$quartile2_grp; // [$j]
|
492
|
$tab_moy['periodes'][$periode_num]['quartile3_grp']=$quartile3_grp; // [$j]
|
493
|
$tab_moy['periodes'][$periode_num]['quartile4_grp']=$quartile4_grp; // [$j]
|
494
|
$tab_moy['periodes'][$periode_num]['quartile5_grp']=$quartile5_grp; // [$j]
|
495
|
$tab_moy['periodes'][$periode_num]['quartile6_grp']=$quartile6_grp; // [$j]
|
496
|
$tab_moy['periodes'][$periode_num]['place_eleve_grp']=$place_eleve_grp; // [$j][$i]
|
497
|
|
498
|
$tab_moy['periodes'][$periode_num]['current_group_effectif_avec_note']=$current_group_effectif_avec_note; // [$j]
|
499
|
|
500
|
//==============================================
|
501
|
//==============================================
|
502
|
//==============================================
|
503
|
|
504
|
|
505
|
//echo "\$id_classe=$id_classe<br />\n";
|
506
|
//echo "\$periode_num=$periode_num<br />\n";
|
507
|
//echo "\$moy_generale_classe=$moy_generale_classe<br />\n";
|
508
|
//echo "\$tab_moy_gen[$loop]=$tab_moy_gen[$loop]<br />\n";
|
509
|
//$tab_moy_cat_classe
|
510
|
}
|
511
|
|
512
|
// R?tablissement des variables apr?s calcul des moyennes g?n?rales
|
513
|
$periode_num=$periode_num_reserve;
|
514
|
$current_eleve_login=$current_eleve_login_reserve;
|
515
|
//}
|
516
|
|
517
|
$test_coef=$nb_coef_superieurs_a_zero;
|
518
|
|
519
|
//echo "\$test_coef=$test_coef<br />";
|
520
|
//=====================================
|
521
|
|
522
|
//bulletin($current_eleve_login,'',0,1,$periode_num,$nom_periode,$gepiYear,$id_classe,$affiche_rang,$test_coef,$affiche_categories);
|
523
|
bulletin($tab_moy,$current_eleve_login,'',0,1,$periode_num,$nom_periode,$gepiYear,$id_classe,$affiche_rang,$test_coef,$affiche_categories);
|
524
|
$current_eleve_avis_query = mysql_query("SELECT * FROM avis_conseil_classe WHERE (login='$current_eleve_login' AND periode='$periode_num')");
|
525
|
$current_eleve_avis = @mysql_result($current_eleve_avis_query, 0, "avis");
|
526
|
// ***** AJOUT POUR LES MENTIONS *****
|
527
|
$current_eleve_mention = @mysql_result($current_eleve_avis_query, 0, "mention");
|
528
|
// ***** FIN DE L'AJOUT POUR LES MENTIONS *****
|
529
|
|
530
|
echo "<form enctype=\"multipart/form-data\" action=\"saisie_avis2.php\" method=\"post\">\n";
|
531
|
echo "<table border='0' summary=\"El?ve $current_eleve_login\">\n";
|
532
|
echo "<tr>\n";
|
533
|
echo "<td>\n";
|
534
|
echo "<a name=\"app\"></a><textarea name='no_anti_inject_current_eleve_login_ap' id='no_anti_inject_current_eleve_login_ap' rows='5' cols='80' class='wrap' onchange=\"changement()\">";
|
535
|
echo "$current_eleve_avis";
|
536
|
echo "</textarea><br/>\n"; // AJOUT <br/> POUR LES MENTIONS
|
537
|
|
538
|
// ***** AJOUT POUR LES MENTIONS *****
|
539
|
echo "Mention : ";
|
540
|
if($current_eleve_mention=='F')
|
541
|
{ echo "<select name='current_eleve_mention'>";
|
542
|
echo "<option value='B'> </option>";
|
543
|
echo "<option value='E'>Encouragements</option>";
|
544
|
echo "<option value='M'>Mention honorable</option>";
|
545
|
echo "<option value='F' selected>F?licitations</option>";
|
546
|
}
|
547
|
else if($current_eleve_mention=='M')
|
548
|
{ echo "<select name='current_eleve_mention'>";
|
549
|
echo "<option value='B'> </option>";
|
550
|
echo "<option value='E'>Encouragements</option>";
|
551
|
echo "<option value='M' selected>Mention honorable</option>";
|
552
|
echo "<option value='F'>F?licitations</option>";
|
553
|
}
|
554
|
else if($current_eleve_mention=='E')
|
555
|
{ echo "<select name='current_eleve_mention'>";
|
556
|
echo "<option value='B'> </option>";
|
557
|
echo "<option value='E' selected>Encouragements</option>";
|
558
|
echo "<option value='M'>Mention honorable</option>";
|
559
|
echo "<option value='F'>F?licitations</option>";
|
560
|
}
|
561
|
else
|
562
|
{ echo "<select name='current_eleve_mention'>";
|
563
|
echo "<option value='B' selected> </option>";
|
564
|
echo "<option value='E'>Encouragements</option>";
|
565
|
echo "<option value='M'>Mention honorable</option>";
|
566
|
echo "<option value='F'>F?licitations</option>";
|
567
|
}
|
568
|
// **** FIN D'AJOUT POUR LES MENTIONS ****
|
569
|
|
570
|
echo "</td>\n";
|
571
|
|
572
|
|
573
|
//==========================
|
574
|
// AJOUT boireaus 20071115
|
575
|
$sql="SELECT elenoet, nom, prenom FROM eleves WHERE login='$current_eleve_login';";
|
576
|
$res_ele=mysql_query($sql);
|
577
|
$lig_ele=mysql_fetch_object($res_ele);
|
578
|
$current_eleve_elenoet=$lig_ele->elenoet;
|
579
|
$current_eleve_nom=$lig_ele->nom;
|
580
|
$current_eleve_prenom=$lig_ele->prenom;
|
581
|
|
582
|
// Photo...
|
583
|
$photo=nom_photo($current_eleve_elenoet);
|
584
|
$temoin_photo="";
|
585
|
//if("$photo"!=""){
|
586
|
if($photo){
|
587
|
$titre="$current_eleve_nom $current_eleve_prenom";
|
588
|
|
589
|
$texte="<div align='center'>\n";
|
590
|
//$texte.="<img src='../photos/eleves/".$photo."' width='150' alt=\"$current_eleve_nom $current_eleve_prenom\" title=\"$current_eleve_nom $current_eleve_prenom\" />";
|
591
|
$texte.="<img src='".$photo."' width='150' alt=\"$current_eleve_nom $current_eleve_prenom\" title=\"$current_eleve_nom $current_eleve_prenom\" />";
|
592
|
$texte.="<br />\n";
|
593
|
$texte.="</div>\n";
|
594
|
|
595
|
$temoin_photo="y";
|
596
|
|
597
|
$tabdiv_infobulle[]=creer_div_infobulle('photo_'.$current_eleve_login,$titre,"",$texte,"",14,0,'y','y','n','n');
|
598
|
|
599
|
echo "<td valign='top'>\n";
|
600
|
//echo " <a href='#' onmouseover=\"afficher_div('photo_$current_eleve_login','y',-100,20);\"";
|
601
|
echo " <a href='#' onmouseover=\"delais_afficher_div('photo_$current_eleve_login','y',-100,20,1000,10,10);\"";
|
602
|
echo ">";
|
603
|
echo "<img src='../images/icons/buddy.png' alt='$current_eleve_nom $current_eleve_prenom' />";
|
604
|
echo "</a>";
|
605
|
echo "</td>\n";
|
606
|
}
|
607
|
//==========================
|
608
|
|
609
|
|
610
|
//============================
|
611
|
// Pour permettre la saisie de commentaires-type, renseigner la variable $commentaires_types dans /lib/global.inc
|
612
|
// Et r?cup?rer le paquet commentaires_types sur... ADRESSE A DEFINIR:
|
613
|
//if((file_exists('saisie_commentaires_types.php'))&&($commentaires_types=='y')){
|
614
|
if((file_exists('saisie_commentaires_types.php'))
|
615
|
&&(($_SESSION['statut'] == 'professeur')&&(getSettingValue("GepiRubConseilProf")=='yes')&&(getSettingValue('CommentairesTypesPP')=='yes'))
|
616
|
||(($_SESSION['statut'] == 'scolarite')&&(getSettingValue("GepiRubConseilScol")=='yes')&&(getSettingValue('CommentairesTypesScol')=='yes'))) {
|
617
|
//include('saisie_commentaires_types.php');
|
618
|
echo "<td align='center'>\n";
|
619
|
include('saisie_commentaires_types2.php');
|
620
|
echo "</td>\n";
|
621
|
}
|
622
|
//============================
|
623
|
echo "</tr>\n";
|
624
|
echo "</table>\n";
|
625
|
?>
|
626
|
|
627
|
<input type=hidden name=id_classe value=<?php echo "$id_classe";?> />
|
628
|
<input type=hidden name=is_posted value="yes" />
|
629
|
<input type=hidden name=periode_num value="<?php echo "$periode_num";?>" />
|
630
|
<input type=hidden name=current_eleve_login value="<?php echo "$current_eleve_login";?>" />
|
631
|
<input type=hidden name=ind_eleve_login_suiv value="<?php echo "$ind_eleve_login_suiv";?>" />
|
632
|
<!--br /-->
|
633
|
<input type="submit" NAME="ok1" value="Enregistrer et passer ? l'?l?ve suivant" />
|
634
|
<input type="submit" NAME="ok2" value="Enregistrer et revenir ? la liste" /><br /><br />
|
635
|
|
636
|
<div id="debug_fixe" style="position: fixed; bottom: 20%; right: 5%;"></div>
|
637
|
|
638
|
</form>
|
639
|
<?php
|
640
|
echo "<script type='text/javascript'>
|
641
|
if(document.getElementById('no_anti_inject_current_eleve_login_ap')) {
|
642
|
//alert('1')
|
643
|
setTimeout(\"document.getElementById('no_anti_inject_current_eleve_login_ap').focus()\",500);
|
644
|
}
|
645
|
</script>\n";
|
646
|
|
647
|
}
|
648
|
|
649
|
//**********************************************************************************************************
|
650
|
require("../lib/footer.inc.php");
|
651
|
?>
|