echo "<span style='color:green'>OK</span>"; } else { echo "<span style='color:red'>ECHEC</span>"; } echo "</p>\n"; // Il y aura des rangs à recalculer $affiche_categories = true; $test_coef = mysqli_num_rows(mysqli_query($GLOBALS["mysqli"], "SELECT coef FROM j_groupes_classes WHERE (id_classe='" . $id_classe . "' and coef > 0)")); include "../lib/calcul_rang.inc.php"; $periode_num = $temp_periode_num; } echo "<p><br /></p>\n"; // CPE à modifier? // Prof principal à modifier? $ancre_login_eleve = my_ereg_replace("[^A-Za-z0-9_]", "", $login_eleve); $gepi_prof_suivi = ucfirst(retourne_denomination_pp($id_future_classe)); echo "<p>N'oubliez pas de contrôler/corriger les associations CPE et " . $gepi_prof_suivi . " pour cet élève: <a href='classes_const.php?id_classe={$id_future_classe}#{$ancre_login_eleve}'>{$classe_future}</a></p>\n"; // Ménage: $sql = "SELECT id FROM infos_actions WHERE titre LIKE 'Changement de classe %({$login_eleve})';"; $res_actions = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_actions) > 0) { while ($lig_action = mysqli_fetch_object($res_actions)) { $menage = del_info_action($lig_action->id); if (!$menage) { $msg .= "Erreur lors de la suppression de l'action en attente en page d'accueil à propos de {$login_eleve}<br />"; } } } } } echo "<p><br /></p>\n";
if ($_SESSION['statut'] != 'administrateur' && $_SESSION['statut'] != 'scolarite' && $_SESSION['statut'] != "professeur") { echo "<p style='color:red;'>Accès non autorisé.</p>"; die; } if ($_SESSION['statut'] == "professeur") { if (getSettingValue('GepiAccesRestrAccesAppProfP') != "yes") { $msg = "Accès interdit au paramétrage des accès aux appréciations/avis pour les parents et élèves."; header("Location: ../accueil.php?msg=" . rawurlencode($msg)); die; } $id_classe = isset($_GET['id_classe']) ? $_GET['id_classe'] : NULL; // A REVOIR : Si !isset($id_classe) $sql = "SELECT 1=1 FROM j_eleves_professeurs jep, j_eleves_classes jec\n\t\t\t\t\tWHERE jep.professeur='" . $_SESSION['login'] . "' AND\n\t\t\t\t\t\tjep.login=jec.login AND\n\t\t\t\t\t\tjec.id_classe='{$id_classe}';"; $test = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test) == 0) { $gepi_prof_suivi = retourne_denomination_pp($id_classe); $msg = "Vous n'êtes pas " . $gepi_prof_suivi . " de la classe choisie.<br />Vous ne devriez donc pas accéder à cette page."; header("Location: ../accueil.php?msg=" . rawurlencode($msg)); die; } } elseif ($_SESSION['statut'] == 'scolarite') { $id_classe = isset($_GET['id_classe']) ? $_GET['id_classe'] : NULL; // A REVOIR : Si !isset($id_classe) $sql = "SELECT 1=1 FROM j_scol_classes jsc\n\t\t\t\t\t\tWHERE jsc.login='******'login'] . "' AND\n\t\t\t\t\t\t\tjsc.id_classe='{$id_classe}';"; $test = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test) == 0) { $msg = "Vous n'êtes pas responsable de la classe choisie.<br />Vous ne devriez donc pas accéder à cette page."; header("Location: ../accueil.php?msg=" . rawurlencode($msg)); die; } }
$suhosin_post_max_totalname_length = ini_get('suhosin.post.max_totalname_length'); if ($suhosin_post_max_totalname_length != '') { $classes_ajout_sans_regime = "y"; } $sql = "SELECT classe FROM classes WHERE id = '{$id_classe}';"; $call_classe = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($call_classe) == 0) { echo "La classe n°{$id_classe} (id_classe) n'existe pas.<br />\n"; die; } $classe = old_mysql_result($call_classe, "0", "classe"); include "../lib/periodes.inc.php"; if (isset($is_posted) and $is_posted == 1) { check_token(); //$gepiProfSuivi=getSettingValue("gepi_prof_suivi"); $gepiProfSuivi = ucfirst(retourne_denomination_pp($id_classe)); $call_eleves = mysqli_query($GLOBALS["mysqli"], "SELECT login, id_eleve FROM eleves ORDER BY nom, prenom;"); $nombreligne = mysqli_num_rows($call_eleves); /* $_POST['regime_1442']= d/p $_POST['ajout_eleve_1442']= Array (*) $_POST[ajout_eleve_1442]['1']= yes $_POST['regime_1441']= d/p $_POST['doublant_eleve_1441']= R */ $reg_data = 'yes'; $tab_ele_sans_cpe_defini = array(); $tab_ele_sans_pp_defini = array(); $k = '0'; while ($k < $nombreligne) { $pb = 'no';
$mes_groupes = get_groups_for_prof($_SESSION['login'], NULL, array('classes', 'periodes', 'visibilite')); $tmp_mes_classes = array(); $tmp_mes_classes_pp = array(); foreach ($mes_groupes as $tmp_group) { foreach ($tmp_group["classes"]["classes"] as $key_id_classe => $value_tab_classe) { if (!in_array($value_tab_classe['classe'], $tmp_mes_classes)) { $tmp_mes_classes[$key_id_classe] = $value_tab_classe['classe']; $tmp_mes_classes_pp[$key_id_classe] = ""; $sql = "SELECT DISTINCT u.nom,u.prenom,u.civilite FROM utilisateurs u, j_eleves_classes jec, j_eleves_professeurs jep WHERE u.login=jep.professeur AND jep.login=jec.login AND jec.id_classe='{$key_id_classe}' ORDER BY u.nom,u.prenom;"; $res = mysqli_query($mysqli, $sql); if ($res->num_rows > 0) { while ($lig = $res->fetch_object()) { if ($tmp_mes_classes_pp[$key_id_classe] != '') { $tmp_mes_classes_pp[$key_id_classe] .= ", "; } $tmp_mes_classes_pp[$key_id_classe] .= "<span title=\"{$lig->civilite} {$lig->nom} {$lig->prenom} : " . retourne_denomination_pp($key_id_classe) . " de la " . $value_tab_classe['classe'] . "\">" . $lig->nom . " " . mb_substr($lig->prenom, 0, 1) . "</span>"; } } $res->close(); } } } // Pour permettre d'utiliser le module EdT avec les autres modules $groupe_abs = $groupe_text = ''; if (getSettingValue("autorise_edt_tous") == "y") { // Actuellement, ce professeur à ce cours (id_cours): $cours_actu = retourneCours($_SESSION["login"]); // Qui correspond à cet id_groupe : if ($cours_actu != "non") { $sqlG = "SELECT id_groupe, id_aid FROM edt_cours WHERE id_cours = '" . $cours_actu . "'"; $queryG = mysqli_query($mysqli, $sqlG);
function bull_exb($tab_ele, $i) { global $gepi_prof_suivi, $RneEtablissement, $gepiSchoolName, $gepiSchoolAdress1, $gepiSchoolAdress2, $gepiSchoolZipCode, $gepiSchoolCity, $gepiSchoolPays, $gepiSchoolTel, $gepiSchoolFax, $gepiSchoolEmail, $gepiYear, $logo_etab, $bull_intitule_app, $bull_formule_bas, $un_seul_bull_par_famille, $compteur_bulletins, $date_bulletin, $tab_modele_pdf, $use_cell_ajustee, $pdf; //= = = == = = == = = == = = == = = == = = == = = == = = == = = == = = == // Préparation des lignes d'adresse //echo "\$i=$i et \$nb_bulletins=$nb_bulletins<br />"; // Initialisation: for ($loop = 0; $loop <= 1; $loop++) { $tab_adr_ligne1[$loop] = ""; $tab_adr_ligne2[$loop] = ""; $tab_adr_ligne3[$loop] = ""; $tab_adr_ligne4[$loop] = ""; $tab_adr_ligne5[$loop] = ""; $tab_adr_ligne6[$loop] = ""; } // ON N'UTILISE PAS LE CHAMP adr4 DE L'ADRESSE DANS resp_adr // IL FAUDRA VOIR COMMENT LE RECUPERER if (!isset($tab_ele['resp'][0])) { //$tab_adr_ligne1[0]="<font color='red'><b>ADRESSE MANQUANTE</b></font>"; $tab_adr_ligne1[0] = "ADRESSE MANQUANTE"; $tab_adr_ligne2[0] = ""; $tab_adr_ligne3[0] = ""; $tab_adr_ligne4[0] = ""; $tab_adr_ligne5[0] = ""; // Initialisation parce qu'on a des blagues s'il n'y a pas de resp: $nb_bulletins = 1; } else { if (isset($tab_ele['resp'][1])) { if (isset($tab_ele['resp'][1]['adr1']) && isset($tab_ele['resp'][1]['adr2']) && isset($tab_ele['resp'][1]['adr3']) && isset($tab_ele['resp'][1]['adr4']) && isset($tab_ele['resp'][1]['cp']) && isset($tab_ele['resp'][1]['commune'])) { // Le deuxième responsable existe et est renseigné if ($tab_ele['resp'][0]['adr_id'] == $tab_ele['resp'][1]['adr_id'] or $tab_ele['resp'][0]['adr1'] == $tab_ele['resp'][1]['adr1'] && $tab_ele['resp'][0]['adr2'] == $tab_ele['resp'][1]['adr2'] && $tab_ele['resp'][0]['adr3'] == $tab_ele['resp'][1]['adr3'] && $tab_ele['resp'][0]['adr4'] == $tab_ele['resp'][1]['adr4'] && $tab_ele['resp'][0]['cp'] == $tab_ele['resp'][1]['cp'] && $tab_ele['resp'][0]['commune'] == $tab_ele['resp'][1]['commune']) { // Les adresses sont identiques $nb_bulletins = 1; if ($tab_ele['resp'][0]['nom'] != $tab_ele['resp'][1]['nom'] && $tab_ele['resp'][1]['nom'] != "") { // Les noms des responsables sont différents $tab_adr_ligne1[0] = $tab_ele['resp'][0]['civilite'] . " " . $tab_ele['resp'][0]['nom'] . " " . $tab_ele['resp'][0]['prenom'] . " et " . $tab_ele['resp'][1]['civilite'] . " " . $tab_ele['resp'][1]['nom'] . " " . $tab_ele['resp'][1]['prenom']; /* $tab_adr_ligne1[0]=$tab_ele['resp'][0]['civilite']." ".$tab_ele['resp'][0]['nom']." ".$tab_ele['resp'][0]['prenom']; //$tab_adr_ligne1[0].=" et "; $tab_adr_ligne1[0].="<br />\n"; $tab_adr_ligne1[0].="et "; $tab_adr_ligne1[0].=$tab_ele['resp'][1]['civilite']." ".$tab_ele['resp'][1]['nom']." ".$tab_ele['resp'][1]['prenom']; */ } else { if ($tab_ele['resp'][0]['civilite'] != "" && $tab_ele['resp'][1]['civilite'] != "") { $tab_adr_ligne1[0] = $tab_ele['resp'][0]['civilite'] . " et " . $tab_ele['resp'][1]['civilite'] . " " . $tab_ele['resp'][0]['nom'] . " " . $tab_ele['resp'][0]['prenom']; } else { $tab_adr_ligne1[0] = "M. et Mme " . $tab_ele['resp'][0]['nom'] . " " . $tab_ele['resp'][0]['prenom']; } } $tab_adr_ligne2[0] = $tab_ele['resp'][0]['adr1']; if ($tab_ele['resp'][0]['adr2'] != "") { $tab_adr_ligne3[0] = $tab_ele['resp'][0]['adr2']; } if ($tab_ele['resp'][0]['adr3'] != "") { $tab_adr_ligne4[0] = $tab_ele['resp'][0]['adr3']; } $tab_adr_ligne5[0] = $tab_ele['resp'][0]['cp'] . " " . $tab_ele['resp'][0]['commune']; if ($tab_ele['resp'][0]['pays'] != "" && mb_strtolower($tab_ele['resp'][0]['pays']) != mb_strtolower($gepiSchoolPays)) { $tab_adr_ligne6[0] = $tab_ele['resp'][0]['pays']; } } else { // Les adresses sont différentes //if ($un_seul_bull_par_famille!="oui") { // On teste en plus si la deuxième adresse est valide if ($un_seul_bull_par_famille != "oui" && $tab_ele['resp'][1]['adr1'] != "" && $tab_ele['resp'][1]['commune'] != "") { $nb_bulletins = 2; } else { $nb_bulletins = 1; } for ($cpt = 0; $cpt < $nb_bulletins; $cpt++) { if ($tab_ele['resp'][$cpt]['civilite'] != "") { $tab_adr_ligne1[$cpt] = $tab_ele['resp'][$cpt]['civilite'] . " " . $tab_ele['resp'][$cpt]['nom'] . " " . $tab_ele['resp'][$cpt]['prenom']; } else { $tab_adr_ligne1[$cpt] = $tab_ele['resp'][$cpt]['nom'] . " " . $tab_ele['resp'][$cpt]['prenom']; } $tab_adr_ligne2[$cpt] = $tab_ele['resp'][$cpt]['adr1']; if ($tab_ele['resp'][$cpt]['adr2'] != "") { $tab_adr_ligne3[$cpt] = $tab_ele['resp'][$cpt]['adr2']; } if ($tab_ele['resp'][$cpt]['adr3'] != "") { $tab_adr_ligne4[$cpt] = $tab_ele['resp'][$cpt]['adr3']; } $tab_adr_ligne5[$cpt] = $tab_ele['resp'][$cpt]['cp'] . " " . $tab_ele['resp'][$cpt]['commune']; if ($tab_ele['resp'][$cpt]['pays'] != "" && mb_strtolower($tab_ele['resp'][$cpt]['pays']) != mb_strtolower($gepiSchoolPays)) { $tab_adr_ligne6[$cpt] = $tab_ele['resp'][$cpt]['pays']; } } } } else { // Il n'y a pas de deuxième adresse, mais il y aurait un deuxième responsable??? // CA NE DEVRAIT PAS ARRIVER ETANT DONNé LA REQUETE EFFECTUEE QUI JOINT resp_pers ET resp_adr... if ($un_seul_bull_par_famille != "oui") { $nb_bulletins = 2; } else { $nb_bulletins = 1; } for ($cpt = 0; $cpt < $nb_bulletins; $cpt++) { if ($tab_ele['resp'][$cpt]['civilite'] != "") { $tab_adr_ligne1[$cpt] = $tab_ele['resp'][$cpt]['civilite'] . " " . $tab_ele['resp'][$cpt]['nom'] . " " . $tab_ele['resp'][$cpt]['prenom']; } else { $tab_adr_ligne1[$cpt] = $tab_ele['resp'][$cpt]['nom'] . " " . $tab_ele['resp'][$cpt]['prenom']; } $tab_adr_ligne2[$cpt] = $tab_ele['resp'][$cpt]['adr1']; if ($tab_ele['resp'][$cpt]['adr2'] != "") { $tab_adr_ligne3[$cpt] = $tab_ele['resp'][$cpt]['adr2']; } if ($tab_ele['resp'][$cpt]['adr3'] != "") { $tab_adr_ligne4[$cpt] = $tab_ele['resp'][$cpt]['adr3']; } $tab_adr_ligne5[$cpt] = $tab_ele['resp'][$cpt]['cp'] . " " . $tab_ele['resp'][$cpt]['commune']; if ($tab_ele['resp'][$cpt]['pays'] != "" && mb_strtolower($tab_ele['resp'][$cpt]['pays']) != mb_strtolower($gepiSchoolPays)) { $tab_adr_ligne6[$cpt] = $tab_ele['resp'][$cpt]['pays']; } } } } else { // Il n'y a pas de deuxième responsable $nb_bulletins = 1; if ($tab_ele['resp'][0]['civilite'] != "") { $tab_adr_ligne1[0] = $tab_ele['resp'][0]['civilite'] . " " . $tab_ele['resp'][0]['nom'] . " " . $tab_ele['resp'][0]['prenom']; } else { $tab_adr_ligne1[0] = $tab_ele['resp'][0]['nom'] . " " . $tab_ele['resp'][0]['prenom']; } $tab_adr_ligne2[0] = $tab_ele['resp'][0]['adr1']; if ($tab_ele['resp'][0]['adr2'] != "") { $tab_adr_ligne3[0] = $tab_ele['resp'][0]['adr2']; } if ($tab_ele['resp'][0]['adr3'] != "") { $tab_adr_ligne4[0] = $tab_ele['resp'][0]['adr3']; } $tab_adr_ligne5[0] = $tab_ele['resp'][0]['cp'] . " " . $tab_ele['resp'][0]['commune']; if ($tab_ele['resp'][0]['pays'] != "" && mb_strtolower($tab_ele['resp'][0]['pays']) != mb_strtolower($gepiSchoolPays)) { $tab_adr_ligne6[0] = $tab_ele['resp'][0]['pays']; } } } //= = = == = = == = = == = = == = = == = = == = = == = = == = = == = = == //+++++++++++++++++++++++++++++++++++++++++++ // A FAIRE // Mettre ici une boucle pour $nb_bulletins // Et tenir compte par la suite de la demande d'intercaler le relevé de notes ou non //+++++++++++++++++++++++++++++++++++++++++++ for ($num_resp_bull = 0; $num_resp_bull < $nb_bulletins; $num_resp_bull++) { //echo "debug"; $pdf->AddPage(); //ajout d'une page au document $pdf->SetFont('DejaVu'); //= = = == = = == = = == = = == = = == = = == = = == = = = // On insère le footer dès que la page est créée: //Positionnement à 1 cm du bas et 0,5cm + 0,5cm du coté gauche $pdf->SetXY(5, -10); //Police DejaVu Gras 6 $pdf->SetFont('DejaVu', 'B', 8); // $fomule = 'Bulletin à conserver précieusement. Aucun duplicata ne sera délivré. - GEPI : solution libre de gestion et de suivi des résultats scolaires.' $pdf->Cell(0, 4.5, $bull_formule_bas, 0, 0, 'C'); //= = = == = = == = = == = = == = = == = = == = = == = = = // A VERIFIER: CETTE VARIABLE NE DOIT PAS ETRE UTILE // SI LES VALEURS AFFICHEES PROVIENNENT DE L'EXTRACTION HORS DE LA FONCTION $total_coef_en_calcul = 0; /* // quand on change d'élève on vide les variables suivantes $categorie_passe = ''; $total_moyenne_classe_en_calcul = 0; $total_moyenne_min_en_calcul = 0; $total_moyenne_max_en_calcul = 0; $total_coef_en_calcul = 0; */ // ... $hauteur_pris = 0; //= = = == = = == = = == = = == = = == = = == = = == = = == = = == = = == // Récupération de l'identifiant de la classe: $classe_id = $tab_ele['id_classe']; //= = = == = = == = = == = = == = = == = = == = = == = = == = = == = = == if ($tab_modele_pdf["affiche_filigrame"][$classe_id] == '1') { $pdf->SetFont('DejaVu', 'B', 50); $pdf->SetTextColor(255, 192, 203); //$pdf->TextWithRotation(40,190,$texte_filigrame[$classe_id],45); $pdf->TextWithRotation(40, 190, $tab_modele_pdf["texte_filigrame"][$classe_id], 45); $pdf->SetTextColor(0, 0, 0); } //= = = == = = == = = == = = == = = == = = == = = == = = == = = == = = == // Bloc identification etablissement $logo = '../images/' . getSettingValue('logo_etab'); $format_du_logo = strtolower(str_replace('.', '', strstr(getSettingValue('logo_etab'), '.'))); // Logo if ($tab_modele_pdf["affiche_logo_etab"][$classe_id] == '1' and file_exists($logo) and getSettingValue('logo_etab') != '' and ($format_du_logo == 'jpg' or $format_du_logo == 'png')) { $valeur = redimensionne_image($logo, $tab_modele_pdf["L_max_logo"][$classe_id], $tab_modele_pdf["H_max_logo"][$classe_id]); //$valeur=redimensionne_image($logo, $L_max_logo, $H_max_logo); $X_logo = 5; $Y_logo = 5; $L_logo = $valeur[0]; $H_logo = $valeur[1]; $X_etab = $X_logo + $L_logo + 1; $Y_etab = $Y_logo; if (!isset($tab_modele_pdf["centrage_logo"][$classe_id]) or empty($tab_modele_pdf["centrage_logo"][$classe_id])) { $tab_modele_pdf["centrage_logo"][$classe_id] = '0'; } if ($tab_modele_pdf["centrage_logo"][$classe_id] == '1') { // centrage du logo $centre_du_logo = $H_logo / 2; $Y_logo = $tab_modele_pdf["Y_centre_logo"][$classe_id] - $centre_du_logo; } //logo $pdf->Image($logo, $X_logo, $Y_logo, $L_logo, $H_logo); } //$pdf->SetXY(100,5); //$pdf->SetFont('DejaVu','',10); //$pdf->Cell(90,7, "\$format_du_logo=$format_du_logo",0,2,''); //= = = == = = == = = == = = == = = == = = == = = == = = == = = == = = == // Adresse établissement if (!isset($X_etab) or empty($X_etab)) { $X_etab = '5'; $Y_etab = '5'; } $pdf->SetXY($X_etab, $Y_etab); $pdf->SetFont('DejaVu', '', 14); //$pdf->SetFont('DejaVu','',14); //= = = == = = == = = == = = == = = == = = == // AJOUT: boireaus 20081224 // Ajout du test $tab_modele_pdf["affiche_nom_etab"][$classe_id] et $tab_modele_pdf["affiche_adresse_etab"][$classe_id] //= = = == = = == = = == = = == = = == = = == //$tab_modele_pdf["affiche_nom_etab"][$classe_id]=0; if (isset($tab_modele_pdf["affiche_nom_etab"][$classe_id]) && $tab_modele_pdf["affiche_nom_etab"][$classe_id] != "0" || !isset($tab_modele_pdf["affiche_nom_etab"][$classe_id])) { // mettre en gras le nom de l'établissement si $nom_etab_gras = 1 if ($tab_modele_pdf["nom_etab_gras"][$classe_id] == '1') { $pdf->SetFont('DejaVu', 'B', 14); } $pdf->Cell(90, 7, $gepiSchoolName, 0, 2, ''); } //$pdf->SetFont('DejaVu','B',14); //$pdf->Cell(90,7, ($gepiSchoolName),0,2,''); //$tab_modele_pdf["affiche_adresse_etab"][$classe_id]=0; if (isset($tab_modele_pdf["affiche_adresse_etab"][$classe_id]) && $tab_modele_pdf["affiche_adresse_etab"][$classe_id] != "0" || !isset($tab_modele_pdf["affiche_adresse_etab"][$classe_id])) { $pdf->SetFont('DejaVu', '', 10); if ($gepiSchoolAdress1 != '') { $pdf->Cell(90, 5, $gepiSchoolAdress1, 0, 2, ''); } if ($gepiSchoolAdress2 != '') { $pdf->Cell(90, 5, $gepiSchoolAdress2, 0, 2, ''); } $pdf->Cell(90, 5, $gepiSchoolZipCode . " " . $gepiSchoolCity, 0, 2, ''); } $passealaligne = '0'; // entête téléphone // emplacement du cadre télécom $x_telecom = $pdf->GetX(); $y_telecom = $pdf->GetY(); if ($tab_modele_pdf["entente_tel"][$classe_id] == '1') { $grandeur = ''; $text_tel = ''; if ($tab_modele_pdf["tel_image"][$classe_id] != '') { $a = $pdf->GetX(); $b = $pdf->GetY(); $ima = '../images/imabulle/' . $tab_modele_pdf["tel_image"][$classe_id] . '.jpg'; $valeurima = redimensionne_image($ima, 15, 15); $pdf->Image($ima, $a, $b, $valeurima[0], $valeurima[1]); $text_tel = ' ' . $gepiSchoolTel; $grandeur = $pdf->GetStringWidth($text_tel); $grandeur = $grandeur + 2; } if ($tab_modele_pdf["tel_texte"][$classe_id] != '' and $tab_modele_pdf["tel_image"][$classe_id] == '') { $text_tel = $tab_modele_pdf["tel_texte"][$classe_id] . '' . $gepiSchoolTel; $grandeur = $pdf->GetStringWidth($text_tel); } $pdf->Cell($grandeur, 5, $text_tel, 0, $passealaligne, ''); } $passealaligne = '2'; // entête fax if ($tab_modele_pdf["entente_fax"][$classe_id] == '1') { $text_fax = ''; if ($tab_modele_pdf["fax_image"][$classe_id] != '') { $a = $pdf->GetX(); $b = $pdf->GetY(); $ima = '../images/imabulle/' . $tab_modele_pdf["fax_image"][$classe_id] . '.jpg'; $valeurima = redimensionne_image($ima, 15, 15); $pdf->Image($ima, $a, $b, $valeurima[0], $valeurima[1]); $text_fax = ' ' . $gepiSchoolFax; } if ($tab_modele_pdf["fax_texte"][$classe_id] != '' and $tab_modele_pdf["fax_image"][$classe_id] == '') { $text_fax = $tab_modele_pdf["fax_texte"][$classe_id] . '' . $gepiSchoolFax; } //$text_fax='Fax : '.$gepiSchoolFax; $pdf->Cell(90, 5, $text_fax, 0, $passealaligne, ''); } if ($tab_modele_pdf["entente_mel"][$classe_id] == '1') { $text_mel = ''; $y_telecom = $y_telecom + 5; $pdf->SetXY($x_telecom, $y_telecom); $text_mel = $gepiSchoolEmail; if ($tab_modele_pdf["courrier_image"][$classe_id] != '') { $a = $pdf->GetX(); $b = $pdf->GetY(); $ima = '../images/imabulle/' . $tab_modele_pdf["courrier_image"][$classe_id] . '.jpg'; $valeurima = redimensionne_image($ima, 15, 15); $pdf->Image($ima, $a, $b, $valeurima[0], $valeurima[1]); $text_mel = ' ' . $gepiSchoolEmail; } if ($tab_modele_pdf["courrier_texte"][$classe_id] != '' and $tab_modele_pdf["courrier_image"][$classe_id] == '') { $text_mel = $tab_modele_pdf["courrier_texte"][$classe_id] . ' ' . $gepiSchoolEmail; } //$text_mel='Email : '.$gepiSchoolEmail; $pdf->Cell(90, 5, $text_mel, 0, 2, ''); } //$pdf->Cell($pdf->getX(),$pdf->getY(), "DEBUG",0,2,''); //echo "DEBUG"; // = = = == = = == = = = FIN ENTETE BULLETIN = = = == = = == = = == = = == = = == = = == //= = = == = = == = = == = = == = = == = = == = = == = = == = = == = = == // A VOIR: REMPLACER LE $i PAR AUTRE CHOSE POUR EVITER LA COLLISION AVEC L'INDICE $i passé à la fonction //$i = $nb_eleve_aff; //$id_periode = $periode_classe[$id_classe_selection][$cpt_info_periode]; // $id_periode = $tab_bull['num_periode']; // AJOUT ERIC //$classe_id=$id_classe_selection; $pdf->SetFont('DejaVu', 'B', 12); // gestion des styles $pdf->SetStyle2("b", "DejaVu", "B", 8, "0,0,0"); $pdf->SetStyle2("i", "DejaVu", "I", 8, "0,0,0"); $pdf->SetStyle2("u", "DejaVu", "U", 8, "0,0,0"); // style pour la case appréciation générale // identité du professeur principal if ($tab_modele_pdf["taille_profprincipal_bloc_avis_conseil"][$classe_id] != '' and $tab_modele_pdf["taille_profprincipal_bloc_avis_conseil"][$classe_id] < '15') { $taille = $tab_modele_pdf["taille_profprincipal_bloc_avis_conseil"][$classe_id]; } else { $taille = '10'; } //$taille = '10'; $pdf->SetStyle2("bppc", "DejaVu", "B", $taille, "0,0,0"); $pdf->SetStyle2("ippc", "DejaVu", "I", $taille, "0,0,0"); // bloc affichage de l'adresse des parents //if($tab_modele_pdf["active_bloc_adresse_parent"][$classe_id]=='1') { if ($tab_modele_pdf["active_bloc_adresse_parent"][$classe_id] == '1') { //echo "DEBUG"; $pdf->SetXY($tab_modele_pdf["X_parent"][$classe_id], $tab_modele_pdf["Y_parent"][$classe_id]); // définition des Largeur - hauteur if ($tab_modele_pdf["largeur_bloc_adresse"][$classe_id] != '' and $tab_modele_pdf["largeur_bloc_adresse"][$classe_id] != '0') { $longeur_cadre_adresse = $tab_modele_pdf["largeur_bloc_adresse"][$classe_id]; } else { $longeur_cadre_adresse = '90'; } if ($tab_modele_pdf["hauteur_bloc_adresse"][$classe_id] != '' and $tab_modele_pdf["hauteur_bloc_adresse"][$classe_id] != '0') { $hauteur_cadre_adresse = $tab_modele_pdf["hauteur_bloc_adresse"][$classe_id]; } else { $hauteur_cadre_adresse = '1'; } //= = = == = = == = = == = = == = = == = = == $texte_1_responsable = trim($tab_adr_ligne1[$num_resp_bull]); //echo " - $texte_1_responsable -"; $hauteur_caractere = 12; $pdf->SetFont('DejaVu', 'B', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); $taille_texte = $longeur_cadre_adresse; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere = $hauteur_caractere - 0.3; $pdf->SetFont('DejaVu', 'B', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); } else { $grandeur_texte = 'ok'; } } $pdf->Cell(90, 7, $texte_1_responsable, 0, 2, ''); $texte_1_responsable = $tab_adr_ligne2[$num_resp_bull]; $hauteur_caractere = 10; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); $taille_texte = $longeur_cadre_adresse; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere = $hauteur_caractere - 0.3; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); } else { $grandeur_texte = 'ok'; } } $pdf->Cell(90, 5, $texte_1_responsable, 0, 2, ''); $texte_1_responsable = $tab_adr_ligne3[$num_resp_bull]; $hauteur_caractere = 10; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); $taille_texte = $longeur_cadre_adresse; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere = $hauteur_caractere - 0.3; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); } else { $grandeur_texte = 'ok'; } } $pdf->Cell(90, 5, $texte_1_responsable, 0, 2, ''); // Suppression du saut de ligne pour mettre la ligne 3 de l'adresse //$pdf->Cell(90,5, '',0,2,''); $texte_1_responsable = $tab_adr_ligne4[$num_resp_bull]; $hauteur_caractere = 10; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); $taille_texte = $longeur_cadre_adresse; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere = $hauteur_caractere - 0.3; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); } else { $grandeur_texte = 'ok'; } } $pdf->Cell(90, 5, $texte_1_responsable, 0, 2, ''); //$texte_1_responsable = $cp_parents[$ident_eleve_aff][$responsable_place]." ".$ville_parents[$ident_eleve_aff][$responsable_place]; $texte_1_responsable = $tab_adr_ligne5[$num_resp_bull]; $hauteur_caractere = 10; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); $taille_texte = $longeur_cadre_adresse; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere = $hauteur_caractere - 0.3; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); } else { $grandeur_texte = 'ok'; } } $pdf->Cell(90, 5, $texte_1_responsable, 0, 2, ''); //= = = == = = == = = == = = == = = == = = == = = = if (isset($tab_adr_ligne6[$num_resp_bull])) { $texte_1_responsable = $tab_adr_ligne6[$num_resp_bull]; $hauteur_caractere = 10; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); $taille_texte = $longeur_cadre_adresse; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere = $hauteur_caractere - 0.3; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($texte_1_responsable); } else { $grandeur_texte = 'ok'; } } $pdf->Cell(90, 5, $texte_1_responsable, 0, 2, ''); } //= = = == = = == = = == = = == = = == = = == = = = $texte_1_responsable = ''; if ($tab_modele_pdf["cadre_adresse"][$classe_id] != 0) { $pdf->Rect($tab_modele_pdf["X_parent"][$classe_id], $tab_modele_pdf["Y_parent"][$classe_id], $longeur_cadre_adresse, $hauteur_cadre_adresse, 'D'); } } //= = = == = = == = = == = = == = = == = = == = = == = = == = = == = = == // Bloc affichage information sur l'élève if ($tab_modele_pdf["active_bloc_eleve"][$classe_id] == '1') { $pdf->SetXY($tab_modele_pdf["X_eleve"][$classe_id], $tab_modele_pdf["Y_eleve"][$classe_id]); // définition des Lageur - hauteur if ($tab_modele_pdf["largeur_bloc_eleve"][$classe_id] != '' and $tab_modele_pdf["largeur_bloc_eleve"][$classe_id] != '0') { $longeur_cadre_eleve = $tab_modele_pdf["largeur_bloc_eleve"][$classe_id]; } else { $longeur_cadre_eleve = $pdf->GetStringWidth($tab_ele['nom'] . " " . $tab_ele['prenom']); $rajout_cadre_eleve = 100 - $longeur_cadre_eleve; $longeur_cadre_eleve = $longeur_cadre_eleve + $rajout_cadre_eleve; } if ($tab_modele_pdf["hauteur_bloc_eleve"][$classe_id] != '' and $tab_modele_pdf["hauteur_bloc_eleve"][$classe_id] != '0') { $hauteur_cadre_eleve = $tab_modele_pdf["hauteur_bloc_eleve"][$classe_id]; } else { $nb_ligne = 5; $hauteur_ligne = 6; $hauteur_cadre_eleve = $nb_ligne * $hauteur_ligne; } $pdf->SetFont('DejaVu', 'B', 14); if ($tab_modele_pdf["cadre_eleve"][$classe_id] != 0) { $pdf->Rect($tab_modele_pdf["X_eleve"][$classe_id], $tab_modele_pdf["Y_eleve"][$classe_id], $longeur_cadre_eleve, $hauteur_cadre_eleve, 'D'); } $X_eleve_2 = $tab_modele_pdf["X_eleve"][$classe_id]; $Y_eleve_2 = $tab_modele_pdf["Y_eleve"][$classe_id]; //photo de l'élève if (!isset($tab_modele_pdf["ajout_cadre_blanc_photo"][$classe_id]) or empty($tab_modele_pdf["ajout_cadre_blanc_photo"][$classe_id])) { $tab_modele_pdf["ajout_cadre_blanc_photo"][$classe_id] = '0'; } if ($tab_modele_pdf["ajout_cadre_blanc_photo"][$classe_id] == '1') { $ajouter = '1'; } else { $ajouter = '0'; } $photo[$i] = nom_photo($tab_ele['elenoet']); if (!$photo[$i]) { $photo[$i] = ""; } if ($tab_modele_pdf["active_photo"][$classe_id] == '1' and $photo[$i] != '' and file_exists($photo[$i])) { $L_photo_max = ($hauteur_cadre_eleve - $ajouter * 2) * 2.8; $H_photo_max = ($hauteur_cadre_eleve - $ajouter * 2) * 2.8; $valeur = redimensionne_image($photo[$i], $L_photo_max, $H_photo_max); $X_photo = $tab_modele_pdf["X_eleve"][$classe_id] + 0.2 + $ajouter; $Y_photo = $tab_modele_pdf["Y_eleve"][$classe_id] + 0.25 + $ajouter; $L_photo = $valeur[0]; $H_photo = $valeur[1]; $X_eleve_2 = $tab_modele_pdf["X_eleve"][$classe_id] + $L_photo + $ajouter + 1; $Y_eleve_2 = $Y_photo; $pdf->Image($photo[$i], $X_photo, $Y_photo, $L_photo, $H_photo); $longeur_cadre_eleve = $longeur_cadre_eleve - ($valeur[0] + $ajouter); } $pdf->SetXY($X_eleve_2, $Y_eleve_2); $pdf->Cell(90, 7, $tab_ele['nom'] . " " . $tab_ele['prenom'], 0, 2, ''); $pdf->SetFont('DejaVu', '', 10); if ($tab_modele_pdf["affiche_date_naissance"][$classe_id] == '1') { if ($tab_ele['naissance'] != "") { $info_naissance = "Né"; if ($tab_ele['sexe'] == "F") { $info_naissance .= "e"; } $info_naissance .= " le " . $tab_ele['naissance']; $pdf->Cell(90, 5, $info_naissance, 0, 2, ''); } } $rdbt = ''; if ($tab_modele_pdf["affiche_dp"][$classe_id] == '1') { if ($tab_modele_pdf["affiche_doublement"][$classe_id] == '1') { //if($tab_ele['doublant']!="") { if ($tab_ele['doublant'] == "R") { //$rdbt=" ; ".$doublement[$i]; //$rdbt=" ; redoublant"; $rdbt = "redoublant"; if ($tab_ele['sexe'] == "F") { $rdbt .= "e"; } } //if(isset($tab_ele['regime'])) { if (isset($tab_ele['regime']) && $tab_ele['regime'] != "") { if ($rdbt == "") { $pdf->Cell(90, 4, regime($tab_ele['regime']), 0, 2, ''); } else { $pdf->Cell(90, 4, regime($tab_ele['regime']) . "; " . $rdbt, 0, 2, ''); } } else { $pdf->Cell(90, 4, $rdbt, 0, 2, ''); } } } else { if ($tab_modele_pdf["affiche_doublement"][$classe_id] == '1') { //if($tab_ele['doublant']!="") { if ($tab_ele['doublant'] == "R") { //$pdf->Cell(90,4.5, $doublement[$i],0,2,''); //$rdbt=" ; redoublant"; $rdbt = "redoublant"; if ($tab_ele['sexe'] == "F") { $rdbt .= "e"; } $pdf->Cell(90, 4.5, $rdbt, 0, 2, ''); } } } // affiche le nom court de la classe if ($tab_modele_pdf["affiche_nom_court"][$classe_id] == '1') { if ($tab_ele['classe'] != "") { // si l'affichage du numéro INE est activé alors on ne passe pas $passe_a_la_ligne = 0; //if ( $tab_modele_pdf["affiche_ine"][$classe_id] != '1' or $tab_modele_pdf["INE_eleve"][$i] == '' ) if ($tab_modele_pdf["affiche_ine"][$classe_id] != '1' or $tab_ele['no_gep'] == '') { $passe_a_la_ligne = 1; } $pdf->Cell(45, 4.5, unhtmlentities($tab_ele['classe']), 0, $passe_a_la_ligne, ''); } } // affiche l'INE de l'élève if ($tab_modele_pdf["affiche_ine"][$classe_id] == '1') { if ($tab_ele['no_gep'] != '') { $pdf->Cell(45, 4.5, 'INE: ' . $tab_ele['no_gep'], 0, 1, ''); } } // Affichage du numéro d'impression $pdf->SetX($X_eleve_2); if ($tab_modele_pdf["affiche_effectif_classe"][$classe_id] == '1') { if ($tab_modele_pdf["affiche_numero_impression"][$classe_id] == '1') { $pass_ligne = '0'; } else { $pass_ligne = '2'; } /* if($tab_bull['eff_classe']!="") { $pdf->Cell(45,4.5, ('Effectif : '.$tab_bull['eff_classe'].' élèves'),0,$pass_ligne,''); } */ } if ($tab_modele_pdf["affiche_numero_impression"][$classe_id] == '1') { //+++++++++++++++++++ //+++++++++++++++++++ // A VOIR... CE $i... // Si on n'imprime que certains bulletins, on récupère le numéro d'ordre (alphabétique) de l'élève dans la classe. //+++++++++++++++++++ //+++++++++++++++++++ //$num_ordre = $i; $num_ordre = $i + 1; $pdf->Cell(45, 4, 'Bulletin N° ' . $num_ordre, 0, 2, ''); } // Affichage de l'établissement d'origine // On n'affiche pas l'établissement d'origine si c'est le même que l'établissement actuel: $RneEtablissement //if($tab_modele_pdf["affiche_etab_origine"][$classe_id]=='1' and !empty($etablissement_origine[$i]) ) { //if($tab_modele_pdf["affiche_etab_origine"][$classe_id]=='1' and isset($tab_ele['etab_id']) and !empty($tab_ele['etab_id']) ) { if ($tab_modele_pdf["affiche_etab_origine"][$classe_id] == '1' && isset($tab_ele['etab_id']) && !empty($tab_ele['etab_id']) && mb_strtolower($tab_ele['etab_id']) != mb_strtolower($RneEtablissement)) { $pdf->SetX($X_eleve_2); $hauteur_caractere_etaborigine = '10'; $pdf->SetFont('DejaVu', '', $hauteur_caractere_etaborigine); $val = $pdf->GetStringWidth('Etab. Origine : ' . $tab_ele['etab_niveau'] . " " . $tab_ele['etab_nom'] . " (" . $tab_ele['etab_ville'] . ")"); $taille_texte = $longeur_cadre_eleve - 3; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere_etaborigine = $hauteur_caractere_etaborigine - 0.3; $pdf->SetFont('DejaVu', '', $hauteur_caractere_etaborigine); $val = $pdf->GetStringWidth('Etab. Origine : ' . $tab_ele['etab_niveau'] . " " . $tab_ele['etab_nom'] . " (" . $tab_ele['etab_ville'] . ")"); } else { $grandeur_texte = 'ok'; } } $grandeur_texte = 'test'; $pdf->Cell(90, 4, 'Etab. Origine : ' . $tab_ele['etab_niveau'] . " " . $tab_ele['etab_nom'] . " (" . $tab_ele['etab_ville'] . ")", 0, 2); $pdf->SetFont('DejaVu', '', 10); } } // fin du bloc affichage information sur l'élèves //= = = == = = == = = == = = == = = == = = == = = == = = == = = == = = == // Bloc affichage datation du bulletin: // Classe, période,... if ($tab_modele_pdf["active_bloc_datation"][$classe_id] == '1') { $pdf->SetXY($tab_modele_pdf["X_datation_bul"][$classe_id], $tab_modele_pdf["Y_datation_bul"][$classe_id]); // définition des Largeur - hauteur if ($tab_modele_pdf["largeur_bloc_datation"][$classe_id] != '' and $tab_modele_pdf["largeur_bloc_datation"][$classe_id] != '0') { $longeur_cadre_datation_bul = $tab_modele_pdf["largeur_bloc_datation"][$classe_id]; } else { $longeur_cadre_datation_bul = '95'; } if ($tab_modele_pdf["hauteur_bloc_datation"][$classe_id] != '' and $tab_modele_pdf["hauteur_bloc_datation"][$classe_id] != '0') { $hauteur_cadre_datation_bul = $tab_modele_pdf["hauteur_bloc_datation"][$classe_id]; } else { $nb_ligne_datation_bul = 3; $hauteur_ligne_datation_bul = 6; $hauteur_cadre_datation_bul = $nb_ligne_datation_bul * $hauteur_ligne_datation_bul; } if ($tab_modele_pdf["cadre_datation_bul"][$classe_id] != 0) { $pdf->Rect($tab_modele_pdf["X_datation_bul"][$classe_id], $tab_modele_pdf["Y_datation_bul"][$classe_id], $longeur_cadre_datation_bul, $hauteur_cadre_datation_bul, 'D'); } $taille_texte = '14'; $type_texte = 'B'; if ($tab_modele_pdf["taille_texte_classe"][$classe_id] != '' and $tab_modele_pdf["taille_texte_classe"][$classe_id] != '0') { $taille_texte = $tab_modele_pdf["taille_texte_classe"][$classe_id]; } else { $taille_texte = '14'; } if ($tab_modele_pdf["type_texte_classe"][$classe_id] != '') { if ($tab_modele_pdf["type_texte_classe"][$classe_id] == 'N') { $type_texte = ''; } else { $type_texte = $tab_modele_pdf["type_texte_classe"][$classe_id]; } } else { $type_texte = 'B'; } $pdf->SetFont('DejaVu', $type_texte, $taille_texte); //$pdf->Cell(90,7, ("Classe de ".unhtmlentities($tab_bull['classe_nom_complet'])),0,2,'C'); $pdf->Cell(90, 7, "Classe de " . unhtmlentities($tab_ele['classe_nom_complet']), 0, 2, 'C'); $taille_texte = '12'; $type_texte = ''; if ($tab_modele_pdf["taille_texte_annee"][$classe_id] != '' and $tab_modele_pdf["taille_texte_annee"][$classe_id] != '0') { $taille_texte = $tab_modele_pdf["taille_texte_annee"][$classe_id]; } else { $taille_texte = '12'; } if ($tab_modele_pdf["type_texte_annee"][$classe_id] != '') { if ($tab_modele_pdf["type_texte_annee"][$classe_id] == 'N') { $type_texte = ''; } else { $type_texte = $tab_modele_pdf["type_texte_annee"][$classe_id]; } } else { $type_texte = ''; } $pdf->SetFont('DejaVu', $type_texte, $taille_texte); $annee_scolaire = $gepiYear; $pdf->Cell(90, 5, "Année scolaire " . $annee_scolaire, 0, 2, 'C'); $taille_texte = '10'; $type_texte = ''; if ($tab_modele_pdf["taille_texte_periode"][$classe_id] != '' and $tab_modele_pdf["taille_texte_periode"][$classe_id] != '0') { $taille_texte = $tab_modele_pdf["taille_texte_periode"][$classe_id]; } else { $taille_texte = '10'; } if ($tab_modele_pdf["type_texte_periode"][$classe_id] != '') { if ($tab_modele_pdf["type_texte_periode"][$classe_id] == 'N') { $type_texte = ''; } else { $type_texte = $tab_modele_pdf["type_texte_periode"][$classe_id]; } } else { $type_texte = ''; } $pdf->SetFont('DejaVu', $type_texte, $taille_texte); //$pdf->Cell(90,5, ("Bulletin du ".unhtmlentities($tab_bull['nom_periode'])),0,2,'C'); $pdf->Cell(90, 5, "Examen blanc : " . $tab_ele['intitule_exam'], 0, 2, 'C'); $taille_texte = '8'; $type_texte = ''; if ($tab_modele_pdf["affiche_date_edition"][$classe_id] == '1') { if ($tab_modele_pdf["taille_texte_date_edition"][$classe_id] != '' and $tab_modele_pdf["taille_texte_date_edition"][$classe_id] != '0') { $taille_texte = $tab_modele_pdf["taille_texte_date_edition"][$classe_id]; } else { $taille_texte = '8'; } if ($tab_modele_pdf["type_texte_date_datation"][$classe_id] != '') { if ($tab_modele_pdf["type_texte_date_datation"][$classe_id] == 'N') { $type_texte = ''; } else { $type_texte = $tab_modele_pdf["type_texte_date_datation"][$classe_id]; } } else { $type_texte = ''; } $pdf->SetFont('DejaVu', $type_texte, $taille_texte); $pdf->Cell(95, 7, $date_bulletin, 0, 2, 'R'); } $pdf->SetFont('DejaVu', '', 10); } $nb_matiere = count($tab_ele['matieres']); if ($tab_modele_pdf["active_bloc_note_appreciation"][$classe_id] == '1' and $nb_matiere != '0') { $pdf->Rect($tab_modele_pdf["X_note_app"][$classe_id], $tab_modele_pdf["Y_note_app"][$classe_id], $tab_modele_pdf["longeur_note_app"][$classe_id], $tab_modele_pdf["hauteur_note_app"][$classe_id], 'D'); //entête du tableau des notes et app $nb_entete_moyenne = $tab_modele_pdf["active_moyenne_eleve"][$classe_id] + $tab_modele_pdf["active_moyenne_classe"][$classe_id] + $tab_modele_pdf["active_moyenne_min"][$classe_id] + $tab_modele_pdf["active_moyenne_max"][$classe_id]; //min max classe eleve $hauteur_entete = 8; $hauteur_entete_pardeux = $hauteur_entete / 2; $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id], $tab_modele_pdf["Y_note_app"][$classe_id]); $pdf->SetFont('DejaVu', '', 10); $pdf->Cell($tab_modele_pdf["largeur_matiere"][$classe_id], $hauteur_entete, $tab_modele_pdf["titre_entete_matiere"][$classe_id], 1, 0, 'C'); $largeur_utilise = $tab_modele_pdf["largeur_matiere"][$classe_id]; // coefficient matière if ($tab_modele_pdf["active_coef_moyenne"][$classe_id] == '1') { $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id]); $pdf->SetFont('DejaVu', '', 8); $pdf->Cell($tab_modele_pdf["largeur_coef_moyenne"][$classe_id], $hauteur_entete, $tab_modele_pdf["titre_entete_coef"][$classe_id], 'LRB', 0, 'C'); $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_coef_moyenne"][$classe_id]; } /* // nombre de notes // 20081118 //if($tab_modele_pdf["active_nombre_note_case"][$classe_id]=='1') { if(($tab_modele_pdf["active_nombre_note_case"][$classe_id]=='1')&&($tab_modele_pdf["active_nombre_note"][$classe_id]!='1')) { $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id]+$largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id]); $pdf->SetFont('DejaVu','',8); $pdf->Cell($tab_modele_pdf["largeur_nombre_note"][$classe_id], $hauteur_entete, ($tab_modele_pdf["titre_entete_nbnote"][$classe_id]),'LRB',0,'C'); $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_nombre_note"][$classe_id]; } */ // eleve | min | classe | max | rang | niveau | appreciation | if ($tab_modele_pdf["ordre_entete_model_bulletin"][$classe_id] == '1') { $ordre_moyenne[0] = 'eleve'; $ordre_moyenne[1] = 'min'; $ordre_moyenne[2] = 'classe'; $ordre_moyenne[3] = 'max'; $ordre_moyenne[4] = 'rang'; $ordre_moyenne[5] = 'niveau'; $ordre_moyenne[6] = 'appreciation'; } // min | classe | max | eleve | niveau | rang | appreciation | if ($tab_modele_pdf["ordre_entete_model_bulletin"][$classe_id] == '2') { $ordre_moyenne[0] = 'min'; $ordre_moyenne[1] = 'classe'; $ordre_moyenne[2] = 'max'; $ordre_moyenne[3] = 'eleve'; $ordre_moyenne[4] = 'niveau'; $ordre_moyenne[5] = 'rang'; $ordre_moyenne[6] = 'appreciation'; } // eleve | niveau | rang | appreciation | min | classe | max if ($tab_modele_pdf["ordre_entete_model_bulletin"][$classe_id] == '3') { $ordre_moyenne[0] = 'eleve'; $ordre_moyenne[1] = 'niveau'; $ordre_moyenne[2] = 'rang'; $ordre_moyenne[3] = 'appreciation'; $ordre_moyenne[4] = 'min'; $ordre_moyenne[5] = 'classe'; $ordre_moyenne[6] = 'max'; } // eleve | classe | min | max | rang | niveau | appreciation | if ($tab_modele_pdf["ordre_entete_model_bulletin"][$classe_id] == '4') { $ordre_moyenne[0] = 'eleve'; $ordre_moyenne[1] = 'classe'; $ordre_moyenne[2] = 'min'; $ordre_moyenne[3] = 'max'; $ordre_moyenne[4] = 'rang'; $ordre_moyenne[5] = 'niveau'; $ordre_moyenne[6] = 'appreciation'; } // eleve | min | classe | max | niveau | rang | appreciation | if ($tab_modele_pdf["ordre_entete_model_bulletin"][$classe_id] == '5') { $ordre_moyenne[0] = 'eleve'; $ordre_moyenne[1] = 'min'; $ordre_moyenne[2] = 'classe'; $ordre_moyenne[3] = 'max'; $ordre_moyenne[4] = 'niveau'; $ordre_moyenne[5] = 'rang'; $ordre_moyenne[6] = 'appreciation'; } // min | classe | max | eleve | rang | niveau | appreciation | //if ( $ordre_entete_model_bulletin[$classe_id] == '6' ) { if ($tab_modele_pdf["ordre_entete_model_bulletin"][$classe_id] == '6') { $ordre_moyenne[0] = 'min'; $ordre_moyenne[1] = 'classe'; $ordre_moyenne[2] = 'max'; $ordre_moyenne[3] = 'eleve'; $ordre_moyenne[4] = 'rang'; $ordre_moyenne[5] = 'niveau'; $ordre_moyenne[6] = 'appreciation'; } $cpt_ordre = 0; $chapeau_moyenne = 'non'; while (!empty($ordre_moyenne[$cpt_ordre])) { // Je ne saisis pas pourquoi cette variable est initialisée à ce niveau??? //$categorie_passe_count = 0; // le chapeau des moyennes $ajout_espace_au_dessus = 4; if ($tab_modele_pdf["entete_model_bulletin"][$classe_id] == '1' and $nb_entete_moyenne > 1 and ($ordre_moyenne[$cpt_ordre] == 'classe' or $ordre_moyenne[$cpt_ordre] == 'min' or $ordre_moyenne[$cpt_ordre] == 'max' or $ordre_moyenne[$cpt_ordre] == 'eleve') and $chapeau_moyenne == 'non' and $tab_modele_pdf["ordre_entete_model_bulletin"][$classe_id] != '3') { $largeur_moyenne = $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id] * $nb_entete_moyenne; $text_entete_moyenne = 'Moyenne'; $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id]); $pdf->Cell($largeur_moyenne, $hauteur_entete_pardeux, $text_entete_moyenne, 1, 0, 'C'); $chapeau_moyenne = 'oui'; } if ($tab_modele_pdf["entete_model_bulletin"][$classe_id] == '2' and $nb_entete_moyenne > 1 and ($ordre_moyenne[$cpt_ordre] == 'classe' or $ordre_moyenne[$cpt_ordre] == 'min' or $ordre_moyenne[$cpt_ordre] == 'max') and $chapeau_moyenne == 'non' or $tab_modele_pdf["entete_model_bulletin"][$classe_id] == '1' and $tab_modele_pdf["ordre_entete_model_bulletin"][$classe_id] == '3' and $chapeau_moyenne == 'non' and ($ordre_moyenne[$cpt_ordre] == 'classe' or $ordre_moyenne[$cpt_ordre] == 'min' or $ordre_moyenne[$cpt_ordre] == 'max')) { $largeur_moyenne = $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id] * ($nb_entete_moyenne - 1); $text_entete_moyenne = 'Pour la classe'; $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id]); $hauteur_caractere = 10; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($text_entete_moyenne); $taille_texte = $largeur_moyenne; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere = $hauteur_caractere - 0.3; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $val = $pdf->GetStringWidth($text_entete_moyenne); } else { $grandeur_texte = 'ok'; } } $pdf->Cell($largeur_moyenne, $hauteur_entete_pardeux, $text_entete_moyenne, 1, 0, 'C'); $chapeau_moyenne = 'oui'; } //eleve if ($tab_modele_pdf["active_moyenne_eleve"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'eleve') { $ajout_espace_au_dessus = 4; $hauteur_de_la_cellule = $hauteur_entete_pardeux; if ($tab_modele_pdf["entete_model_bulletin"][$classe_id] == '2' and $tab_modele_pdf["active_moyenne_eleve"][$classe_id] == '1' and $nb_entete_moyenne > 1) { $hauteur_de_la_cellule = $hauteur_entete; $ajout_espace_au_dessus = 0; } $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id] + $ajout_espace_au_dessus); $pdf->SetFillColor($tab_modele_pdf["couleur_reperage_eleve1"][$classe_id], $tab_modele_pdf["couleur_reperage_eleve2"][$classe_id], $tab_modele_pdf["couleur_reperage_eleve3"][$classe_id]); $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $hauteur_de_la_cellule, "Elève", 1, 0, 'C', $tab_modele_pdf["active_reperage_eleve"][$classe_id]); $pdf->SetFillColor(0, 0, 0); $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } //classe if ($tab_modele_pdf["active_moyenne_classe"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'classe') { $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id] + 4); $hauteur_caractere = '8.5'; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $text_moy_classe = 'Classe'; if ($tab_modele_pdf["entete_model_bulletin"][$classe_id] == '2') { $text_moy_classe = 'Moy.'; } $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $hauteur_entete_pardeux, $text_moy_classe, 1, 0, 'C'); $X_moyenne_classe = $tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise; $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } //min if ($tab_modele_pdf["active_moyenne_min"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'min') { $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id] + 4); $hauteur_caractere = '8.5'; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $hauteur_entete_pardeux, "Min.", 1, 0, 'C'); $X_min_classe = $tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise; $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } //max if ($tab_modele_pdf["active_moyenne_max"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'max') { $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id] + 4); $hauteur_caractere = '8.5'; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $hauteur_entete_pardeux, "Max.", 1, 0, 'C'); $X_max_classe = $tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise; $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } $pdf->SetFont('DejaVu', '', 10); // rang de l'élève if ($tab_modele_pdf["active_rang"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'rang') { $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id]); $pdf->Cell($tab_modele_pdf["largeur_rang"][$classe_id], $hauteur_entete, $tab_modele_pdf["titre_entete_rang"][$classe_id], 'LRB', 0, 'C'); //$pdf->Cell($tab_modele_pdf["largeur_rang"][$classe_id], $hauteur_entete, $tab_modele_pdf["titre_entete_rang"][$classe_id],'LRB',0,'C'); $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_rang"][$classe_id]; } // graphique de niveau if ($tab_modele_pdf["active_graphique_niveau"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'niveau') { $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id]); $hauteur_caractere = '10'; $pdf->SetFont('DejaVu', '', $hauteur_caractere); $pdf->Cell($tab_modele_pdf["largeur_niveau"][$classe_id], $hauteur_entete_pardeux, "Niveau", 'LR', 0, 'C'); $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id] + 4); $pdf->SetFont('DejaVu', '', 8); $pdf->Cell($tab_modele_pdf["largeur_niveau"][$classe_id], $hauteur_entete_pardeux, "ABC+C-DE", 'LRB', 0, 'C'); $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_niveau"][$classe_id]; } //appreciation $hauteur_caractere = '10'; $pdf->SetFont('DejaVu', '', $hauteur_caractere); if ($tab_modele_pdf["active_appreciation"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'appreciation') { $pdf->SetXY($tab_modele_pdf["X_note_app"][$classe_id] + $largeur_utilise, $tab_modele_pdf["Y_note_app"][$classe_id]); if (!empty($ordre_moyenne[$cpt_ordre + 1])) { $cpt_ordre_sous = $cpt_ordre + 1; $largeur_appret = 0; while (!empty($ordre_moyenne[$cpt_ordre_sous])) { if ($ordre_moyenne[$cpt_ordre_sous] == 'eleve') { $largeur_appret = $largeur_appret + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } if ($ordre_moyenne[$cpt_ordre_sous] == 'rang') { $largeur_appret = $largeur_appret + $tab_modele_pdf["largeur_rang"][$classe_id]; } if ($ordre_moyenne[$cpt_ordre_sous] == 'niveau') { $largeur_appret = $largeur_appret + $tab_modele_pdf["largeur_niveau"][$classe_id]; } if ($ordre_moyenne[$cpt_ordre_sous] == 'min') { $largeur_appret = $largeur_appret + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } if ($ordre_moyenne[$cpt_ordre_sous] == 'classe') { $largeur_appret = $largeur_appret + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } if ($ordre_moyenne[$cpt_ordre_sous] == 'max') { $largeur_appret = $largeur_appret + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } $cpt_ordre_sous = $cpt_ordre_sous + 1; } $largeur_appreciation = $tab_modele_pdf["longeur_note_app"][$classe_id] - $largeur_utilise - $largeur_appret; } else { $largeur_appreciation = $tab_modele_pdf["longeur_note_app"][$classe_id] - $largeur_utilise; } $pdf->SetFont('DejaVu', '', 10); //$titre_entete_appreciation=$bull_intitule_app; $titre_entete_appreciation = $tab_modele_pdf['titre_entete_appreciation'][$classe_id]; $pdf->Cell($largeur_appreciation, $hauteur_entete, $titre_entete_appreciation, 'LRB', 0, 'C'); $largeur_utilise = $largeur_utilise + $largeur_appreciation; } $cpt_ordre = $cpt_ordre + 1; } $largeur_utilise = 0; // fin de boucle d'ordre //+++++++++++++++++++++++++++++++++++++++++++++ $X_bloc_matiere = $tab_modele_pdf["X_note_app"][$classe_id]; $Y_bloc_matiere = $tab_modele_pdf["Y_note_app"][$classe_id] + $hauteur_entete; $longeur_bloc_matiere = $tab_modele_pdf["longeur_note_app"][$classe_id]; // calcul de la hauteur totale que peut prendre le cadre matière dans sa globalité if ($tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne_general"][$classe_id] == '1') { // si les moyennes et la moyenne général sont activé alors on les ajoute à ceux qui vaudras soustraire au cadre global matiere $hauteur_toute_entete = $hauteur_entete + $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id]; } else { $hauteur_toute_entete = $hauteur_entete; } $hauteur_bloc_matiere = $tab_modele_pdf["hauteur_note_app"][$classe_id] - $hauteur_toute_entete; $X_note_moy_app = $tab_modele_pdf["X_note_app"][$classe_id]; $Y_note_moy_app = $tab_modele_pdf["Y_note_app"][$classe_id] + $tab_modele_pdf["hauteur_note_app"][$classe_id] - $hauteur_entete; if ($tab_modele_pdf["active_entete_regroupement"][$classe_id] == '1') { $espace_entre_matier = ($hauteur_bloc_matiere - $nb_categories_select * 5) / $nb_matiere; } else { $espace_entre_matier = $hauteur_bloc_matiere / $nb_matiere; } /* fich_debug_bull("\$hauteur_bloc_matiere=$hauteur_bloc_matiere\n"); fich_debug_bull("\$nb_matiere=$nb_matiere\n"); fich_debug_bull("\$espace_entre_matier=$espace_entre_matier\n"); */ /* //++++++++++++++++ // Pour debug: $pdf->SetXY(100, 30); $pdf->SetFont('DejaVu','',10); $pdf->Cell($tab_modele_pdf["largeur_matiere"][$classe_id], 8, "espace_entre_matier=$espace_entre_matier",1,0,'C'); //++++++++++++++++ */ $pdf->SetXY($X_bloc_matiere, $Y_bloc_matiere); $Y_decal = $Y_bloc_matiere; //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // Compteur du nombre de matières dans la catégorie //$categorie_passe_count=0; //for($m=0; $m<$nb_matiere; $m++) //for($m=0;$m<count($tab_ele['matieres']); $m++) { $m = 0; //foreach($tab_ele['matieres'] as $key => $current_matiere) { foreach ($tab_ele['matieres'] as $current_matiere => $tab_current_matiere) { $pdf->SetXY($X_bloc_matiere, $Y_decal); // Lignes de Matière, Note, Rang,... Appréciation $pdf->SetXY($X_bloc_matiere, $Y_decal); // Si c'est une matière suivie par l'élève //if(isset($tab_ele['matieres'][$m][$i])) { // calcul la taille du titre de la matière $hauteur_caractere_matiere = 10; if ($tab_modele_pdf["taille_texte_matiere"][$classe_id] != '' and $tab_modele_pdf["taille_texte_matiere"][$classe_id] != '0' and $tab_modele_pdf["taille_texte_matiere"][$classe_id] < '11') { $hauteur_caractere_matiere = $tab_modele_pdf["taille_texte_matiere"][$classe_id]; } $pdf->SetFont('DejaVu', 'B', $hauteur_caractere_matiere); /* // Pour parer au bug sur la suppression de matière alors que des groupes sont conservés: if(isset($tab_bull['groupe'][$m]['matiere']['nom_complet'])) { $info_nom_matiere=$tab_bull['groupe'][$m]['matiere']['nom_complet']; } else { $info_nom_matiere=$tab_bull['groupe'][$m]['name']." (".$tab_bull['groupe'][$m]['id'].")"; } */ //echo "\$info_nom_matiere=\$tab_ele['matieres'][\"$current_matiere\"]['nom_complet']\n"; $info_nom_matiere = $tab_ele['matieres']["{$current_matiere}"]['nom_complet']; $val = $pdf->GetStringWidth($info_nom_matiere); $taille_texte = $tab_modele_pdf["largeur_matiere"][$classe_id] - 2; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere_matiere = $hauteur_caractere_matiere - 0.3; $pdf->SetFont('DejaVu', 'B', $hauteur_caractere_matiere); $val = $pdf->GetStringWidth($info_nom_matiere); } else { $grandeur_texte = 'ok'; } } $grandeur_texte = 'test'; $pdf->Cell($tab_modele_pdf["largeur_matiere"][$classe_id], $espace_entre_matier / 2, $info_nom_matiere, 'LR', 1, 'L'); $Y_decal = $Y_decal + $espace_entre_matier / 2; $pdf->SetXY($X_bloc_matiere, $Y_decal); $pdf->SetFont('DejaVu', '', 8); // fich_debug_bull("\$info_nom_matiere=$info_nom_matiere\n"); // fich_debug_bull("\$Y_decal=$Y_decal\n"); // nom des professeurs if (isset($tab_ele['matieres']["{$current_matiere}"]['profs_list'])) { $nb_prof_matiere = count($tab_ele['matieres']["{$current_matiere}"]['profs_list']); $espace_matiere_prof = $espace_entre_matier / 2; if ($nb_prof_matiere > 0) { $espace_matiere_prof = $espace_matiere_prof / $nb_prof_matiere; } $nb_pass_count = '0'; $text_prof = ''; while ($nb_prof_matiere > $nb_pass_count) { $tmp_login_prof = $tab_ele['matieres']["{$current_matiere}"]["profs_list"][$nb_pass_count]; $text_prof = affiche_utilisateur($tmp_login_prof, $tab_ele['id_classe']); if ($nb_prof_matiere <= 2) { $hauteur_caractere_prof = 8; } elseif ($nb_prof_matiere == 3) { $hauteur_caractere_prof = 5; } elseif ($nb_prof_matiere > 3) { $hauteur_caractere_prof = 2; } $pdf->SetFont('DejaVu', '', $hauteur_caractere_prof); $val = $pdf->GetStringWidth($text_prof); $taille_texte = $tab_modele_pdf["largeur_matiere"][$classe_id]; $grandeur_texte = 'test'; while ($grandeur_texte != 'ok') { if ($taille_texte < $val) { $hauteur_caractere_prof = $hauteur_caractere_prof - 0.3; $pdf->SetFont('DejaVu', '', $hauteur_caractere_prof); $val = $pdf->GetStringWidth($text_prof); } else { $grandeur_texte = 'ok'; } } $grandeur_texte = 'test'; $pdf->SetX($X_bloc_matiere); if (empty($tab_ele['matieres']["{$current_matiere}"]["profs_list"][$nb_pass_count + 1])) { $pdf->Cell($tab_modele_pdf["largeur_matiere"][$classe_id], $espace_matiere_prof, $text_prof, 'LRB', 1, 'L'); } if (!empty($tab_ele['matieres']["{$current_matiere}"]["profs_list"][$nb_pass_count + 1])) { $pdf->Cell($tab_modele_pdf["largeur_matiere"][$classe_id], $espace_matiere_prof, $text_prof, 'LR', 1, 'L'); } $nb_pass_count = $nb_pass_count + 1; } } $largeur_utilise = $tab_modele_pdf["largeur_matiere"][$classe_id]; // coefficient matière if ($tab_modele_pdf["active_coef_moyenne"][$classe_id] == '1') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_decal - $espace_entre_matier / 2); $pdf->SetFont('DejaVu', '', 10); if ($tab_ele['matieres']["{$current_matiere}"]['bonus'] == 'y') { $pdf->Cell($tab_modele_pdf["largeur_coef_moyenne"][$classe_id], $espace_entre_matier, $tab_ele['matieres']["{$current_matiere}"]['coef'] . "(*)", 1, 0, 'C'); } else { $pdf->Cell($tab_modele_pdf["largeur_coef_moyenne"][$classe_id], $espace_entre_matier, $tab_ele['matieres']["{$current_matiere}"]['coef'], 1, 0, 'C'); } $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_coef_moyenne"][$classe_id]; } //permet le calcul total des coefficients // if(empty($moyenne_min[$id_classe][$id_periode])) { $total_coef_en_calcul = $total_coef_en_calcul + $tab_ele['matieres']["{$current_matiere}"]['coef']; //} /* // nombre de note // 20081118 //if($tab_modele_pdf["active_nombre_note_case"][$classe_id]=='1') { if(($tab_modele_pdf["active_nombre_note_case"][$classe_id]=='1')&&($tab_modele_pdf["active_nombre_note"][$classe_id]!='1')) { $pdf->SetXY($X_note_moy_app+$largeur_utilise, $Y_decal-($espace_entre_matier/2)); $pdf->SetFont('DejaVu','',10); $valeur = $tab_bull['nbct'][$m][$i] . "/" . $tab_bull['groupe'][$m]['nbct']; $pdf->Cell($tab_modele_pdf["largeur_nombre_note"][$classe_id], $espace_entre_matier, $valeur,1,0,'C'); $largeur_utilise = $largeur_utilise+$tab_modele_pdf["largeur_nombre_note"][$classe_id]; } */ // les moyennes eleve, classe, min, max $cpt_ordre = 0; while (!empty($ordre_moyenne[$cpt_ordre])) { //eleve if ($tab_modele_pdf["active_moyenne_eleve"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'eleve') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_decal - $espace_entre_matier / 2); $pdf->SetFont('DejaVu', 'B', 10); $pdf->SetFillColor($tab_modele_pdf["couleur_reperage_eleve1"][$classe_id], $tab_modele_pdf["couleur_reperage_eleve2"][$classe_id], $tab_modele_pdf["couleur_reperage_eleve3"][$classe_id]); // calcul nombre de sous affichage $nb_sousaffichage = '1'; if (empty($active_coef_sousmoyene)) { $active_coef_sousmoyene = ''; } if ($active_coef_sousmoyene == '1') { $nb_sousaffichage = $nb_sousaffichage + 1; } if ($tab_modele_pdf["active_nombre_note"][$classe_id] == '1') { $nb_sousaffichage = $nb_sousaffichage + 1; } if ($tab_modele_pdf["toute_moyenne_meme_col"][$classe_id] == '1') { if ($tab_modele_pdf["active_moyenne_classe"][$classe_id] == '1') { $nb_sousaffichage = $nb_sousaffichage + 1; } } if ($tab_modele_pdf["toute_moyenne_meme_col"][$classe_id] == '1') { if ($tab_modele_pdf["active_moyenne_min"][$classe_id] == '1') { $nb_sousaffichage = $nb_sousaffichage + 1; } } if ($tab_modele_pdf["toute_moyenne_meme_col"][$classe_id] == '1') { if ($tab_modele_pdf["active_moyenne_max"][$classe_id] == '1') { $nb_sousaffichage = $nb_sousaffichage + 1; } } // On filtre si la moyenne est vide, on affiche seulement un tiret //if ($tab_ele['matieres']["$current_matiere"]['note']=="-") { if ($tab_ele['matieres']["{$current_matiere}"]['note'] == "-" || $tab_ele['matieres']["{$current_matiere}"]['statut'] == "v") { $valeur = "-"; } elseif ($tab_ele['matieres']["{$current_matiere}"]['statut'] != "") { $valeur = $tab_ele['matieres']["{$current_matiere}"]['statut']; } else { //$valeur = present_nombre($tab_ele['matieres']["$current_matiere"]['note'], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); $valeur = present_nombre(strtr($tab_ele['matieres']["{$current_matiere}"]['note'], ",", "."), $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); //$valeur = $tab_ele['matieres']["$current_matiere"]['note']; } $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_entre_matier / $nb_sousaffichage, $valeur, 1, 2, 'C', $tab_modele_pdf["active_reperage_eleve"][$classe_id]); $valeur = ""; if ($active_coef_sousmoyene == '1') { $pdf->SetFont('DejaVu', 'I', 7); $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_entre_matier / $nb_sousaffichage, 'coef. ' . $tab_ele['matieres']["{$current_matiere}"]['coef'], 'LR', 2, 'C', $tab_modele_pdf["active_reperage_eleve"][$classe_id]); } if ($tab_modele_pdf["toute_moyenne_meme_col"][$classe_id] == '1') { // On affiche toutes les moyennes dans la même colonne $pdf->SetFont('DejaVu', 'I', 7); if ($tab_modele_pdf["active_moyenne_classe"][$classe_id] == '1') { //if ($tab_bull['moy_classe_grp'][$m]=="-") { if ($tab_ele['matieres']["{$current_matiere}"]['moy_classe_grp'] == "-" || $tab_ele['matieres']["{$current_matiere}"]['moy_classe_grp'] == "") { $valeur = "-"; } else { $valeur = present_nombre($tab_ele['matieres']["{$current_matiere}"]['moy_classe_grp'], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); } $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_entre_matier / $nb_sousaffichage, 'cla.' . $valeur, 'LR', 2, 'C', $tab_modele_pdf["active_reperage_eleve"][$classe_id]); } if ($tab_modele_pdf["active_moyenne_min"][$classe_id] == '1') { //if ($tab_bull['moy_min_classe_grp'][$m]=="-") { //if (($tab_ele['matieres']["$current_matiere"]['moy_min_classe_grp']=="-")||($tab_ele['matieres']["$current_matiere"]['moy_min_classe_grp']=="")) { if ($tab_ele['matieres']["{$current_matiere}"]['moy_min_classe_grp'] == "-" || $tab_ele['matieres']["{$current_matiere}"]['moy_min_classe_grp'] == "" || $tab_ele['matieres']["{$current_matiere}"]['moy_min_classe_grp'] == "1000") { $valeur = "-"; } else { $valeur = present_nombre($tab_ele['matieres']["{$current_matiere}"]['moy_min_classe_grp'], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); } $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_entre_matier / $nb_sousaffichage, 'min.' . $valeur, 'LR', 2, 'C', $tab_modele_pdf["active_reperage_eleve"][$classe_id]); } if ($tab_modele_pdf["active_moyenne_max"][$classe_id] == '1') { //if ($tab_bull['moy_max_classe_grp'][$m]=="-") { //if (($tab_ele['matieres']["$current_matiere"]['moy_max_classe_grp']=="-")||($tab_ele['matieres']["$current_matiere"]['moy_max_classe_grp']=="")) { //if (($tab_ele['matieres']["$current_matiere"]['moy_max_classe_grp']=="-")||($tab_ele['matieres']["$current_matiere"]['moy_max_classe_grp']=="")||(strtr($tab_ele['matieres']["$current_matiere"]['moy_max_classe_grp'],",",".")<0)) { if ($tab_ele['matieres']["{$current_matiere}"]['moy_max_classe_grp'] == "-" || $tab_ele['matieres']["{$current_matiere}"]['moy_max_classe_grp'] == "" || $tab_ele['matieres']["{$current_matiere}"]['moy_max_classe_grp'] == '-1') { $valeur = "-"; } else { $valeur = present_nombre($tab_ele['matieres']["{$current_matiere}"]['moy_max_classe_grp'], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); } $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_entre_matier / $nb_sousaffichage, 'max.' . $valeur, 'LRD', 2, 'C', $tab_modele_pdf["active_reperage_eleve"][$classe_id]); $valeur = ''; // on remet à vide. } } /* if($tab_modele_pdf["active_nombre_note"][$classe_id]=='1') { $pdf->SetFont('DejaVu','I',7); $espace_pour_nb_note = $espace_entre_matier/$nb_sousaffichage; $espace_pour_nb_note = $espace_pour_nb_note / 2; $valeur1 = ''; $valeur2 = ''; if ($tab_bull['nbct'][$m][$i]!= 0 ) { $valeur1 = $tab_bull['nbct'][$m][$i].' note'; if($tab_bull['nbct'][$m][$i]>1){$valeur1.='s';} $valeur2 = 'sur '.$tab_bull['groupe'][$m]['nbct']; } $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_pour_nb_note, $valeur1, 'LR',2,'C',$tab_modele_pdf["active_reperage_eleve"][$classe_id]); $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_pour_nb_note, $valeur2, 'LRB',2,'C',$tab_modele_pdf["active_reperage_eleve"][$classe_id]); $valeur1 = ''; $valeur2 = ''; } $pdf->SetFont('DejaVu','',10); $pdf->SetFillColor(0, 0, 0); */ $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } // Fin affichage élève //classe if ($tab_modele_pdf["active_moyenne_classe"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'classe') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_decal - $espace_entre_matier / 2); //if ($tab_bull['moy_classe_grp'][$m]=="-") { if ($tab_ele['matieres']["{$current_matiere}"]['moy_classe_grp'] == "-" || $tab_ele['matieres']["{$current_matiere}"]['moy_classe_grp'] == "") { $valeur = "-"; } else { $valeur = present_nombre($tab_ele['matieres']["{$current_matiere}"]['moy_classe_grp'], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); } $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_entre_matier, $valeur, 'TLRB', 0, 'C'); /* //permet le calcul de la moyenne général de la classe if(empty($moyenne_classe[$id_classe][$id_periode])) { $total_moyenne_classe_en_calcul=$total_moyenne_classe_en_calcul+($matiere[$ident_eleve_aff][$id_periode][$m]['moy_classe']*$matiere[$ident_eleve_aff][$id_periode][$m]['coef']); } */ $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } //min if ($tab_modele_pdf["active_moyenne_min"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'min') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_decal - $espace_entre_matier / 2); $pdf->SetFont('DejaVu', '', 8); //if ($tab_bull['moy_min_classe_grp'][$m]=="-") { if ($tab_ele['matieres']["{$current_matiere}"]['moy_min_classe_grp'] == "-" || $tab_ele['matieres']["{$current_matiere}"]['moy_min_classe_grp'] == "" || $tab_ele['matieres']["{$current_matiere}"]['moy_min_classe_grp'] == "1000") { $valeur = "-"; } else { $valeur = present_nombre($tab_ele['matieres']["{$current_matiere}"]['moy_min_classe_grp'], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); } $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_entre_matier, $valeur, 'TLRB', 0, 'C'); /* //permet le calcul de la moyenne mini if(empty($moyenne_min[$id_classe][$id_periode])) { $total_moyenne_min_en_calcul=$total_moyenne_min_en_calcul+($matiere[$ident_eleve_aff][$id_periode][$m]['moy_min']*$matiere[$ident_eleve_aff][$id_periode][$m]['coef']); } */ $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } //max if ($tab_modele_pdf["active_moyenne_max"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'max') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_decal - $espace_entre_matier / 2); //if ($tab_bull['moy_max_classe_grp'][$m]== "-") { if ($tab_ele['matieres']["{$current_matiere}"]['moy_max_classe_grp'] == "-" || $tab_ele['matieres']["{$current_matiere}"]['moy_max_classe_grp'] == "" || $tab_ele['matieres']["{$current_matiere}"]['moy_max_classe_grp'] == '-1') { $valeur = "-"; } else { $valeur = present_nombre($tab_ele['matieres']["{$current_matiere}"]['moy_max_classe_grp'], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); } $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $espace_entre_matier, $valeur, 'TLRB', 0, 'C'); /* //permet le calcul de la moyenne maxi if(empty($moyenne_max[$id_classe][$id_periode])) { $total_moyenne_max_en_calcul=$total_moyenne_max_en_calcul+($matiere[$ident_eleve_aff][$id_periode][$m]['moy_max']*$matiere[$ident_eleve_aff][$id_periode][$m]['coef']); } */ $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } //$largeur_utilise = $largeur_utilise+$largeur_moyenne; /* // rang de l'élève if($tab_modele_pdf["active_rang"][$classe_id]=='1' and $ordre_moyenne[$cpt_ordre] == 'rang' ) { $pdf->SetXY($X_note_moy_app+$largeur_utilise, $Y_decal-($espace_entre_matier/2)); $pdf->SetFont('DejaVu','',8); // A REVOIR: J'AI l'EFFECTIF DU GROUPE, mais faut-il compter les élèves ABS, DISP,...? //if((isset($tab_bull['rang'][$i][$m]))&&(isset($tab_bull['groupe'][$m]['effectif']))) { //$pdf->Cell($tab_modele_pdf["largeur_rang"][$classe_id], $espace_entre_matier, $tab_bull['rang'][$i][$m].'/'.$tab_bull['groupe'][$m]['effectif'],1,0,'C'); if((isset($tab_bull['rang'][$m][$i]))&&(isset($tab_bull['groupe'][$m]['effectif']))) { $pdf->Cell($tab_modele_pdf["largeur_rang"][$classe_id], $espace_entre_matier, $tab_bull['rang'][$m][$i].'/'.$tab_bull['groupe'][$m]['effectif_avec_note'],1,0,'C'); } else { $pdf->Cell($tab_modele_pdf["largeur_rang"][$classe_id], $espace_entre_matier, '',1,0,'C'); } $largeur_utilise = $largeur_utilise+$tab_modele_pdf["largeur_rang"][$classe_id]; } // graphique de niveau if($tab_modele_pdf["active_graphique_niveau"][$classe_id]=='1' and $ordre_moyenne[$cpt_ordre] == 'niveau' ) { $pdf->SetXY($X_note_moy_app+$largeur_utilise, $Y_decal-($espace_entre_matier/2)); $pdf->SetFont('DejaVu','',10); $id_groupe_graph = $tab_bull['groupe'][$m]['id']; // placement de l'élève dans le graphique de niveau // AJOUT: La variable n'était pas initialisée dans le bulletin_pdf_avec_modele... $place_eleve=''; if ($tab_bull['note'][$m][$i]!="") { if(isset($tab_bull['place_eleve'][$m][$i])) { $place_eleve=$tab_bull['place_eleve'][$m][$i]; } } $data_grap[0]=$tab_bull['quartile1_grp'][$m]; $data_grap[1]=$tab_bull['quartile2_grp'][$m]; $data_grap[2]=$tab_bull['quartile3_grp'][$m]; $data_grap[3]=$tab_bull['quartile4_grp'][$m]; $data_grap[4]=$tab_bull['quartile5_grp'][$m]; $data_grap[5]=$tab_bull['quartile6_grp'][$m]; //if (array_sum($data_grap[$id_periode][$id_groupe_graph]) != 0) { if (array_sum($data_grap) != 0) { //$pdf->DiagBarre($X_note_moy_app+$largeur_utilise, $Y_decal-($espace_entre_matier/2), $tab_modele_pdf["largeur_niveau"][$classe_id], $espace_entre_matier, $data_grap[$id_periode][$id_groupe_graph], $place_eleve); $pdf->DiagBarre($X_note_moy_app+$largeur_utilise, $Y_decal-($espace_entre_matier/2), $tab_modele_pdf["largeur_niveau"][$classe_id], $espace_entre_matier, $data_grap, $place_eleve); } $place_eleve=''; // on vide la variable $largeur_utilise = $largeur_utilise+$tab_modele_pdf["largeur_niveau"][$classe_id]; } */ //appréciation if ($tab_modele_pdf["active_appreciation"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'appreciation') { // si on autorise l'affichage des sous matière et s'il y en a alors on les affiche // $id_groupe_select = $tab_bull['groupe'][$m]['id']; $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_decal - $espace_entre_matier / 2); $X_sous_matiere = 0; $largeur_sous_matiere = 0; /* if($tab_modele_pdf["autorise_sous_matiere"][$classe_id]=='1' and !empty($tab_bull['groupe'][$m][$i]['cn_nom'])) { $X_sous_matiere = $X_note_moy_app+$largeur_utilise; $Y_sous_matiere = $Y_decal-($espace_entre_matier/2); $n=0; $largeur_texte_sousmatiere=0; $largeur_sous_matiere=0; while( !empty($tab_bull['groupe'][$m][$i]['cn_nom'][$n]) ) { $pdf->SetFont('DejaVu','',8); $largeur_texte_sousmatiere = $pdf->GetStringWidth($tab_bull['groupe'][$m][$i]['cn_nom'][$n].': '.$tab_bull['groupe'][$m][$i]['cn_note'][$n]); if($largeur_sous_matiere<$largeur_texte_sousmatiere) { $largeur_sous_matiere=$largeur_texte_sousmatiere; } $n = $n + 1; } if($largeur_sous_matiere!='0') { $largeur_sous_matiere = $largeur_sous_matiere + 2; } $n=0; while( !empty($tab_bull['groupe'][$m][$i]['cn_nom'][$n]) ) { $pdf->SetXY($X_sous_matiere, $Y_sous_matiere); $pdf->SetFont('DejaVu','',8); $pdf->Cell($largeur_sous_matiere, $espace_entre_matier/count($tab_bull['groupe'][$m][$i]['cn_nom']), ($tab_bull['groupe'][$m][$i]['cn_nom'][$n].': '.$tab_bull['groupe'][$m][$i]['cn_note'][$n]),1,0,'L'); $Y_sous_matiere = $Y_sous_matiere+$espace_entre_matier/count($tab_bull['groupe'][$m][$i]['cn_nom']); $n = $n + 1; } $largeur_utilise = $largeur_utilise+$largeur_sous_matiere; } */ $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_decal - $espace_entre_matier / 2); // calcul de la taille du texte des appréciation $hauteur_caractere_appreciation = 9; $pdf->SetFont('DejaVu', '', $hauteur_caractere_appreciation); //suppression des espace en début et en fin $app_aff = trim($tab_ele['matieres']["{$current_matiere}"]['app']); /* fich_debug_bull("__________________________________________\n"); fich_debug_bull("$app_aff\n"); fich_debug_bull("__________________________________________\n"); */ // DEBUT AJUSTEMENT TAILLE APPRECIATION $taille_texte_total = $pdf->GetStringWidth($app_aff); $largeur_appreciation2 = $largeur_appreciation - $largeur_sous_matiere; if ($use_cell_ajustee == "n") { //$taille_texte = (($espace_entre_matier/3)*$largeur_appreciation2); $nb_ligne_app = '2.8'; //$nb_ligne_app = '3.8'; //$nb_ligne_app = '4.8'; $taille_texte_max = $nb_ligne_app * ($largeur_appreciation2 - 4); //$taille_texte_max = $nb_ligne_app * ($largeur_appreciation2); $grandeur_texte = 'test'; fich_debug_bull("\$taille_texte_total={$taille_texte_total}\n"); fich_debug_bull("\$largeur_appreciation2={$largeur_appreciation2}\n"); fich_debug_bull("\$nb_ligne_app={$nb_ligne_app}\n"); //fich_debug_bull("\$taille_texte_max = \$nb_ligne_app * (\$largeur_appreciation2-4)=$nb_ligne_app * ($largeur_appreciation2-4)=$taille_texte_max\n"); fich_debug_bull("\$taille_texte_max = \$nb_ligne_app * (\$largeur_appreciation2)={$nb_ligne_app} * ({$largeur_appreciation2})={$taille_texte_max}\n"); while ($grandeur_texte != 'ok') { if ($taille_texte_max < $taille_texte_total) { $hauteur_caractere_appreciation = $hauteur_caractere_appreciation - 0.3; //$hauteur_caractere_appreciation = $hauteur_caractere_appreciation-0.1; $pdf->SetFont('DejaVu', '', $hauteur_caractere_appreciation); $taille_texte_total = $pdf->GetStringWidth($app_aff); } else { $grandeur_texte = 'ok'; } } $grandeur_texte = 'test'; $pdf->drawTextBox($app_aff, $largeur_appreciation2, $espace_entre_matier, 'J', 'M', 1); } else { $texte = $app_aff; //$texte="Bla bla\nbli ".$app_aff; $taille_max_police = $hauteur_caractere_appreciation; $taille_min_police = ceil($taille_max_police / 3); $largeur_dispo = $largeur_appreciation2; $h_cell = $espace_entre_matier; cell_ajustee($texte, $pdf->GetX(), $pdf->GetY(), $largeur_dispo, $h_cell, $taille_max_police, $taille_min_police, 'LRBT'); } $pdf->SetFont('DejaVu', '', 10); $largeur_utilise = $largeur_utilise + $largeur_appreciation2; //$largeur_utilise = 0; } $cpt_ordre = $cpt_ordre + 1; } $largeur_utilise = 0; // fin de boucle d'ordre $Y_decal = $Y_decal + $espace_entre_matier / 2; //} } //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // Ligne moyenne générale //bas du tableau des note et app si les affichage des moyennes ne sont pas affiché le bas du tableau ne seras pas affiché if ($tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne_general"][$classe_id] == '1') { $X_note_moy_app = $tab_modele_pdf["X_note_app"][$classe_id]; $Y_note_moy_app = $tab_modele_pdf["Y_note_app"][$classe_id] + $tab_modele_pdf["hauteur_note_app"][$classe_id] - $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id]; $pdf->SetXY($X_note_moy_app, $Y_note_moy_app); $pdf->SetFont('DejaVu', '', 10); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); $pdf->Cell($tab_modele_pdf["largeur_matiere"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], "Moyenne générale", 1, 0, 'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); $largeur_utilise = $tab_modele_pdf["largeur_matiere"][$classe_id]; // coefficient matière if ($tab_modele_pdf["active_coef_moyenne"][$classe_id] == '1') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_note_moy_app); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); $pdf->Cell($tab_modele_pdf["largeur_coef_moyenne"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], "", 1, 0, 'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_coef_moyenne"][$classe_id]; } /* // nombre de note // 20081118 //if($tab_modele_pdf["active_nombre_note_case"][$classe_id]=='1') { if(($tab_modele_pdf["active_nombre_note_case"][$classe_id]=='1')&&($tab_modele_pdf["active_nombre_note"][$classe_id]!='1')) { $pdf->SetXY($X_note_moy_app+$largeur_utilise, $Y_note_moy_app); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); $pdf->Cell($tab_modele_pdf["largeur_nombre_note"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], "",1,0,'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_nombre_note"][$classe_id]; } */ $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_note_moy_app); $cpt_ordre = 0; while (!empty($ordre_moyenne[$cpt_ordre])) { //eleve if ($tab_modele_pdf["active_moyenne_eleve"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'eleve') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_note_moy_app); $pdf->SetFont('DejaVu', 'B', 10); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); // On a deux paramètres de couleur qui se croisent. On utilise une variable tierce. $utilise_couleur = $tab_modele_pdf["couleur_moy_general"][$classe_id]; if ($tab_modele_pdf["active_reperage_eleve"][$classe_id] == '1') { // Si on affiche une couleur spécifique pour les moyennes de l'élève, // on utilise cette couleur ici aussi, quoi qu'il arrive $pdf->SetFillColor($tab_modele_pdf["couleur_reperage_eleve1"][$classe_id], $tab_modele_pdf["couleur_reperage_eleve2"][$classe_id], $tab_modele_pdf["couleur_reperage_eleve3"][$classe_id]); $utilise_couleur = 1; } if ($tab_ele['moyenne'] == "" || $tab_ele['moyenne'] == "-") { $val_tmp = "-"; } else { //$val_tmp=present_nombre($tab_bull['moy_gen_eleve'][$i], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); //$val_tmp=$tab_bull['moy_gen_eleve'][$i]; $val_tmp = present_nombre(my_ereg_replace(',', '.', $tab_ele['moyenne']), $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); /* $tmp_fich=fopen("/tmp/test_moy_gen.txt","a+"); fwrite($tmp_fich,$tab_bull['eleve'][$i]['login']." present_nombre(\$tab_bull['moy_gen_eleve'][$i], \$tab_modele_pdf[\"arrondie_choix\"][$classe_id], \$tab_modele_pdf[\"nb_chiffre_virgule\"][$classe_id], \$tab_modele_pdf[\"chiffre_avec_zero\"][$classe_id])=present_nombre(".$tab_bull['moy_gen_eleve'][$i].", ".$tab_modele_pdf["arrondie_choix"][$classe_id].", ".$tab_modele_pdf["nb_chiffre_virgule"][$classe_id].",". $tab_modele_pdf["chiffre_avec_zero"][$classe_id].")=".present_nombre($tab_bull['moy_gen_eleve'][$i], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id])."\n"); fwrite($tmp_fich,$tab_bull['eleve'][$i]['login']." present_nombre(my_ereg_replace(',','.',\$tab_bull['moy_gen_eleve'][$i]), \$tab_modele_pdf[\"arrondie_choix\"][$classe_id], \$tab_modele_pdf[\"nb_chiffre_virgule\"][$classe_id], \$tab_modele_pdf[\"chiffre_avec_zero\"][$classe_id])=".present_nombre(my_ereg_replace(',','.',$tab_bull['moy_gen_eleve'][$i]), $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id])."\n"); fclose($tmp_fich); */ } //$pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], present_nombre($tab_bull['moy_gen_eleve'][$i], $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]),1,0,'C',$utilise_couleur); $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], $val_tmp, 1, 0, 'C', $utilise_couleur); $pdf->SetFont('DejaVu', '', 10); $pdf->SetFillColor(0, 0, 0); $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } //classe if ($tab_modele_pdf["active_moyenne_classe"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'classe') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_note_moy_app); $pdf->SetFont('DejaVu', '', 8); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); /* if( $total_coef_en_calcul != 0){ $moyenne_classe = $total_moyenne_classe_en_calcul / $total_coef_en_calcul; } else{ $moyenne_classe = '-'; } */ if ($tab_ele['moy_generale_classe'] == "" || $tab_ele['moy_generale_classe'] == "-") { $moyenne_classe = '-'; } else { $moyenne_classe = present_nombre(my_ereg_replace(',', '.', $tab_ele['moy_generale_classe']), $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]); } if ($moyenne_classe != '-') { //$moyenne_classe=$tab_bull['moy_generale_classe']; $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], $moyenne_classe, 1, 0, 'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); } else { $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], '-', 1, 0, 'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); } $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } //min if ($tab_modele_pdf["active_moyenne_min"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'min') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_note_moy_app); $pdf->SetFont('DejaVu', '', 8); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); /* if($total_coef_en_calcul != 0 and $tab_modele_pdf["affiche_moyenne_mini_general"][$classe_id] == '1' ){ $moyenne_min = $total_moyenne_min_en_calcul / $total_coef_en_calcul; } else{ $moyenne_min = '-'; } */ if ($tab_ele['moy_min_classe'] != '-') { //$moyenne_min=$tab_moy_min_classe[$classe_id][$id_periode]; $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], present_nombre(my_ereg_replace(',', '.', $tab_ele['moy_min_classe']), $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]), 1, 0, 'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); } else { $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], '-', 1, 0, 'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); } $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } //max if ($tab_modele_pdf["active_moyenne_max"][$classe_id] == '1' and $tab_modele_pdf["active_moyenne"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'max') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_note_moy_app); $pdf->SetFont('DejaVu', '', 8); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); /* if($total_coef_en_calcul != 0 and $tab_modele_pdf["affiche_moyenne_maxi_general"][$classe_id] == '1' ){ $moyenne_max = $total_moyenne_max_en_calcul / $total_coef_en_calcul; } else { $moyenne_max = '-'; } */ if ($tab_ele['moy_max_classe'] != '-') { $moyenne_max = $tab_ele['moy_max_classe']; $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], present_nombre(my_ereg_replace(',', '.', $tab_ele['moy_max_classe']), $tab_modele_pdf["arrondie_choix"][$classe_id], $tab_modele_pdf["nb_chiffre_virgule"][$classe_id], $tab_modele_pdf["chiffre_avec_zero"][$classe_id]), 1, 0, 'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); } else { $pdf->Cell($tab_modele_pdf["largeur_d_une_moyenne"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], '-', 1, 0, 'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); } $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_d_une_moyenne"][$classe_id]; } /* // rang de l'élève if($tab_modele_pdf["active_rang"][$classe_id]=='1' and $ordre_moyenne[$cpt_ordre] == 'rang') { $pdf->SetXY($X_note_moy_app+$largeur_utilise, $Y_note_moy_app); $pdf->SetFont('DejaVu','',8); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); if ($tab_bull['rang_classe'][$i]!= 0) { $rang_a_afficher=$tab_bull['rang_classe'][$i].'/'.$tab_bull['eff_classe']; } else { $rang_a_afficher = ""; } $pdf->Cell($tab_modele_pdf["largeur_rang"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], $rang_a_afficher ,'TLRB',0,'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); $largeur_utilise = $largeur_utilise + $tab_modele_pdf["largeur_rang"][$classe_id]; } // graphique de niveau if($tab_modele_pdf["active_graphique_niveau"][$classe_id]=='1' and $ordre_moyenne[$cpt_ordre] == 'niveau' ) { $pdf->SetXY($X_note_moy_app+$largeur_utilise, $Y_note_moy_app); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); // placement de l'élève dans le graphique de niveau //if ($tab_bull['moy_gen_eleve'][$i]!="") { if (($tab_bull['moy_gen_eleve'][$i]!="")&&($tab_bull['moy_gen_eleve'][$i]!="-")) { $place_eleve=$tab_bull['place_eleve_classe'][$i]; } $data_grap_classe[0]=$tab_bull['quartile1_classe_gen']; $data_grap_classe[1]=$tab_bull['quartile2_classe_gen']; $data_grap_classe[2]=$tab_bull['quartile3_classe_gen']; $data_grap_classe[3]=$tab_bull['quartile4_classe_gen']; $data_grap_classe[4]=$tab_bull['quartile5_classe_gen']; $data_grap_classe[5]=$tab_bull['quartile6_classe_gen']; if (array_sum($data_grap_classe) != 0) { //$pdf->DiagBarre($X_note_moy_app+$largeur_utilise, $Y_note_moy_app, $tab_modele_pdf["largeur_niveau"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], $data_grap_classe[$id_periode][$id_classe_selection], $place_eleve); $pdf->DiagBarre($X_note_moy_app+$largeur_utilise, $Y_note_moy_app, $tab_modele_pdf["largeur_niveau"][$classe_id], $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], $data_grap_classe, $place_eleve); } $place_eleve=''; // on vide la variable $largeur_utilise = $largeur_utilise+$tab_modele_pdf["largeur_niveau"][$classe_id]; } */ //appréciation if ($tab_modele_pdf["active_appreciation"][$classe_id] == '1' and $ordre_moyenne[$cpt_ordre] == 'appreciation') { $pdf->SetXY($X_note_moy_app + $largeur_utilise, $Y_note_moy_app); $pdf->SetFillColor($tab_modele_pdf["couleur_moy_general1"][$classe_id], $tab_modele_pdf["couleur_moy_general2"][$classe_id], $tab_modele_pdf["couleur_moy_general3"][$classe_id]); $pdf->Cell($largeur_appreciation, $tab_modele_pdf["hauteur_entete_moyenne_general"][$classe_id], '', 'TLRB', 0, 'C', $tab_modele_pdf["couleur_moy_general"][$classe_id]); $largeur_utilise = $largeur_utilise + $largeur_appreciation; } $cpt_ordre = $cpt_ordre + 1; } $largeur_utilise = 0; // fin de boucle d'ordre $pdf->SetFillColor(0, 0, 0); } //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ $Y_avis_cons_init = $tab_modele_pdf["Y_avis_cons"][$classe_id]; $Y_sign_chef_init = $tab_modele_pdf["Y_sign_chef"][$classe_id]; $hauteur_avis_cons_init = $tab_modele_pdf["hauteur_avis_cons"][$classe_id] - 0.5; $hauteur_sign_chef_init = $tab_modele_pdf["hauteur_sign_chef"][$classe_id] - 0.5; // = = = == = = === bloc avis du conseil de classe = = = == = = == = = = if ($tab_modele_pdf["active_bloc_avis_conseil"][$classe_id] == '1') { if ($tab_modele_pdf["cadre_avis_cons"][$classe_id] != 0) { //$pdf->Rect($tab_modele_pdf["X_avis_cons"][$classe_id], $tab_modele_pdf["Y_avis_cons"][$classe_id], $tab_modele_pdf["longeur_avis_cons"][$classe_id], $tab_modele_pdf["hauteur_avis_cons"][$classe_id], 'D'); $pdf->Rect($tab_modele_pdf["X_avis_cons"][$classe_id], $Y_avis_cons_init, $tab_modele_pdf["longeur_avis_cons"][$classe_id], $hauteur_avis_cons_init, 'D'); } //$pdf->SetXY($tab_modele_pdf["X_avis_cons"][$classe_id],$tab_modele_pdf["Y_avis_cons"][$classe_id]); $pdf->SetXY($tab_modele_pdf["X_avis_cons"][$classe_id], $Y_avis_cons_init); if ($tab_modele_pdf["taille_titre_bloc_avis_conseil"][$classe_id] != '' and $tab_modele_pdf["taille_titre_bloc_avis_conseil"][$classe_id] < '15') { $taille = $tab_modele_pdf["taille_titre_bloc_avis_conseil"][$classe_id]; } else { $taille = '10'; } $pdf->SetFont('DejaVu', 'I', $taille); /* if ( $tab_modele_pdf["titre_bloc_avis_conseil"][$classe_id] != '' ) { $tt_avis = $tab_modele_pdf["titre_bloc_avis_conseil"][$classe_id]; } else { $tt_avis = 'Avis du Conseil de classe:'; } */ $tt_avis = 'Avis général :'; $pdf->Cell($tab_modele_pdf["longeur_avis_cons"][$classe_id], 5, $tt_avis, 0, 2, ''); //$pdf->SetXY($tab_modele_pdf["X_avis_cons"][$classe_id]+2.5,$tab_modele_pdf["Y_avis_cons"][$classe_id]+5); $pdf->SetXY($tab_modele_pdf["X_avis_cons"][$classe_id] + 2.5, $Y_avis_cons_init + 5); $pdf->SetFont('DejaVu', '', 10); $texteavis = $tab_ele['avis']; if ($use_cell_ajustee == "n") { $pdf->drawTextBox($texteavis, $tab_modele_pdf["longeur_avis_cons"][$classe_id] - 5, $hauteur_avis_cons_init - 10, 'J', 'M', 0); } else { $texte = $texteavis; $taille_max_police = 10; $taille_min_police = ceil($taille_max_police / 3); $largeur_dispo = $tab_modele_pdf["longeur_avis_cons"][$classe_id] - 5; $h_cell = $hauteur_avis_cons_init - 10; cell_ajustee($texte, $pdf->GetX(), $pdf->GetY(), $largeur_dispo, $h_cell, $taille_max_police, $taille_min_police, ''); } $X_pp_aff = $tab_modele_pdf["X_avis_cons"][$classe_id]; //$Y_pp_aff=$tab_modele_pdf["Y_avis_cons"][$classe_id]+$tab_modele_pdf["hauteur_avis_cons"][$classe_id]-5; $Y_pp_aff = $Y_avis_cons_init + $hauteur_avis_cons_init - 5; $pdf->SetXY($X_pp_aff, $Y_pp_aff); if ($tab_modele_pdf["taille_profprincipal_bloc_avis_conseil"][$classe_id] != '' and $tab_modele_pdf["taille_profprincipal_bloc_avis_conseil"][$classe_id] < '15') { $taille = $tab_modele_pdf["taille_profprincipal_bloc_avis_conseil"][$classe_id]; } else { $taille = '10'; } $pdf->SetFont('DejaVu', 'I', $taille); // Le nom du professeur principal $pp_classe[$i] = ""; if (isset($tab_ele['pp']['login'])) { $gepi_prof_suivi = retourne_denomination_pp($tab_ele['id_classe']); $pp_classe[$i] = "<b>" . ucfirst($gepi_prof_suivi) . "</b> <i>" . affiche_utilisateur($tab_ele['pp']['login'], $tab_ele['id_classe']) . "</i>"; } else { $pp_classe[$i] = ""; } //$pdf->MultiCellTag(200, 5, ($pp_classe[$i]), '', 'J', ''); //$pdf->ext_MultiCellTag(200, 5, ($pp_classe[$i]), '', 'J', ''); $texte = $pp_classe[$i]; $taille_max_police = $taille; $taille_min_police = ceil($taille_max_police / 3); $largeur_dispo = 200; $h_cell = 5; cell_ajustee($texte, $pdf->GetX(), $pdf->GetY(), $largeur_dispo, $h_cell, $taille_max_police, $taille_min_police, ''); } // = = = == = = == = = == = = = bloc du président du conseil de classe = = = == = = === if ($tab_modele_pdf["active_bloc_chef"][$classe_id] == '1') { if ($tab_modele_pdf["cadre_sign_chef"][$classe_id] != 0) { //$pdf->Rect($tab_modele_pdf["X_sign_chef"][$classe_id], $tab_modele_pdf["Y_sign_chef"][$classe_id], $tab_modele_pdf["longeur_sign_chef"][$classe_id], $tab_modele_pdf["hauteur_sign_chef"][$classe_id], 'D'); $pdf->Rect($tab_modele_pdf["X_sign_chef"][$classe_id], $Y_sign_chef_init, $tab_modele_pdf["longeur_sign_chef"][$classe_id], $hauteur_sign_chef_init, 'D'); } //$pdf->SetXY($tab_modele_pdf["X_sign_chef"][$classe_id],$tab_modele_pdf["Y_sign_chef"][$classe_id]); $pdf->SetXY($tab_modele_pdf["X_sign_chef"][$classe_id], $Y_sign_chef_init); $pdf->SetFont('DejaVu', '', 10); if ($tab_modele_pdf["affichage_haut_responsable"][$classe_id] == '1') { if ($tab_modele_pdf["affiche_fonction_chef"][$classe_id] == '1') { if ($tab_modele_pdf["taille_texte_fonction_chef"][$classe_id] != '' and $tab_modele_pdf["taille_texte_fonction_chef"][$classe_id] != '0' and $tab_modele_pdf["taille_texte_fonction_chef"][$classe_id] < '15') { $taille = $tab_modele_pdf["taille_texte_fonction_chef"][$classe_id]; } else { $taille = '10'; } $pdf->SetFont('DejaVu', 'B', $taille); $pdf->Cell($tab_modele_pdf["longeur_sign_chef"][$classe_id], 5, $tab_bull['formule'], 0, 2, ''); } if ($tab_modele_pdf["taille_texte_identitee_chef"][$classe_id] != '' and $tab_modele_pdf["taille_texte_identitee_chef"][$classe_id] != '0' and $tab_modele_pdf["taille_texte_identitee_chef"][$classe_id] < '15') { $taille = $tab_modele_pdf["taille_texte_identitee_chef"][$classe_id]; } else { $taille_avis = '8'; } $pdf->SetFont('DejaVu', 'I', $taille); $pdf->Cell($tab_modele_pdf["longeur_sign_chef"][$classe_id], 5, $tab_ele['suivi_par'], 0, 2, ''); } else { //$pdf->MultiCell($longeur_sign_chef[$classe_id],5, "Visa du Chef d'établissement\nou de son délégué",0,2,''); $pdf->MultiCell($tab_modele_pdf["longeur_sign_chef"][$classe_id], 5, "Visa du Chef d'établissement\nou de son délégué", 0, 2, ''); } } } } }
$sql = "SELECT DISTINCT e.* FROM eleves e,\n\t\t\t\t\t\t\t\t\tj_eleves_classes jec\n\t\t\t\t\t\tWHERE jec.login=e.login AND\n\t\t\t\t\t\t\t\t\tjec.id_classe='" . $tab_id_classe[$i] . "'\n\t\t\t\t\t\tORDER BY e.nom,e.prenom;"; } else { // Le prof est PP d'au moins une partie des élèves de la classe $sql = "SELECT DISTINCT e.* FROM eleves e,\n\t\t\t\t\t\t\t\t\tj_eleves_classes jec,\n\t\t\t\t\t\t\t\t\tj_eleves_professeurs jep\n\t\t\t\t\t\tWHERE jec.login=e.login AND\n\t\t\t\t\t\t\t\tjec.login=jep.login AND\n\t\t\t\t\t\t\t\tjep.professeur='" . $_SESSION['login'] . "' AND\n\t\t\t\t\t\t\t\tjec.id_classe='" . $tab_id_classe[$i] . "'\n\t\t\t\t\t\tORDER BY e.nom,e.prenom;"; $test_acces = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test_acces) == 0) { // On pourrait mettre un tentative_intrusion() $gepi_prof_suivi = ucfirst(retourne_denomination_pp($tab_id_classe[$i])); echo "<p>Vous n'êtes pas " . $gepi_prof_suivi . " de cette classe, donc pas autorisé à accéder aux relevés de notes de ces élèves.</p>\n"; require "../lib/footer.inc.php"; die; } } } else { // On pourrait mettre un tentative_intrusion() $gepi_prof_suivi = ucfirst(retourne_denomination_pp($tab_id_classe[$i])); echo "<p>Vous n'êtes pas " . $gepi_prof_suivi . " de cette classe, donc pas autorisé à accéder aux relevés de notes de ces élèves.</p>\n"; require "../lib/footer.inc.php"; die; } } elseif ($_SESSION['statut'] == 'eleve' && getSettingValue("GepiAccesReleveEleve") == "yes") { $sql = "SELECT DISTINCT e.* FROM eleves e, j_eleves_classes jec WHERE (jec.id_classe='" . $tab_id_classe[$i] . "' AND jec.login='******'login'] . "' AND jec.login=e.login);"; } elseif ($_SESSION['statut'] == 'responsable' && getSettingValue("GepiAccesReleveParent") == "yes") { $sql = "(SELECT DISTINCT e.* FROM eleves e, j_eleves_classes jec, responsables2 r, resp_pers rp\n\t\t\t\t\tWHERE (e.ele_id=r.ele_id AND\n\t\t\t\t\t\t\tr.pers_id=rp.pers_id AND\n\t\t\t\t\t\t\trp.login='******'login'] . "' AND\n\t\t\t\t\t\t\tjec.id_classe='" . $tab_id_classe[$i] . "' AND\n\t\t\t\t\t\t\t(r.resp_legal='1' OR r.resp_legal='2') AND\n\t\t\t\t\t\t\tjec.login=e.login))"; if (getSettingAOui('GepiMemesDroitsRespNonLegaux')) { $sql .= " UNION (SELECT DISTINCT e.* FROM eleves e, j_eleves_classes jec, responsables2 r, resp_pers rp\n\t\t\t\t\tWHERE (e.ele_id=r.ele_id AND\n\t\t\t\t\t\t\tr.pers_id=rp.pers_id AND\n\t\t\t\t\t\t\trp.login='******'login'] . "' AND\n\t\t\t\t\t\t\tjec.id_classe='" . $tab_id_classe[$i] . "' AND\n\t\t\t\t\t\t\tr.resp_legal='0' AND\n\t\t\t\t\t\t\tr.acces_sp='y' AND \n\t\t\t\t\t\t\tjec.login=e.login))"; } $sql .= ";"; } elseif ($_SESSION['statut'] == 'autre') { $sql = "SELECT DISTINCT e.* FROM eleves e,\n\t\t\t\t\t\t\tj_eleves_classes jec\n\t\t\t\tWHERE jec.login=e.login AND\n\t\t\t\t\t\t\tjec.id_classe='" . $tab_id_classe[$i] . "'\n\t\t\t\tORDER BY e.nom,e.prenom;"; } else {
function bulletin_classe($tab_moy, $total, $periode1, $periode2, $nom_periode, $gepiYear, $id_classe, $test_coef, $affiche_categories, $couleur_lignes = NULL) { global $nb_notes, $nombre_eleves, $type_etablissement, $type_etablissement2; global $affiche_colonne_moy_classe; //$affiche_colonne_moy_classe="n"; // 20121209 global $avec_moy_min_max_classe; //global $avec_rapport_effectif; $avec_rapport_effectif = "y"; $alt = 1; // données requises : //- $total : nombre total d'élèves //- $periode1 : numéro de la première période à afficher //- $periode2 : numéro de la dernière période à afficher //- $nom_periode : tableau des noms de période //- $gepiYear : année //- $id_classe : identifiant de la classe. //==================== $affiche_coef = sql_query1("SELECT display_coef FROM classes WHERE id='" . $id_classe . "'"); //echo "\$affiche_coef=$affiche_coef<br />\n"; //==================== //========================= // AJOUT: boireaus 20080316 //global $tab_moy_gen; //global $tab_moy_cat_classe; global $display_moy_gen; //========================= global $affiche_deux_moy_gen; global $bull_simp_larg_tab, $bull_simp_larg_col1, $bull_simp_larg_col2, $bull_simp_larg_col3, $bull_simp_larg_col4; //echo "\$affiche_categories=$affiche_categories<br />"; if (!getSettingValue("bull_intitule_app")) { $bull_intitule_app = "Appréciations/Conseils"; } else { $bull_intitule_app = getSettingValue("bull_intitule_app"); } $nb_periodes = $periode2 - $periode1 + 1; //============================ // Liste des profs principaux: $data_profsuivi = mysqli_query($GLOBALS["mysqli"], "SELECT DISTINCT u.login FROM utilisateurs u, j_eleves_professeurs j WHERE (j.professeur = u.login AND j.id_classe='{$id_classe}') "); $current_profsuivi_login = array(); if (mysqli_num_rows($data_profsuivi) > 0) { while ($lig_profsuivi = mysqli_fetch_object($data_profsuivi)) { $current_profsuivi_login[] = $lig_profsuivi->login; } } //============================ unset($tab_acces_app); $tab_acces_app = array(); $tab_acces_app = acces_appreciations($periode1, $periode2, $id_classe); $call_classe = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM classes WHERE id='{$id_classe}'"); $classe = old_mysql_result($call_classe, 0, "classe"); //------------------------------- // On affiche l'en-tête : Les données de la classe //------------------------------- echo "<span class='bull_simpl'><span class='bold'>Classe de {$classe}</span>"; echo ", année scolaire {$gepiYear}<br />\n"; if ($periode1 < $periode2) { echo "Résultats de : "; $nb = $periode1; while ($nb < $periode2 + 1) { echo $nom_periode[$nb]; if ($nb < $periode2) { echo " - "; } $nb++; } echo ".</span>"; } else { $temp = my_strtolower($nom_periode[$periode1]); echo "Résultats du {$temp}.</span>"; } // //------------------------------- // Fin de l'en-tête //echo "\$test_coef=$test_coef<br />"; // On initialise le tableau : $bull_simp_larg_tab_defaut = 680; $bull_simp_larg_col1_defaut = 120; $bull_simp_larg_col2_defaut = 38; $bull_simp_larg_col3_defaut = 38; $bull_simp_larg_col4_defaut = 20; $larg_tab = $bull_simp_larg_tab_defaut; $larg_col1 = $bull_simp_larg_col1_defaut; $larg_col2 = $bull_simp_larg_col3_defaut; $larg_col3 = $bull_simp_larg_col3_defaut; $larg_col4 = $bull_simp_larg_col4_defaut; if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_tab)) { $larg_tab = $bull_simp_larg_tab; } if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_col1)) { $larg_col1 = $bull_simp_larg_col1; } if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_col2)) { $larg_col2 = $bull_simp_larg_col2; } if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_col3)) { $larg_col3 = $bull_simp_larg_col3; } if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_col4)) { $larg_col4 = $bull_simp_larg_col4; } if ($bull_simp_larg_tab < $bull_simp_larg_col1 + $bull_simp_larg_col2 + $bull_simp_larg_col3 + $bull_simp_larg_col4) { $larg_tab = $bull_simp_larg_tab_defaut; $larg_col1 = $bull_simp_larg_col1_defaut; $larg_col2 = $bull_simp_larg_col2_defaut; $larg_col3 = $bull_simp_larg_col3_defaut; $larg_col4 = $bull_simp_larg_col4_defaut; } $larg_col5 = $larg_tab - $larg_col1 - $larg_col2 - $larg_col3 - $larg_col4; //echo "<table width=$larg_tab border=1 cellspacing=1 cellpadding=1>\n"; echo "<table width='{$larg_tab}' class='boireaus' cellspacing='1' cellpadding='1' summary=''>\n"; echo "<tr><td width=\"{$larg_col1}\" class='bull_simpl'>{$total} élèves"; echo "</td>\n"; //==================== if ($affiche_coef == 'y') { if ($test_coef != 0) { echo "<td width=\"{$larg_col2}\" align=\"center\"><p class='bull_simpl'>Coef.</p></td>\n"; } } //==================== if ($avec_rapport_effectif == "y") { echo "<td width=\"{$larg_col2}\" align=\"center\" class='bull_simpl'>Effectif</td>\n"; } if ($affiche_colonne_moy_classe != 'n') { echo "<td width=\"{$larg_col2}\" align=\"center\" class='bull_simpl'>Classe</td>\n"; } echo "<td width=\"{$larg_col5}\" class='bull_simpl'>{$bull_intitule_app}</td></tr>\n"; // Récupération des noms de categories $get_cat = mysqli_query($GLOBALS["mysqli"], "SELECT id FROM matieres_categories"); $categories = array(); while ($row = mysqli_fetch_array($get_cat, MYSQLI_ASSOC)) { $categories[] = $row["id"]; } $cat_names = array(); foreach ($categories as $cat_id) { $cat_names[$cat_id] = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT nom_complet FROM matieres_categories WHERE id = '" . $cat_id . "'"), 0); } // Nombre de groupes sur la classe $nombre_groupes = count($tab_moy['current_group']); $prev_cat_id = null; //while ($j < $nombre_groupes) { for ($j = 0; $j < $nombre_groupes; $j++) { $inser_ligne = 'no'; // On récupère le groupe depuis $tab_moy $current_group = $tab_moy['current_group'][$j]; $ligne_groupe_visible = "y"; if ($_SESSION['statut'] == 'eleve') { $sql = "SELECT 1=1 FROM j_eleves_groupes WHERE id_groupe='" . $current_group['id'] . "' AND login='******'login'] . "';"; $test_grp = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test_grp) == 0) { $ligne_groupe_visible = "n"; } } elseif ($_SESSION['statut'] == 'responsable') { $sql = "SELECT 1=1 FROM j_eleves_groupes WHERE id_groupe='" . $current_group['id'] . "' AND login IN (SELECT e.login FROM eleves e, resp_pers rp, responsables2 r WHERE e.ele_id=r.ele_id AND rp.pers_id=r.pers_id AND (r.resp_legal='1' OR r.resp_legal='2') AND rp.login='******'login'] . "');"; //echo "$sql<br />"; $test_grp = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test_grp) == 0) { $ligne_groupe_visible = "n"; } } if ($ligne_groupe_visible == 'y') { // Coefficient pour le groupe $current_coef = $current_group["classes"]["classes"][$id_classe]["coef"]; $current_matiere_professeur_login = $current_group["profs"]["list"]; //$current_matiere_nom_complet = $current_group["matiere"]["nom_complet"]; if (getSettingValue('bul_rel_nom_matieres') == 'nom_groupe') { $current_matiere_nom_complet = $current_group["name"]; } elseif (getSettingValue('bul_rel_nom_matieres') == 'description_groupe') { $current_matiere_nom_complet = $current_group["description"]; } else { $current_matiere_nom_complet = $current_group["matiere"]["nom_complet"]; } //echo "\$current_matiere_nom_complet=$current_matiere_nom_complet<br />\n"; $nb = $periode1; while ($nb < $periode2 + 1) { $current_classe_matiere_moyenne[$nb] = $tab_moy['periodes'][$nb]['current_classe_matiere_moyenne'][$j]; // 20121209 $moy_min_classe_grp[$nb] = $tab_moy['periodes'][$nb]['moy_min_classe_grp'][$j]; $moy_max_classe_grp[$nb] = $tab_moy['periodes'][$nb]['moy_max_classe_grp'][$j]; // On teste si des notes de une ou plusieurs boites du carnet de notes doivent être affichées $test_cn = mysqli_query($GLOBALS["mysqli"], "select c.nom_court, c.id from cn_cahier_notes cn, cn_conteneurs c\n\t\t\twhere (cn.periode = '{$nb}' and cn.id_groupe='" . $current_group["id"] . "' and cn.id_cahier_notes = c.id_racine and c.id_racine!=c.id and c.display_bulletin = 1) "); $nb_ligne_cn[$nb] = mysqli_num_rows($test_cn); $n = 0; while ($n < $nb_ligne_cn[$nb]) { $cn_id[$nb][$n] = old_mysql_result($test_cn, $n, 'id'); $cn_nom[$nb][$n] = old_mysql_result($test_cn, $n, 'nom_court'); $n++; } //echo "\$nb=$nb<br />\n"; $nb++; } $nb = $periode1; while ($nb < $periode2 + 1) { $current_grp_appreciation_query = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM matieres_appreciations_grp WHERE (id_groupe='" . $current_group["id"] . "' AND periode='{$nb}')"); $current_grp_appreciation[$nb] = @old_mysql_result($current_grp_appreciation_query, 0, "appreciation"); //echo "\$current_grp_appreciation[$nb]=$current_grp_appreciation[$nb]<br />\n"; $nb++; } if ($affiche_categories) { // On regarde si on change de catégorie de matière if ($current_group["classes"]["classes"][$id_classe]["categorie_id"] != $prev_cat_id) { $prev_cat_id = $current_group["classes"]["classes"][$id_classe]["categorie_id"]; // On est dans une nouvelle catégorie // On récupère les infos nécessaires, et on affiche une ligne // On détermine le nombre de colonnes pour le colspan //$nb_total_cols = 4; if ($affiche_colonne_moy_classe != 'n') { $nb_total_cols = 2; } else { $nb_total_cols = 3; } //==================== if ($affiche_coef == 'y') { if ($test_coef != 0) { $nb_total_cols++; } } //==================== if ($avec_rapport_effectif == 'y') { $nb_total_cols++; } //==================== // On regarde s'il faut afficher la moyenne de l'élève pour cette catégorie $affiche_cat_moyenne_query = mysqli_query($GLOBALS["mysqli"], "SELECT affiche_moyenne FROM j_matieres_categories_classes WHERE (classe_id = '" . $id_classe . "' and categorie_id = '" . $prev_cat_id . "')"); if (mysqli_num_rows($affiche_cat_moyenne_query) == "0") { $affiche_cat_moyenne = false; } else { $affiche_cat_moyenne = old_mysql_result($affiche_cat_moyenne_query, 0); } // On a toutes les infos. On affiche ! echo "<tr>\n"; echo "<td colspan='" . $nb_total_cols . "'>\n"; echo "<p style='padding: 0; margin:0; font-size: 10px;'>" . $cat_names[$prev_cat_id] . "</p></td>\n"; echo "</tr>\n"; } } //echo "<tr>\n"; if ($couleur_lignes == 'y') { $alt = $alt * -1; echo "<tr class='lig{$alt}'>\n"; $alt2 = $alt; } else { echo "<tr>\n"; } echo "<td "; if ($nb_periodes > 1) { echo " rowspan= " . $nb_periodes; } //echo" width=\"$larg_col1\" class='bull_simpl'><b>$current_matiere_nom_complet</b>"; echo " width=\"{$larg_col1}\" class='bull_simpl'><b>" . htmlspecialchars($current_matiere_nom_complet) . "</b>"; $k = 0; while ($k < count($current_matiere_professeur_login)) { echo "<br /><i>" . affiche_utilisateur($current_matiere_professeur_login[$k], $id_classe) . "</i>"; $k++; } echo "</td>\n"; //==================== if ($affiche_coef == 'y') { if ($test_coef != 0) { $print_coef = number_format($current_coef, 1, ',', ' '); echo "<td width=\"{$larg_col2}\""; if ($nb_periodes > 1) { echo " rowspan= " . $nb_periodes; } echo " align=\"center\"><p class='bull_simpl'>" . $print_coef . "</p></td>\n"; } } //==================== $nb = $periode1; $print_tr = 'no'; while ($nb < $periode2 + 1) { if ($print_tr == 'yes') { //echo "<tr style='border-width: 5px;'>\n"; if ($couleur_lignes == 'y') { $alt2 = $alt2 * -1; echo "<tr class='lig{$alt2}' style='border-width: 5px;'>\n"; } else { echo "<tr>\n"; } } //========================= if ($nb == $periode1) { if ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black"; } else { $style_bordure_cell = "border: 1px solid black; border-bottom: 1px dashed black"; } } elseif ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black;"; } else { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black; border-bottom: 1px dashed black;"; } //========================= if ($avec_rapport_effectif == "y") { //$sql="SELECT 1=1 FROM j_eleves_classes jec, $sql = "SELECT DISTINCT jeg.login FROM j_eleves_classes jec,\n\t\t\t\t\t\t\t\t\tj_eleves_groupes jeg,\n\t\t\t\t\t\t\t\t\tj_groupes_classes jgc\n\t\t\t\t\t\t\t\tWHERE jec.id_classe='{$id_classe}' AND\n\t\t\t\t\t\t\t\t\t\tjec.periode='{$nb}' AND\n\t\t\t\t\t\t\t\t\t\tjec.periode=jeg.periode AND\n\t\t\t\t\t\t\t\t\t\tjec.login=jeg.login AND\n\t\t\t\t\t\t\t\t\t\tjeg.id_groupe=jgc.id_groupe AND\n\t\t\t\t\t\t\t\t\t\tjeg.id_groupe='" . $current_group["id"] . "';"; //$sql0=$sql; $res_effectif = mysqli_query($GLOBALS["mysqli"], $sql); $effectif_grp_classe = mysqli_num_rows($res_effectif); $sql = "SELECT 1=1 FROM j_eleves_groupes jeg\n\t\t\t\t\t\t\t\tWHERE jeg.periode='{$nb}' AND\n\t\t\t\t\t\t\t\t\t\tjeg.id_groupe='" . $current_group["id"] . "';"; $res_effectif_tot = mysqli_query($GLOBALS["mysqli"], $sql); $effectif_grp_total = mysqli_num_rows($res_effectif_tot); echo "<td width=\"{$larg_col2}\" align=\"center\" class='bull_simpl' style='{$style_bordure_cell}'>"; //echo "$sql0<br /><br />"; //echo "$sql<br /><br />"; if ($effectif_grp_classe == $effectif_grp_total) { echo $effectif_grp_classe . ' él.'; } else { echo "{$effectif_grp_classe} él. /{$effectif_grp_total}"; } echo "</td>\n"; } if ($affiche_colonne_moy_classe != 'n') { echo "<td width=\"{$larg_col2}\" align=\"center\" class='bull_simpl' style='{$style_bordure_cell}'>\n"; // 20121209 //$note=number_format($current_classe_matiere_moyenne[$nb],1, ',', ' '); $note = nf($current_classe_matiere_moyenne[$nb]); if ($note != "0,0") { if ($avec_moy_min_max_classe == 'y') { echo "<span title=\"Moyenne minimale sur l'enseignement\">" . nf($moy_min_classe_grp[$nb]) . "</span> "; } echo "<span style='font-weight:bold' title=\"Moyenne du groupe sur l'enseignement\">" . $note . "</span>"; if ($avec_moy_min_max_classe == 'y') { echo " <span title=\"Moyenne maximale sur l'enseignement\">" . nf($moy_max_classe_grp[$nb]) . "</span>"; } } else { echo "-"; } echo "</td>\n"; } // Affichage des cases appréciations echo "<td width=\"{$larg_col5}\" class='bull_simpl' style='text-align:left; {$style_bordure_cell}'>\n"; //if ($current_grp_appreciation[$nb]) { if ($current_grp_appreciation[$nb] && $tab_acces_app[$nb] == "y") { if ($current_grp_appreciation[$nb] == "-1") { echo "<span class='noprint'>-</span>\n"; } else { if (strstr($current_grp_appreciation[$nb], ">") || strstr($current_grp_appreciation[$nb], "<")) { echo "{$current_grp_appreciation[$nb]}"; } else { echo nl2br($current_grp_appreciation[$nb]); } } //====================================== } else { echo " -"; } echo "</td></tr>\n"; $print_tr = 'yes'; $nb++; } } } // Affichage des moyennes générales if ($display_moy_gen == "y") { if ($test_coef != 0) { echo "<tr>\n<td"; if ($nb_periodes > 1) { echo " rowspan=" . $nb_periodes; } echo ">\n<p class='bull_simpl'><b>Moyenne générale</b></p>\n</td>\n"; //==================== if ($affiche_coef == 'y') { echo "<td"; if ($nb_periodes > 1) { echo " rowspan=" . $nb_periodes; } echo " align=\"center\">-</td>\n"; } //==================== $nb = $periode1; $print_tr = 'no'; while ($nb < $periode2 + 1) { //============================= //if($nb==$periode1){echo "<tr>\n";} if ($print_tr == 'yes') { echo "<tr style='border-width: 5px;'>\n"; } //============================= //========================= if ($nb == $periode1) { if ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black"; } else { $style_bordure_cell = "border: 1px solid black; border-bottom: 1px dashed black"; } } elseif ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black;"; } else { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black; border-bottom: 1px dashed black;"; } //========================= if ($avec_rapport_effectif == "y") { $sql = "SELECT 1=1 FROM j_eleves_classes WHERE periode='{$nb}' AND id_classe='{$id_classe}';"; $res_eff_classe = mysqli_query($GLOBALS["mysqli"], $sql); echo "<td class='bull_simpl' align=\"center\" style='{$style_bordure_cell}'>\n"; //echo "$sql<br />"; echo mysqli_num_rows($res_eff_classe) . ' él.'; echo "</td>\n"; } if ($affiche_colonne_moy_classe != 'n') { echo "<td class='bull_simpl' align=\"center\" style='{$style_bordure_cell}'>\n"; /* if ($total_points_classe[$nb] != 0) { //$moy_classe=number_format($total_points_classe[$nb]/$total_coef[$nb],1, ',', ' '); //========================= // MODIF: boireaus 20080316 //$moy_classe=number_format($total_points_classe[$nb]/$total_coef_classe[$nb],1, ',', ' '); $moy_classe=$tab_moy_gen[$nb]; //========================= } else { $moy_classe = '-'; } */ // 20121209 if ($avec_moy_min_max_classe == 'y') { echo "<span title=\"Moyenne générale minimale\">" . nf($tab_moy['periodes'][$nb]['moy_min_classe'], 2) . "</span> "; } echo "<span style='font-weight:bold' title=\"Moyenne des moyennes générales de la classe\">" . nf($tab_moy['periodes'][$nb]['moy_generale_classe'], 2) . "</span>"; if ($avec_moy_min_max_classe == 'y') { echo " <span title=\"Moyenne générale maximale\">" . nf($tab_moy['periodes'][$nb]['moy_max_classe'], 2) . "</span>"; } if ($affiche_deux_moy_gen == 1) { echo "<br />\n"; echo "<i>"; /* if($avec_moy_min_max_classe=='y') { echo "<span title=\"Moyenne générale minimale avec tous les coefficients à 1\">".nf($tab_moy['periodes'][$nb]['moy_min_classe1'],2)."</span> "; } */ echo "<span style='font-weight:bold' title=\"Moyenne des moyennes générales de la classe avec tous les coefficients à 1\">" . nf($tab_moy['periodes'][$nb]['moy_generale_classe1']) . "</span>"; /* if($avec_moy_min_max_classe=='y') { echo " <span title=\"Moyenne générale maximale avec tous les coefficients à 1\">".nf($tab_moy['periodes'][$nb]['moy_max_classe1'],2)."</span>"; } */ echo "</i>\n"; } echo "</td>\n"; } /* echo "<td class='bull_simpl' align=\"center\">\n"; if ($total_points_eleve[$nb] != '0') { //$moy_eleve=number_format($total_points_eleve[$nb]/$total_coef[$nb],1, ',', ' '); $moy_eleve=number_format($total_points_eleve[$nb]/$total_coef_eleve[$nb],1, ',', ' '); } else { $moy_eleve = '-'; } echo "<b>".$moy_eleve."</b>\n</td>\n"; if ($affiche_rang == 'y') { $rang = sql_query1("select rang from j_eleves_classes where ( periode = '".$nb."' and id_classe = '".$id_classe."' and login = '******' ) "); if (($rang == 0) or ($rang == -1)) $rang = "-"; else $rang .="/".$nombre_eleves; echo "<td class='bull_simpl' align=\"center\">".$rang."</td>\n"; } */ if ($affiche_categories) { echo "<td class='bull_simpl' style='text-align:left; {$style_bordure_cell}'>\n"; foreach ($categories as $cat_id) { // MODIF: boireaus 20070627 ajout du test et utilisation de $total_cat_coef_eleve, $total_cat_coef_classe // Tester si cette catégorie doit avoir sa moyenne affichée $affiche_cat_moyenne_query = mysqli_query($GLOBALS["mysqli"], "SELECT affiche_moyenne FROM j_matieres_categories_classes WHERE (classe_id = '" . $id_classe . "' and categorie_id = '" . $cat_id . "')"); if (mysqli_num_rows($affiche_cat_moyenne_query) == "0") { $affiche_cat_moyenne = false; } else { $affiche_cat_moyenne = old_mysql_result($affiche_cat_moyenne_query, 0); } if ($affiche_cat_moyenne) { /* //if ($total_cat_coef[$nb][$cat_id] != "0") { //if ($total_cat_coef_eleve[$nb][$cat_id] != "0") { //$moy_eleve=number_format($total_cat_eleve[$nb][$cat_id]/$total_cat_coef[$nb][$cat_id],1, ',', ' '); //$moy_classe=number_format($total_cat_classe[$nb][$cat_id]/$total_cat_coef[$nb][$cat_id],1, ',', ' '); //$moy_eleve=number_format($total_cat_eleve[$nb][$cat_id]/$total_cat_coef_eleve[$nb][$cat_id],1, ',', ' '); //echo "\$total_cat_coef_classe[$nb][$cat_id]=".$total_cat_coef_classe[$nb][$cat_id]."<br />"; if ($total_cat_coef_classe[$nb][$cat_id] != "0") { $moy_classe=number_format($total_cat_classe[$nb][$cat_id]/$total_cat_coef_classe[$nb][$cat_id],1, ',', ' '); } else{ $moy_classe="-"; } //echo $cat_names[$cat_id] . " - <b>$moy_eleve</b> (classe : " . $moy_classe . ")<br/>\n"; echo $cat_names[$cat_id] . " - <b>$moy_classe</b><br />\n"; //} */ $moy_classe = "-"; $loop_i = 0; while ($loop_i < count($tab_moy['periodes'][$nb]['current_eleve_login'])) { if (isset($tab_moy['periodes'][$nb]['moy_cat_classe'][$loop_i][$cat_id])) { $moy_classe = $tab_moy['periodes'][$nb]['moy_cat_classe'][$loop_i][$cat_id]; break; } $loop_i++; } echo $cat_names[$cat_id] . " - <b>" . nf($moy_classe, 2) . "</b><br/>\n"; } } echo "</td>\n</tr>\n"; } else { echo "<td class='bull_simpl' style='text-align:left; {$style_bordure_cell}'>-</td>\n</tr>\n"; } $nb++; $print_tr = 'yes'; } } } echo "</table>\n"; /* // Les absences echo "<table width=$larg_tab border=1 cellspacing=1 cellpadding=1>\n"; $nb=$periode1; while ($nb < $periode2+1) { $current_eleve_absences_query = mysql_query("SELECT * FROM absences WHERE (login='******' AND periode='$nb')"); $eleve_abs[$nb] = @old_mysql_result($current_eleve_absences_query, 0, "nb_absences"); $eleve_abs_nj[$nb] = @old_mysql_result($current_eleve_absences_query, 0, "non_justifie"); $eleve_retards[$nb] = @old_mysql_result($current_eleve_absences_query, 0, "nb_retards"); $current_eleve_appreciation_absences = @old_mysql_result($current_eleve_absences_query, 0, "appreciation"); if (($eleve_abs[$nb] != '') and ($eleve_abs_nj[$nb] != '')) { $eleve_abs_j[$nb] = $eleve_abs[$nb]-$eleve_abs_nj[$nb]; } else { $eleve_abs_j[$nb] = "?"; } $eleve_app_abs[$nb] = @old_mysql_result($current_eleve_absences_query, 0, "appreciation"); if ($eleve_abs_nj[$nb] == '') { $eleve_abs_nj[$nb] = "?"; } if ($eleve_retards[$nb] == '') { $eleve_retards[$nb] = "?"; } echo "<tr>\n<td valign=top class='bull_simpl'>$nom_periode[$nb]</td>\n"; echo "<td valign=top class='bull_simpl'>\n"; if ($eleve_abs_j[$nb] == "1") { echo "Absences justifiées : une demi-journée"; } else if ($eleve_abs_j[$nb] != "0") { echo "Absences justifiées : $eleve_abs_j[$nb] demi-journées"; } else { echo "Aucune absence justifiée"; } echo "</td>\n"; echo "<td valign=top class='bull_simpl'>\n"; if ($eleve_abs_nj[$nb] == '1') { echo "Absences non justifiées : une demi-journée"; } else if ($eleve_abs_nj[$nb] != '0') { echo "Absences non justifiées : $eleve_abs_nj[$nb] demi-journées"; } else { echo "Aucune absence non justifiée"; } echo "</td>\n"; echo "<td valign=top class='bull_simpl'>Nb. de retards : $eleve_retards[$nb]</td>\n</tr>\n"; //Ajout Eric if ($current_eleve_appreciation_absences != "") { echo "<tr>\n"; echo "<td valign=top class='bull_simpl'> </td>\n"; echo "<td valign=top class='bull_simpl' colspan=\"3\">"; echo " Observation(s) : $current_eleve_appreciation_absences</td>\n</tr>\n"; } $nb++; } echo "</table>\n"; */ // Maintenant, on met l'avis du conseil de classe : echo "<span class='bull_simpl'><b>Avis du conseil de classe </b> "; $gepi_prof_suivi = ucfirst(retourne_denomination_pp($id_classe)); /* if ($current_eleve_profsuivi_login) { echo "<b>(".ucfirst(getSettingValue("gepi_prof_suivi"))." : <i>".affiche_utilisateur($current_eleve_profsuivi_login,$id_classe)."</i>)</b>"; } */ if (empty($current_profsuivi_login)) { //echo "Pas de $gepi_prof_suivi désigné."; //echo "(-)"; echo ""; } else { echo "<b>({$gepi_prof_suivi} <i>"; for ($loop = 0; $loop < count($current_profsuivi_login); $loop++) { if ($loop > 0) { echo ", "; } echo affiche_utilisateur($current_profsuivi_login[$loop], $id_classe); } echo "</i></b>)"; } echo " :</span>\n"; $larg_col1b = $larg_tab - $larg_col1; echo "<table width=\"{$larg_tab}\" class='boireaus' cellspacing='1' cellpadding='1' summary=''>\n"; $nb = $periode1; while ($nb < $periode2 + 1) { $sql = "SELECT * FROM synthese_app_classe WHERE (id_classe='{$id_classe}' AND periode='{$nb}');"; //echo "$sql<br />"; $res_current_synthese = mysqli_query($GLOBALS["mysqli"], $sql); $current_synthese[$nb] = @old_mysql_result($res_current_synthese, 0, "synthese"); if ($current_synthese[$nb] == '') { $current_synthese[$nb] = ' -'; } //========================= if ($nb == $periode1) { if ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black"; } else { $style_bordure_cell = "border: 1px solid black; border-bottom: 1px dashed black"; } } elseif ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black;"; } else { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black; border-bottom: 1px dashed black;"; } //========================= echo "<tr>\n<td valign=\"top\" width =\"{$larg_col1}\" class='bull_simpl' style='{$style_bordure_cell}'>{$nom_periode[$nb]}</td>\n"; echo "<td valign=\"top\" width = \"{$larg_col1b}\" class='bull_simpl' style='text-align:left; {$style_bordure_cell}'>"; if ($tab_acces_app[$nb] == "y") { echo nl2br($current_synthese[$nb]); } echo "</td>\n"; //===================== echo "</tr>\n"; //===================== $nb++; } echo "</table>\n"; }
function releve_notes($current_eleve_login, $nb_periode, $anneed, $moisd, $jourd, $anneef, $moisf, $jourf) { $gepiYear = getSettingValue("gepiYear"); // Ajout Eric global $choix_periode; //echo $choix_periode; //==================================================================== // AJOUT: boireaus global $avec_nom_devoir; global $avec_appreciation_devoir; global $avec_coef_devoir; global $avec_tous_coef_devoir; global $chaine_coef; global $avec_date_devoir; global $rn_sign_chefetab; global $rn_sign_pp; global $rn_sign_resp; global $rn_sign_nblig; global $rn_formule; //==================================================================== global $categories; global $cat_names; global $tabdiv_infobulle; // données requise : //- le login de l'élève : $current_eleve_login //- $periode1 : numéro de la première période à afficher //- $periode2 : numéro de la dernière période à afficher //- $nom_periode : tableau des noms de période //- $gepiYear : année //- $id_classe : identifiant de la classe. $result = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM eleves WHERE login='******'"); $data_eleve = $result->fetch_object(); $current_eleve_nom = $data_eleve->nom; $current_eleve_prenom = $data_eleve->prenom; $current_eleve_sexe = $data_eleve->sexe; $current_eleve_naissance = $data_eleve->naissance; $current_eleve_naissance = affiche_date_naissance($current_eleve_naissance); //$choix_periode if ($choix_periode == 0) { $call_classe = mysqli_query($GLOBALS["mysqli"], "SELECT id_classe FROM j_eleves_classes WHERE login = '******' ORDER BY periode DESC"); } else { $call_classe = mysqli_query($GLOBALS["mysqli"], "SELECT id_classe FROM j_eleves_classes WHERE login = '******' AND periode='{$choix_periode}'"); } if (mysqli_num_rows($call_classe) == 0) { // L'élève n'est dans aucune classe pour la période choisie echo "<p><strong><span class=\"bull_simpl_g\">{$current_eleve_nom} {$current_eleve_prenom}</span></strong> n'est plus dans aucune classe sur la période choisie.</p>\n"; exit; } $row = $call_classe->fetch_object(); $id_classe = $row->id_classe; $classe_eleve = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM classes WHERE id='{$id_classe}'"); $row = $classe_eleve->fetch_object(); $current_eleve_classe = $row->classe; $current_eleve_classe_complet = $row->nom_complet; $id_classe = $row->id; $regime_doublant_eleve = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM j_eleves_regime WHERE login = '******'"); $sql = "SELECT * FROM j_eleves_regime WHERE login = '******'"; //echo "$sql<br />\n"; $regime_doublant_eleve = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($regime_doublant_eleve) > 0) { $regime_doublant_eleve_objet = $regime_doublant_eleve->fetch_object(); $current_eleve_regime = $regime_doublant_eleve_objet->regime; $current_eleve_doublant = $regime_doublant_eleve_objet->doublant; } else { $current_eleve_regime = "-"; $current_eleve_doublant = "ext."; } //Gestion des dates $date_fin = $anneef . "-" . $moisf . "-" . $jourf . " 00:00:00"; $date_debut = $anneed . "-" . $moisd . "-" . $jourd . " 00:00:00"; $display_date_debut = $jourd . "/" . $moisd . "/" . $anneed; $display_date_fin = $jourf . "/" . $moisf . "/" . $anneef; // Est-ce qu'on affiche les catégories de matières ? $affiche_categories = sql_query1("SELECT display_mat_cat FROM classes WHERE id='" . $id_classe . "'"); if ($affiche_categories == "y") { $affiche_categories = true; } else { $affiche_categories = false; } //------------------------------- // tableau de notes //------------------------------- //------------------------------- // On affiche l'en-tête : Les données de l'élève //------------------------------- // tableau de notes // echo "<table border=\"0\" cellpadding=\"2\" cellspacing=\"2\">\n"; echo "<div class='entete_releve_notes'>\n"; // echo "<tr>\n"; // echo "<td width=30%>\n"; // ----- Colonne de gauche ------ echo "<div class='entete_releve_notes_gauche'>\n"; echo "<h2 class=\"bull_simpl_h2\">{$current_eleve_nom} {$current_eleve_prenom}</h2>\n"; echo "<p class='bull_simpl'>\n"; // echo "<br />\n"; if ($current_eleve_sexe == "M") { echo "Né le {$current_eleve_naissance}"; } else { echo "Née le {$current_eleve_naissance}"; } if ($current_eleve_regime == "d/p") { echo ", demi-pensionnaire"; } if ($current_eleve_regime == "ext.") { echo ", externe"; } if ($current_eleve_regime == "int.") { echo ", interne"; } if ($current_eleve_regime == "i-e") { if ($current_eleve_sexe == "M") { echo ", interne externé"; } else { echo ", interne externée"; } } echo ", {$current_eleve_classe}"; if ($current_eleve_doublant == 'R') { if ($current_eleve_sexe == "M") { echo "<br /><strong>redoublant</strong>"; } else { echo "<br /><strong>redoublante</strong>"; } } echo "</p>\n"; echo "</div>\n"; // ----- Colonne de droite ----- echo "<div class='entete_releve_notes_droit'>\n"; echo "<p class='bull_simpl'>\n"; echo "<span class=\"bull_simpl_g\">" . getSettingValue("gepiSchoolName") . "</span><br />" . getSettingValue("gepiSchoolAdress1") . "<br />" . getSettingValue("gepiSchoolAdress2") . " " . getSettingValue("gepiSchoolZipCode") . " " . getSettingValue("gepiSchoolCity") . "\n"; echo "</p>\n"; echo "</div>\n"; // ----- logo $nom_fic_logo = getSettingValue("logo_etab"); $nom_fic_logo_c = "../images/" . $nom_fic_logo; if ($nom_fic_logo != '' and file_exists($nom_fic_logo_c)) { //echo "</td><td width=* align=\"right\"><IMG SRC=\"".$nom_fic_logo_c."\" BORDER=0 ALT=\"\">"; //echo "</td><td width='100%' align=\"right\"><IMG SRC=\"".$nom_fic_logo_c."\" BORDER=0 ALT=\"\" />"; //echo "</div>\n"; echo "<div class='entete_releve_notes_logo'>\n<img src=\"" . $nom_fic_logo_c . "\" alt='logo' />\n</div>\n"; } //else { // echo "</div>\n"; // echo "<div> "; //} // ----- Colonne centrale ----- echo "<div class='entete_releve_notes_centre'>\n"; echo "<p class='bull_simpl_g'>\n"; echo "Classe de {$current_eleve_classe_complet}<br />Année scolaire " . getSettingValue("gepiYear"); //modif ERIC echo "\n</p>"; if ($choix_periode == 0) { echo "<p class='bull_simpl_g'>\n"; echo "Relevé de notes du <strong>{$display_date_debut}</strong> au <strong>{$display_date_fin}</strong>"; echo "\n</p>"; } else { // On récupère le nom de la période. $requete_periode = "SELECT * FROM `periodes` WHERE `id_classe`=" . $id_classe . " AND `num_periode`=" . $choix_periode . ""; //echo $requete_periode; $resultat_periode = mysqli_query($GLOBALS["mysqli"], $requete_periode) or die('Erreur SQL !' . $requete_periode . '<br />' . mysqli_error($GLOBALS["mysqli"])); $data_periode = mysqli_fetch_array($resultat_periode); echo "<p class='bull_simpl_g'>\n"; echo "<strong>" . $data_periode['nom_periode'] . "</strong> : Relevé de notes"; echo "\n</p>"; } echo "</div>\n"; //echo "</tr>\n"; echo "</div>\n"; //------------------------------- // Fin de l'en-tête // On initialise le tableau : $larg_tab = 680; $larg_col1 = 120; $larg_col2 = $larg_tab - $larg_col1; echo "<table class='tab_releve_note' summary='relevé de notes. Colonne 1 : Matière et enseignants. Colonne 2 : Notes et autres informations'>\n"; echo "<caption class='invisible no_print'>relevé de notes</caption>\n"; echo "<tr>\n"; //================================= // MODIF: chapel 20071019 echo "<th class='bull_simpl tab_relev_note_m'>\n"; echo "<strong>Matière</strong><br /><em>Professeur</em>\n"; echo "</th>\n"; echo "<th class='bull_simpl tab_relev_note_n'>Notes</th>\n"; echo "</tr>\n"; //------------------------------ // Boucle 'groupes' //------------------------------ if ($affiche_categories) { // On utilise les valeurs spécifiées pour la classe en question $appel_liste_groupes = mysqli_query($GLOBALS["mysqli"], "SELECT DISTINCT jgc.id_groupe, jgm.id_matiere matiere, jgc.categorie_id " . "FROM j_eleves_groupes jeg, j_groupes_classes jgc, j_groupes_matieres jgm, j_matieres_categories_classes jmcc, matieres m " . "WHERE ( " . "jeg.login = '******' AND " . "jgc.id_groupe = jeg.id_groupe AND " . "jgc.categorie_id = jmcc.categorie_id AND " . "jgc.id_classe = '" . $id_classe . "' AND " . "jgm.id_groupe = jgc.id_groupe AND " . "m.matiere = jgm.id_matiere" . ") " . "ORDER BY jmcc.priority,jgc.priorite,m.nom_complet"); } else { $appel_liste_groupes = mysqli_query($GLOBALS["mysqli"], "SELECT DISTINCT jgc.id_groupe, jgc.categorie_id, jgc.coef, jgm.id_matiere matiere " . "FROM j_groupes_classes jgc, j_groupes_matieres jgm, j_eleves_groupes jeg " . "WHERE ( " . "jeg.login = '******' AND " . "jgc.id_groupe = jeg.id_groupe AND " . "jgc.id_classe = '" . $id_classe . "' AND " . "jgm.id_groupe = jgc.id_groupe" . ") " . "ORDER BY jgc.priorite,jgm.id_matiere"); } $nombre_groupes = mysqli_num_rows($appel_liste_groupes); $j = 0; $prev_cat_id = null; while ($j < $nombre_groupes) { // On appelle toutes les infos relatives à la matière $current_groupe = old_mysql_result($appel_liste_groupes, $j, "id_groupe"); $current_matiere = old_mysql_result($appel_liste_groupes, $j, "matiere"); $current_groupe_cat = old_mysql_result($appel_liste_groupes, $j, "categorie_id"); if ($affiche_categories) { // On regarde si on change de catégorie de matière if ($current_groupe_cat != $prev_cat_id) { $prev_cat_id = $current_groupe_cat; // On est dans une nouvelle catégorie // On récupère les infos nécessaires, et on affiche une ligne // On détermine le nombre de colonnes pour le colspan $nb_total_cols = 2; //========================================= // On regarde s'il faut afficher la moyenne de l'élève pour cette catégorie //$affiche_cat_moyenne = old_mysql_result(mysql_query("SELECT affiche_moyenne FROM j_matieres_categories_classes WHERE (classe_id = '" . $id_classe . "' and categorie_id = '" . $prev_cat_id . "')"), 0); $sql = "SELECT affiche_moyenne FROM j_matieres_categories_classes WHERE (classe_id = '" . $id_classe . "' and categorie_id = '" . $prev_cat_id . "')"; //$affiche_cat_moyenne = old_mysql_result(mysql_query($sql), 0); $affiche_cat_moyenne_query = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($affiche_cat_moyenne_query) == "0") { $affiche_cat_moyenne = false; } else { $affiche_cat_moyenne = old_mysql_result($affiche_cat_moyenne_query, 0); } // Ce test est inutile parce qu'apparemment on n'affiche pas de moyenne de catégorie... d'ailleurs la moyenne de catégorie n'est-elle pas calculée qu'une fois la Recopie des moyennes vers le bulletin effectuée? //========================================= // On a toutes les infos. On affiche ! echo "<tr>"; echo "<td colspan='" . $nb_total_cols . "'>"; echo "<p style='padding: 0; margin:0; font-size: 10px;'>" . $cat_names[$prev_cat_id] . "</p>"; echo "</td>"; echo "</tr>\n"; } } $call_profs = mysqli_query($GLOBALS["mysqli"], "SELECT u.login FROM utilisateurs u, j_groupes_professeurs j WHERE ( u.login = j.login and j.id_groupe='{$current_groupe}') ORDER BY j.ordre_prof"); $nombre_profs = mysqli_num_rows($call_profs); $k = 0; while ($k < $nombre_profs) { $current_matiere_professeur_login[$k] = old_mysql_result($call_profs, $k, "login"); $k++; } $current_matiere_nom_complet_query = mysqli_query($GLOBALS["mysqli"], "SELECT nom_complet FROM matieres WHERE matiere='{$current_matiere}'"); $current_matiere_nom_complet = old_mysql_result($current_matiere_nom_complet_query, 0, "nom_complet"); echo "<tr><td class='bull_simpl'><strong>" . htmlspecialchars($current_matiere_nom_complet) . "</strong>"; $k = 0; while ($k < $nombre_profs) { echo "<br /><em>" . affiche_utilisateur($current_matiere_professeur_login[$k], $id_classe) . "</em>"; $k++; } echo "</td>\n"; echo "<td class='bull_simpl'>"; //==================================================== // MODIF: boireaus if ($avec_coef_devoir == "oui") { if ($choix_periode == 0) { $sql = "SELECT DISTINCT d.coef FROM cn_notes_devoirs nd, cn_devoirs d, cn_cahier_notes cn WHERE (\n\t\t\t\t\tnd.login = '******' and\n\t\t\t\t\tnd.id_devoir = d.id and\n\t\t\t\t\td.display_parents='1' and\n\t\t\t\t\td.id_racine = cn.id_cahier_notes and\n\t\t\t\t\tcn.id_groupe = '" . $current_groupe . "' and\n\t\t\t\t\td.date >= '" . $date_debut . "' and\n\t\t\t\t\td.date <= '" . $date_fin . "'\n\t\t\t\t\t)"; } else { $sql = "SELECT DISTINCT d.coef FROM cn_notes_devoirs nd, cn_devoirs d, cn_cahier_notes cn WHERE (\n\t\t\t\t\tnd.login = '******' and\n\t\t\t\t\tnd.id_devoir = d.id and\n\t\t\t\t\td.display_parents='1' and\n\t\t\t\t\td.id_racine = cn.id_cahier_notes and\n\t\t\t\t\tcn.id_groupe = '" . $current_groupe . "' and\n\t\t\t\t\tcn.periode = '" . $choix_periode . "'\n\t\t\t\t\t)"; //echo "<td>".$sql."</td>"; } $res_differents_coef = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_differents_coef) > 1) { $affiche_coef = "oui"; } else { $affiche_coef = "non"; } } //$query_notes = mysql_query("SELECT nd.note, d.nom_court, nd.statut FROM cn_notes_devoirs nd, cn_devoirs d, cn_cahier_notes cn WHERE ( if ($choix_periode == 0) { //$sql1="SELECT d.coef, nd.note, d.nom_court, nd.statut FROM cn_notes_devoirs nd, cn_devoirs d, cn_cahier_notes cn WHERE ( $sql1 = "SELECT d.coef, nd.note, nd.comment, d.nom_court, nd.statut, d.date, d.date_ele_resp, d.note_sur, d.display_parents_app FROM cn_notes_devoirs nd, cn_devoirs d, cn_cahier_notes cn WHERE (\n\t\t\t\tnd.login = '******' and\n\t\t\t\tnd.id_devoir = d.id and\n\t\t\t\td.display_parents='1' and\n\t\t\t\td.id_racine = cn.id_cahier_notes and\n\t\t\t\tcn.id_groupe = '" . $current_groupe . "' and\n\t\t\t\td.date >= '" . $date_debut . "' and\n\t\t\t\td.date <= '" . $date_fin . "'\n\t\t\t\t)\n\t\t\t\tORDER BY d.date\n\t\t\t\t"; $query_notes = mysqli_query($GLOBALS["mysqli"], $sql1); } else { $sql1 = "SELECT d.coef, nd.note, nd.comment, d.nom_court, nd.statut, d.date, d.date_ele_resp, d.note_sur, d.display_parents_app FROM cn_notes_devoirs nd, cn_devoirs d, cn_cahier_notes cn WHERE (\n\t\t\t\tnd.login = '******' and\n\t\t\t\tnd.id_devoir = d.id and\n\t \t\td.display_parents='1' and\n\t\t\t\td.id_racine = cn.id_cahier_notes and\n\t\t\t\tcn.id_groupe = '" . $current_groupe . "' and\n\t\t\t\tcn.periode = '" . $choix_periode . "'\n\t\t\t\t)\n\t\t\t\tORDER BY d.date\n\t\t\t\t"; $query_notes = mysqli_query($GLOBALS["mysqli"], $sql1); } //echo $sql1; //==================================================== // Date actuelle pour le test de la date de visibilité des devoirs $timestamp_courant = time(); $count_notes = mysqli_num_rows($query_notes); $m = 0; $tiret = "no"; while ($m < $count_notes) { $visible = "y"; if ($_SESSION['statut'] == 'eleve' || $_SESSION['statut'] == 'responsable') { $date_ele_resp = @old_mysql_result($query_notes, $m, 'date_ele_resp'); $tmp_tabdate = explode(" ", $date_ele_resp); $tabdate = explode("-", $tmp_tabdate[0]); $timestamp_limite = mktime(0, 0, 0, $tabdate[1], $tabdate[2], $tabdate[0]); if ($timestamp_courant < $timestamp_limite) { $visible = "n"; } } if ($visible == "y") { $eleve_display_app = @old_mysql_result($query_notes, $m, 'display_parents_app'); $eleve_app = @old_mysql_result($query_notes, $m, 'comment'); $eleve_note = @old_mysql_result($query_notes, $m, 'note'); if (getSettingValue("note_autre_que_sur_referentiel") == "V" || old_mysql_result($query_notes, $m, 'note_sur') != getSettingValue("referentiel_note")) { $eleve_note = $eleve_note . "/" . @old_mysql_result($query_notes, $m, 'note_sur'); } $eleve_statut = @old_mysql_result($query_notes, $m, 'statut'); $eleve_nom_court = @old_mysql_result($query_notes, $m, 'nom_court'); if ($eleve_statut != '' and $eleve_statut != 'v') { $affiche_note = $eleve_statut; } else { if ($eleve_statut == 'v') { $affiche_note = ""; } else { if ($eleve_note != '') { $affiche_note = $eleve_note; } else { $affiche_note = ""; } } } if ($avec_appreciation_devoir == "oui" and $eleve_display_app == "1") { if ($affiche_note == "") { if ($avec_nom_devoir != "oui") { $affiche_note = $eleve_nom_court; } else { $affiche_note = " "; } } } if ($affiche_note != '') { if ($tiret == "yes") { if ($avec_appreciation_devoir == "oui" or $avec_nom_devoir == "oui") { echo "<br />"; } else { echo " - "; } } //==================================================================== // MODIF: boireaus //echo "<strong>".$affiche_note."</strong> (".$eleve_nom_court.")"; if ($avec_nom_devoir == "oui") { //echo "<strong>".$affiche_note."</strong> (".$eleve_nom_court.")"; echo "{$eleve_nom_court}: <strong>" . $affiche_note . "</strong>"; } else { echo "<strong>" . $affiche_note . "</strong>"; } if ($avec_tous_coef_devoir == "oui" || $avec_coef_devoir == "oui" && $affiche_coef == "oui") { $coef_devoir = @old_mysql_result($query_notes, $m, 'coef'); echo " (<em><small>" . $chaine_coef . $coef_devoir . "</small></em>)"; //echo " \$affiche_coef=$affiche_coef"; } //echo "<br />\$eleve_display_app=$eleve_display_app<br />"; if ($avec_appreciation_devoir == "oui" and $eleve_display_app == "1") { echo " - Appréciation : "; if ($eleve_app != "") { echo $eleve_app; } else { echo "-"; } } if ($avec_date_devoir == "oui") { $date_note = @old_mysql_result($query_notes, $m, 'date'); // Format: 2006-09-28 00:00:00 $tmpdate = explode(" ", $date_note); $tmpdate = explode("-", $tmpdate[0]); echo " (<em><small>{$tmpdate['2']}/{$tmpdate['1']}/{$tmpdate['0']}</small></em>)"; } //==================================================================== $tiret = "yes"; } } $m++; } echo " "; echo "</td>"; echo "</tr>\n"; $j++; } echo "</table>\n"; /* global $rn_sign_chefetab; global $rn_sign_pp; global $rn_sign_resp; global $rn_sign_nblig; global $rn_formule; */ if ($rn_sign_chefetab == 'y' || $rn_sign_pp == 'y' || $rn_sign_resp == 'y') { $nb_cases = 0; if ($rn_sign_chefetab == 'y') { $nb_cases++; } if ($rn_sign_pp == 'y') { $nb_cases++; } if ($rn_sign_resp == 'y') { $nb_cases++; } // $largeur_case=round(($larg_tab-25)/$nb_cases); // $largeur_case=$largeur_case; // echo "<table border='1' width='$larg_tab'>\n"; echo "<div class='tab_signatures'>\n"; // echo "<tr>\n"; if ($rn_sign_chefetab == 'y') { // echo "<div style='width:$largeur_case; border: 1px;'>\n"; echo "<div class='cel_signature nb_cel_{$nb_cases}'>\n"; echo "<strong>Signature du chef d'établissement:</strong>"; for ($i = 0; $i < $rn_sign_nblig; $i++) { echo "<br />\n"; } echo "</div>\n"; } if ($rn_sign_pp == 'y') { // echo "<div style='width:$largeur_case; border: 1px;'>\n"; echo "<div class='cel_signature nb_cel_{$nb_cases}'>\n"; $gepi_prof_suivi = ucfirst(retourne_denomination_pp($id_classe)); echo "<strong>Signature du " . $gepi_prof_suivi . ":</strong>"; for ($i = 0; $i < $rn_sign_nblig; $i++) { echo "<br />\n"; } echo "</div>\n"; } if ($rn_sign_resp == 'y') { // echo "<div style='width:$largeur_case; border: 1px;'>\n"; echo "<div class='cel_signature nb_cel_{$nb_cases}'>\n"; echo "<strong>Signature des responsables:</strong>"; for ($i = 0; $i < $rn_sign_nblig; $i++) { echo "<br />\n"; } echo "</div>\n"; } // echo "</tr>\n"; // echo "</table>\n"; echo "</div>\n"; } if ($rn_formule != "") { echo "<p>" . htmlspecialchars($rn_formule) . "</p>\n"; } }
function affiche_evenement($id_ev, $afficher_obsolete = "n") { global $gepiPath; global $tab_salle; global $evenement_sans_lien_mail; global $evenement_sans_lien_ics; global $mes_groupes; /* global $posDiv_infobulle; global $tabid_infobulle; global $unite_div_infobulle; global $niveau_arbo; global $pas_de_decalage_infobulle; global $class_special_infobulle; */ global $tabdiv_infobulle; $retour = ""; if (count($tab_salle) == 0) { $tab_salle = get_tab_salle_cours(); } $sql = "SELECT * FROM d_dates_evenements WHERE id_ev='{$id_ev}';"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { $lig = mysqli_fetch_object($res); $tab_u = array(); $sql = "SELECT * FROM d_dates_evenements_utilisateurs WHERE id_ev='{$id_ev}';"; //echo "$sql<br />"; $res_u = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_u) > 0) { while ($lig_u = mysqli_fetch_object($res_u)) { $tab_u[] = $lig_u->statut; } } if (!isset($evenement_sans_lien_mail) || $evenement_sans_lien_mail != "y") { if (acces_info_dates_evenements()) { $retour .= "<div style='float:right; width:16px;margin-right:3px;' title=\"Informer les/des destinataires par mail.\"><a href='{$gepiPath}/classes/info_dates_classes.php?id_ev=" . $id_ev . "' target='_blank'><img src='{$gepiPath}/images/icons/mail.png' class='icone16' alt='Mail' /></a></div>"; } } if (!isset($evenement_sans_lien_ics) || $evenement_sans_lien_ics != "y") { $retour .= "<div style='float:right; width:16px;margin-right:3px;' title=\"Exporter au format ical/ics l'événement.\nVous pourrez l'importer dans un agenda type Google, WebCalendar,...\"><a href='{$gepiPath}/lib/ical.php?id_ev=" . $id_ev . "' target='_blank'><img src='{$gepiPath}/images/icons/ical.png' class='icone16' alt='ical' /></a></div>"; } if ($lig->type == 'autre') { //$retour.=nl2br($lig->description)."<br />"; $retour .= $lig->texte_avant; //$retour.="<br />"; $liste_dest = ""; if (in_array("professeur", $tab_u)) { $liste_dest .= " <img src='{$gepiPath}/images/icons/prof.png' class='icone16' alt='Prof' title=\"Professeurs de la classe.\" />"; } if (in_array("cpe", $tab_u)) { $liste_dest .= " <img src='{$gepiPath}/images/icons/cpe.png' class='icone16' alt='Cpe' title=\"CPE de la classe.\" />"; } if (in_array("scolarite", $tab_u)) { $liste_dest .= " <img src='{$gepiPath}/images/icons/scolarite.png' class='icone16' alt='Scol' title=\"Comptes scolarité associés à la classe.\" />"; } if (in_array("responsable", $tab_u)) { $liste_dest .= " <img src='{$gepiPath}/images/icons/responsable.png' class='icone16' alt='Resp' title=\"Comptes responsables associés à la classe.\" />"; } if (in_array("eleve", $tab_u)) { $liste_dest .= " <img src='{$gepiPath}/images/icons/eleve.png' class='icone16' alt='Resp' title=\"Élèves associés à la classe.\" />"; } //$retour.="<br />"; if ($afficher_obsolete == "y") { if ($_SESSION['statut'] == 'professeur') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND id_classe IN (SELECT DISTINCT jgc.id_classe FROM j_groupes_classes jgc, j_groupes_professeurs jgp WHERE jgc.id_groupe=jgp.id_groupe AND jgp.login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'cpe') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND id_classe IN (SELECT DISTINCT jec.id_classe FROM j_eleves_classes jec, j_eleves_cpe jecpe WHERE jec.e_login=jecpe.cpe_login AND jecpe.cpe_login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'scolarite') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND id_classe IN (SELECT DISTINCT jsc.id_classe FROM j_scol_classes jsc WHERE jsc.login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'administrateur') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'responsable') { $sql = "SELECT DISTINCT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND id_classe IN (SELECT DISTINCT jec.id_classe FROM resp_pers rp, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tresponsables2 r, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\televes e, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tj_eleves_classes jec \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE rp.login='******'login'] . "' AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\trp.pers_id=r.pers_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tr.ele_id=e.ele_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\te.login=jec.login AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(r.resp_legal='1' OR r.resp_legal='2' OR r.acces_sp='y')\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'eleve') { $sql = "SELECT DISTINCT d.*, c.* FROM d_dates_evenements_classes d, classes c, j_eleves_classes jec WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND d.id_classe=jec.id_classe AND jec.login='******'login'] . "' ORDER BY date_evenement, classe;"; } } else { // 12h après if ($_SESSION['statut'] == 'professeur') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' AND id_classe IN (SELECT DISTINCT jgc.id_classe FROM j_groupes_classes jgc, j_groupes_professeurs jgp WHERE jgc.id_groupe=jgp.id_groupe AND jgp.login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'cpe') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' AND id_classe IN (SELECT DISTINCT jec.id_classe FROM j_eleves_classes jec, j_eleves_cpe jecpe WHERE jec.e_login=jecpe.cpe_login AND jecpe.cpe_login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'scolarite') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' AND id_classe IN (SELECT DISTINCT jsc.id_classe FROM j_scol_classes jsc WHERE jsc.login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'administrateur') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'responsable') { $sql = "SELECT DISTINCT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' AND id_classe IN (SELECT DISTINCT jec.id_classe FROM resp_pers rp, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tresponsables2 r, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\televes e, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tj_eleves_classes jec \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE rp.login='******'login'] . "' AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\trp.pers_id=r.pers_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tr.ele_id=e.ele_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\te.login=jec.login AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(r.resp_legal='1' OR r.resp_legal='2' OR r.acces_sp='y')\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'eleve') { $sql = "SELECT DISTINCT d.*, c.* FROM d_dates_evenements_classes d, classes c, j_eleves_classes jec WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND d.id_classe=jec.id_classe AND jec.login='******'login'] . "' AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' ORDER BY date_evenement, classe;"; } } $res2 = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res2) > 0) { $tab_tableau = array(); $tab_liste_salles = array(); $tab_liste_dates = array(); while ($lig2 = mysqli_fetch_object($res2)) { if (!in_array($lig2->date_evenement, $tab_liste_dates)) { $tab_liste_dates[] = $lig2->date_evenement; } if (!in_array($lig2->id_salle, $tab_liste_salles)) { $tab_liste_salles[] = $lig2->id_salle; } if (isset($tab_tableau[$lig2->date_evenement][$lig2->id_salle])) { $tab_tableau[$lig2->date_evenement][$lig2->id_salle] .= ", "; } else { $tab_tableau[$lig2->date_evenement][$lig2->id_salle] = ""; } if ($lig2->date_evenement < strftime("%Y-%m-%d %H:%M:%S")) { //$tab_tableau[$lig2->date_evenement][$lig2->id_salle].="<span style='color:red'>".$lig2->classe." : ".formate_date($lig2->date_evenement, "y", "court")."</span>"; $tab_tableau[$lig2->date_evenement][$lig2->id_salle] .= "<span style='color:red'>" . $lig2->classe . "</span>"; } else { //$tab_tableau[$lig2->date_evenement][$lig2->id_salle].=$lig2->classe." : ".formate_date($lig2->date_evenement, "y", "court"); $tab_tableau[$lig2->date_evenement][$lig2->id_salle] .= $lig2->classe; } /* if(($lig2->id_salle>0)&&(isset($tab_salle['indice'][$lig2->id_salle]))) { $tab_tableau[$lig2->date_evenement][$lig2->id_salle].=" (<em>salle ".$tab_salle['indice'][$lig2->id_salle]['designation_complete']."</em>)"; } */ //$retour.="<br />"; } $retour .= "<table class='boireaus boireaus_alt'>\n\t<tr>\n\t\t<th>{$liste_dest}</th>"; for ($loop = 0; $loop < count($tab_liste_dates); $loop++) { $retour .= "\n\t\t<th>" . formate_date($tab_liste_dates[$loop], "y2", "court") . "</th>"; } $retour .= "\n\t</tr>"; for ($loop0 = 0; $loop0 < count($tab_liste_salles); $loop0++) { if ($tab_liste_salles[$loop0] > 0 && isset($tab_salle['indice'][$tab_liste_salles[$loop0]])) { $salle_courante = $tab_salle['indice'][$tab_liste_salles[$loop0]]['designation_complete']; } else { $salle_courante = ""; } $retour .= "\n\t<tr>\n\t\t<th>{$salle_courante}</th>"; for ($loop = 0; $loop < count($tab_liste_dates); $loop++) { $retour .= "\n\t\t<td>"; if (isset($tab_tableau[$tab_liste_dates[$loop]][$tab_liste_salles[$loop0]])) { $retour .= $tab_tableau[$tab_liste_dates[$loop]][$tab_liste_salles[$loop0]]; } $retour .= "</td>"; } $retour .= "\n\t</tr>"; } $retour .= "\n</table>"; /* while($lig2=mysqli_fetch_object($res2)) { if($lig2->date_evenement<strftime("%Y-%m-%d %H:%M:%S")) { $retour.="<span style='color:red'>".$lig2->classe." : ".formate_date($lig2->date_evenement, "y", "court")."</span>"; } else { $retour.=$lig2->classe." : ".formate_date($lig2->date_evenement, "y", "court"); } if(($lig2->id_salle>0)&&(isset($tab_salle['indice'][$lig2->id_salle]))) { $retour.=" (<em>salle ".$tab_salle['indice'][$lig2->id_salle]['designation_complete']."</em>)"; } $retour.="<br />"; } */ } $retour .= $lig->texte_apres; } elseif ($lig->type == 'conseil_de_classe') { $texte_infobulle = "<div id='div_action_conseil_de_classe_{$id_ev}'></div>"; $tabdiv_infobulle[] = creer_div_infobulle('div_infobulle_action_conseil_de_classe_' . $id_ev, "Bulletins et conseils de classe", "", $texte_infobulle, "", 40, 0, 'y', 'y', 'n', 'n'); $retour .= "<script type='text/javascript'>\n\tfunction afficher_action_classe_{$id_ev}(id_classe) {\n\t\tnew Ajax.Updater(\$('div_action_conseil_de_classe_{$id_ev}'), '{$gepiPath}/lib/ajax_action.php?mode=actions_conseil_classe&id_classe='+id_classe,{method: 'get'});\n\t\tafficher_div('div_infobulle_action_conseil_de_classe_{$id_ev}', 'y', 10, 10);\n\t}\n</script>"; $tab_classe_pp = array("id_classe"); if ($_SESSION['statut'] == "professeur") { $tab_classe_pp = get_tab_ele_clas_pp($_SESSION['login']); } if (getSettingAOui('active_mod_engagements')) { if ($_SESSION['statut'] == "scolarite" || $_SESSION['statut'] == "cpe" && getSettingAOui('imprimerConvocationConseilClasseCpe')) { $retour .= "<div style='float:right;width:16px;margin-right:3px;'><a href=\"{$gepiPath}/mod_engagements/imprimer_documents.php\" title=\"Imprimer les documents pour les délégués\"><img src='{$gepiPath}/images/icons/odt.png' class='icone16' alt='Document' /></a></div>"; } } $retour .= $lig->texte_avant; //$retour.="<br />"; if ($afficher_obsolete == "y") { if ($_SESSION['statut'] == 'professeur') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND id_classe IN (SELECT DISTINCT jgc.id_classe FROM j_groupes_classes jgc, j_groupes_professeurs jgp WHERE jgc.id_groupe=jgp.id_groupe AND jgp.login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'cpe') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND id_classe IN (SELECT DISTINCT jec.id_classe FROM j_eleves_classes jec, j_eleves_cpe jecpe WHERE jec.login=jecpe.e_login AND jecpe.cpe_login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'scolarite') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND id_classe IN (SELECT DISTINCT jsc.id_classe FROM j_scol_classes jsc WHERE jsc.login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'administrateur') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'responsable') { $sql = "SELECT DISTINCT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND id_classe IN (SELECT DISTINCT jec.id_classe FROM resp_pers rp, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tresponsables2 r, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\televes e, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tj_eleves_classes jec \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE rp.login='******'login'] . "' AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\trp.pers_id=r.pers_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tr.ele_id=e.ele_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\te.login=jec.login AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(r.resp_legal='1' OR r.resp_legal='2' OR r.acces_sp='y')\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'eleve') { $sql = "SELECT DISTINCT d.*, c.* FROM d_dates_evenements_classes d, classes c, j_eleves_classes jec WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND d.id_classe=jec.id_classe AND jec.login='******'login'] . "' ORDER BY date_evenement, classe;"; } } else { // 12h après if ($_SESSION['statut'] == 'professeur') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' AND id_classe IN (SELECT DISTINCT jgc.id_classe FROM j_groupes_classes jgc, j_groupes_professeurs jgp WHERE jgc.id_groupe=jgp.id_groupe AND jgp.login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'cpe') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' AND id_classe IN (SELECT DISTINCT jec.id_classe FROM j_eleves_classes jec, j_eleves_cpe jecpe WHERE jec.login=jecpe.e_login AND jecpe.cpe_login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'scolarite') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' AND id_classe IN (SELECT DISTINCT jsc.id_classe FROM j_scol_classes jsc WHERE jsc.login='******'login'] . "') ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'administrateur') { $sql = "SELECT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'responsable') { $sql = "(SELECT DISTINCT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' AND id_classe IN (SELECT DISTINCT jec.id_classe FROM resp_pers rp, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tresponsables2 r, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\televes e, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tj_eleves_classes jec \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE rp.login='******'login'] . "' AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\trp.pers_id=r.pers_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tr.ele_id=e.ele_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\te.login=jec.login AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(r.resp_legal='1' OR r.resp_legal='2' OR r.acces_sp='y')\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)) "; if (getSettingAOui('active_mod_engagements')) { $sql_test = "SELECT eu.valeur AS id_classe FROM engagements e, \n\t\t\t\t\t\t\t\t\t\t\tengagements_user eu\n\t\t\t\t\t\t\t\t\t\tWHERE e.id=eu.id_engagement AND \n\t\t\t\t\t\t\t\t\t\t\te.conseil_de_classe='yes' AND \n\t\t\t\t\t\t\t\t\t\t\teu.login='******'login'] . "' AND \n\t\t\t\t\t\t\t\t\t\t\te.type='id_classe' AND \n\t\t\t\t\t\t\t\t\t\t\teu.id_type='id_classe' AND \n\t\t\t\t\t\t\t\t\t\t\teu.valeur NOT IN (SELECT DISTINCT jec.id_classe FROM resp_pers rp, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tresponsables2 r, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\televes e, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tj_eleves_classes jec \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE rp.login='******'login'] . "' AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\trp.pers_id=r.pers_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tr.ele_id=e.ele_id AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\te.login=jec.login AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(r.resp_legal='1' OR r.resp_legal='2' OR r.acces_sp='y')\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);"; //echo "$sql_test<br />"; $res_test = mysqli_query($GLOBALS["mysqli"], $sql_test); if (mysqli_num_rows($res_test) > 0) { while ($lig_test = mysqli_fetch_object($res_test)) { $sql .= " UNION (SELECT DISTINCT * FROM d_dates_evenements_classes d, classes c WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' AND id_classe='" . $lig_test->id_classe . "')"; } } } $sql .= " ORDER BY date_evenement, classe;"; } elseif ($_SESSION['statut'] == 'eleve') { $sql = "SELECT DISTINCT d.*, c.* FROM d_dates_evenements_classes d, classes c, j_eleves_classes jec WHERE id_ev='{$id_ev}' AND d.id_classe=c.id AND d.id_classe=jec.id_classe AND jec.login='******'login'] . "' AND date_evenement>='" . strftime("%Y-%m-%d %H:%M:%S", time() - 12 * 3600) . "' ORDER BY date_evenement, classe;"; } } // DEBUG: //$retour.="$sql<br />"; $res2 = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res2) > 0) { // On va remplir un tableau et repérer les jours et heures. $tab_jours = array(); $tab_heures = array(); $tab_cellules = array(); while ($lig2 = mysqli_fetch_object($res2)) { $tmp_jour = get_date_slash_from_mysql_date($lig2->date_evenement, "court"); if (!in_array($tmp_jour, $tab_jours)) { $tab_jours[] = $tmp_jour; } //sort($tab_jours); $tmp_tab_pp = get_tab_prof_suivi($lig2->id_classe); //$liste_pp=implode(", ", $tmp_tab_pp); $liste_pp = ""; for ($loop = 0; $loop < count($tmp_tab_pp); $loop++) { if ($loop > 0) { $liste_pp .= ""; } $liste_pp .= affiche_utilisateur($tmp_tab_pp[$loop], $lig2->id_classe); } $tmp_heure = get_heure_2pt_minute_from_mysql_date($lig2->date_evenement); if (!in_array($tmp_heure, $tab_heures)) { $tab_heures[] = $tmp_heure; } sort($tab_heures); $indication_salle = ""; if ($lig2->id_salle > 0 && isset($tab_salle['indice'][$lig2->id_salle])) { $indication_salle = "\nSalle: " . $tab_salle['indice'][$lig2->id_salle]['designation_complete'] . ""; } /* if($lig2->date_evenement<strftime("%Y-%m-%d %H:%M:%S")) { if(!isset($tab_cellules[$tmp_jour][$tmp_heure])) { $tab_cellules[$tmp_jour][$tmp_heure]=""; } else { $tab_cellules[$tmp_jour][$tmp_heure].=" - "; } $tab_cellules[$tmp_jour][$tmp_heure].="<span style='color:red' title=\"La date du conseil de classe de $lig2->classe est passée : ".formate_date($lig2->date_evenement, "y")." ".ucfirst(getSettingValue('gepi_prof_suivi'))." : $liste_pp\">".$lig2->classe."</span>"; } else { */ if (!isset($tab_cellules[$tmp_jour][$tmp_heure])) { $tab_cellules[$tmp_jour][$tmp_heure] = ""; } else { $tab_cellules[$tmp_jour][$tmp_heure] .= " - "; } if ($_SESSION["statut"] == "professeur") { if (in_array($lig2->id_classe, $tab_classe_pp['id_classe'])) { if ($lig2->date_evenement < strftime("%Y-%m-%d %H:%M:%S")) { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span style='color:red' title=\"La date du conseil de classe de {$lig2->classe} est passée : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\n\nCliquer pour saisir/consulter l'avis du conseil de classe,\npour saisir vos notes et appréciations,\npour consulter les graphes, les bulletins,...\">"; $tab_cellules[$tmp_jour][$tmp_heure] .= "<a href='{$gepiPath}/saisie/saisie_avis1.php?id_classe={$lig2->id_classe}' style='color:red' onclick=\"afficher_action_classe_{$id_ev}({$lig2->id_classe});return false;\">"; } else { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span title=\"Date du conseil de classe de {$lig2->classe} : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\n\nCliquer pour saisir l'avis du conseil de classe,\npour saisir vos notes et appréciations,\npour consulter les graphes, les bulletins,...\">"; $tab_cellules[$tmp_jour][$tmp_heure] .= "<a href='{$gepiPath}/saisie/saisie_avis1.php?id_classe={$lig2->id_classe}' style='color:black' onclick=\"afficher_action_classe_{$id_ev}({$lig2->id_classe});return false;\">"; } $tab_cellules[$tmp_jour][$tmp_heure] .= $lig2->classe; $tab_cellules[$tmp_jour][$tmp_heure] .= "</a>"; $tab_cellules[$tmp_jour][$tmp_heure] .= "</span>"; if (getSettingAOui('active_mod_engagements')) { $tab_cellules[$tmp_jour][$tmp_heure] .= " <a href=\"{$gepiPath}/mod_engagements/imprimer_documents.php\" title=\"Imprimer les documents pour les délégués\"><img src='{$gepiPath}/images/icons/odt.png' class='icone16' alt='Document' /></a>"; } } else { $tab_cellules[$tmp_jour][$tmp_heure] .= "<a href='#' style='color:black' onclick=\"afficher_action_classe_{$id_ev}({$lig2->id_classe});return false;\">"; if ($lig2->date_evenement < strftime("%Y-%m-%d %H:%M:%S")) { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span style='color:red' title=\"La date du conseil de classe de {$lig2->classe} est passée : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\n\nCliquer pour consulter vos notes et appréciations, les graphes, les bulletins,...\">"; } else { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span title=\"Date du conseil de classe de {$lig2->classe} : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\n\nCliquer pour saisir vos notes et appréciations, consulter les graphes, les bulletins,...\">"; } // Problème: Un prof peut avoir plusieurs groupes dans une classe //$tab_cellules[$tmp_jour][$tmp_heure].="<a href='$gepiPath/saisie/saisie_appreciations.php?id_groupe=' style='color:black'>"; $tab_cellules[$tmp_jour][$tmp_heure] .= $lig2->classe; $tab_cellules[$tmp_jour][$tmp_heure] .= "</span>"; $tab_cellules[$tmp_jour][$tmp_heure] .= "</a>"; } } elseif ($_SESSION["statut"] == "scolarite") { if ($lig2->date_evenement < strftime("%Y-%m-%d %H:%M:%S")) { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span style='color:red' title=\"La date du conseil de classe de {$lig2->classe} est passée : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\n\nCliquer pour saisir/consulter l'avis du conseil de classe,\n pour accéder aux bulletins, aux graphes,...\">"; $tab_cellules[$tmp_jour][$tmp_heure] .= "<a href='{$gepiPath}/saisie/saisie_avis1.php?id_classe={$lig2->id_classe}' style='color:red' onclick=\"afficher_action_classe_{$id_ev}({$lig2->id_classe});return false;\">"; } else { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span title=\"Date du conseil de classe de {$lig2->classe} : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\n\nCliquer pour saisir l'avis du conseil de classe,\n pour accéder aux bulletins, aux graphes,...\">"; $tab_cellules[$tmp_jour][$tmp_heure] .= "<a href='{$gepiPath}/saisie/saisie_avis1.php?id_classe={$lig2->id_classe}' style='color:black' onclick=\"afficher_action_classe_{$id_ev}({$lig2->id_classe});return false;\">"; } $tab_cellules[$tmp_jour][$tmp_heure] .= $lig2->classe; $tab_cellules[$tmp_jour][$tmp_heure] .= "</a>"; $tab_cellules[$tmp_jour][$tmp_heure] .= "</span>"; } elseif ($_SESSION["statut"] == "cpe") { if ($lig2->date_evenement < strftime("%Y-%m-%d %H:%M:%S")) { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span style='color:red' title=\"La date du conseil de classe de {$lig2->classe} est passée : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\">"; } else { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span title=\"Date du conseil de classe de {$lig2->classe} : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\">"; } $tab_cellules[$tmp_jour][$tmp_heure] .= $lig2->classe; $tab_cellules[$tmp_jour][$tmp_heure] .= "</span>"; } elseif ($_SESSION["statut"] == "administrateur") { if ($lig2->date_evenement < strftime("%Y-%m-%d %H:%M:%S")) { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span style='color:red' title=\"La date du conseil de classe de {$lig2->classe} est passée : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\">"; } else { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span title=\"Date du conseil de classe de {$lig2->classe} : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\">"; } $tab_cellules[$tmp_jour][$tmp_heure] .= $lig2->classe; $tab_cellules[$tmp_jour][$tmp_heure] .= "</span>"; } elseif ($_SESSION["statut"] == "responsable" || $_SESSION["statut"] == "eleve") { if ($lig2->date_evenement < strftime("%Y-%m-%d %H:%M:%S")) { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span style='color:red' title=\"La date du conseil de classe de {$lig2->classe} est passée : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\">"; } else { $tab_cellules[$tmp_jour][$tmp_heure] .= "<span title=\"Date du conseil de classe de {$lig2->classe} : " . formate_date($lig2->date_evenement, "y") . "\n" . ucfirst(retourne_denomination_pp($lig2->id_classe)) . " : " . $liste_pp . $indication_salle . "\">"; } $tab_cellules[$tmp_jour][$tmp_heure] .= $lig2->classe; $tab_cellules[$tmp_jour][$tmp_heure] .= "</span>"; if (getSettingAOui('active_mod_engagements') && is_delegue_conseil_classe($_SESSION['login'], $lig2->id_classe)) { $tab_cellules[$tmp_jour][$tmp_heure] .= " <a href=\"{$gepiPath}/mod_engagements/imprimer_documents.php?id_classe=" . $lig2->id_classe . "&imprimer=liste_eleves\" title=\"Imprimer la liste des élèves pour prendre des notes pendant le conseil de classe\" target='_blank'><img src='{$gepiPath}/images/icons/tableau.png' class='icone16' alt='Document' /></a>"; $tab_cellules[$tmp_jour][$tmp_heure] .= " <a href=\"{$gepiPath}/mod_engagements/imprimer_documents.php?id_classe=" . $lig2->id_classe . "&imprimer=convocation\" title=\"Imprimer la convocation pour le conseil de classe\" target='_blank'><img src='{$gepiPath}/images/icons/saisie.png' class='icone16' alt='Document' /></a>"; } } //} } $retour .= "<table class='boireaus boireaus_alt' summary='Dates de conseils de classe'>\n\t<thead>\n\t\t<tr>\n\t\t\t<th>"; if (in_array("professeur", $tab_u)) { $retour .= " <img src='{$gepiPath}/images/icons/prof.png' class='icone16' alt='Prof' title=\"Professeurs de la classe.\" />"; } if (in_array("cpe", $tab_u)) { $retour .= " <img src='{$gepiPath}/images/icons/cpe.png' class='icone16' alt='Cpe' title=\"CPE de la classe.\" />"; } if (in_array("scolarite", $tab_u)) { $retour .= " <img src='{$gepiPath}/images/icons/scolarite.png' class='icone16' alt='Scol' title=\"Comptes scolarité associés à la classe.\" />"; } if (in_array("responsable", $tab_u)) { $retour .= " <img src='{$gepiPath}/images/icons/responsable.png' class='icone16' alt='Resp' title=\"Comptes responsables associés à la classe.\" />"; } if (in_array("eleve", $tab_u)) { $retour .= " <img src='{$gepiPath}/images/icons/eleve.png' class='icone16' alt='Resp' title=\"Élèves de la classe.\" />"; } //$retour.="<br />"; $retour .= "</th>"; for ($j = 0; $j < count($tab_jours); $j++) { $retour .= "\n\t\t\t<th>" . $tab_jours[$j] . "</th>"; } $retour .= "\n\t</thead>\n\t<tbody>"; for ($i = 0; $i < count($tab_heures); $i++) { $retour .= "\n\t\t<tr>\n\t\t\t<th>" . $tab_heures[$i] . "</th>"; for ($j = 0; $j < count($tab_jours); $j++) { $retour .= "\n\t\t\t<td>"; if (isset($tab_cellules[$tab_jours[$j]][$tab_heures[$i]])) { $retour .= $tab_cellules[$tab_jours[$j]][$tab_heures[$i]]; } $retour .= "</td>"; } $retour .= "\n\t\t</tr>"; } $retour .= "\n\t</tbody>\n</table>"; } $retour .= $lig->texte_apres; } } return $retour; }
if(mysqli_num_rows($res_vis)==0) { echo " <li> <input type='hidden' name='id_groupe_AppPP[$cpt_grp_pp]' value='".$group['id']."' /> <input type='checkbox' name='id_groupe_PP_correction_autorisee[$cpt_grp_pp]' id='id_groupe_PP_correction_autorisee_$cpt_grp_pp' value='y' onchange=\"checkbox_change('id_groupe_PP_correction_autorisee_$cpt_grp_pp');changement()\" "; if(acces_correction_app_pp($group['id'])) { echo "checked "; } echo "/><label for='id_groupe_PP_correction_autorisee_$cpt_grp_pp' id='texte_id_groupe_PP_correction_autorisee_$cpt_grp_pp'"; if(acces_correction_app_pp($group['id'])) { echo "style='font-weight:bold;' "; } echo ">".$group['name']." (<em style='font-size:small;'>".$group['description']." en ".$group['classlist_string']." avec ".$group['profs']['proflist_string']."</em>) : "; $cpt_class_grp=0; foreach($group['classes']['classes'] as $current_id_classe => $current_classe) { $gepi_prof_suivi=ucfirst(retourne_denomination_pp($current_id_classe)); if($cpt_class_grp>0) {echo ", ";} echo "<strong>".$current_classe['classe']."</strong> (<em title=\"".ucfirst($gepi_prof_suivi)."\">".liste_des_prof_suivi_de_telle_classe($current_id_classe)."</em>)"; $cpt_class_grp++; } echo "</label> </li>"; $cpt_grp_pp++; } } echo " </ul>"; } echo "<p style='text-align:center;'>\n"; echo "<input type='submit' name='Valider' value='Enregistrer' tabindex='$tabindex' />\n";
function extract_utilisateurs($tab_login) { global $cpt_pers, $tab_result_recherche, $acces_modify_user, $gepiPath; for ($loop_tab_login = 0; $loop_tab_login < count($tab_login); $loop_tab_login++) { $sql = "SELECT * FROM utilisateurs WHERE login='******';"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { $lig = mysqli_fetch_object($res); $style_ligne = ""; if ($lig->etat == 'inactif') { $style_ligne = " style='background-color:grey;'"; } $tab_result_recherche['personnel'][$cpt_pers]['style_ligne'] = $style_ligne; // Login if ($_SESSION['statut'] == 'administrateur' || $_SESSION['statut'] == 'scolarite') { $tab_result_recherche['personnel'][$cpt_pers]['login'] = $lig->login; if ($acces_modify_user) { $tab_result_recherche['personnel'][$cpt_pers]['td_login'] = "******"Modifier les informations utilisateur\">{$lig->login}</a>"; } else { $tab_result_recherche['personnel'][$cpt_pers]['td_login'] = $lig->login; } } $tab_result_recherche['personnel'][$cpt_pers]['nom_prenom'] = casse_mot($lig->nom, "maj") . " " . casse_mot($lig->prenom, "majf2"); $tab_result_recherche['personnel'][$cpt_pers]['civ_nom_prenom'] = $lig->civilite . " " . $tab_result_recherche['personnel'][$cpt_pers]['nom_prenom']; $tab_result_recherche['personnel'][$cpt_pers]['email'] = $lig->email; $tab_result_recherche['personnel'][$cpt_pers]['td_email'] = ""; if (check_mail($lig->email)) { $tab_result_recherche['personnel'][$cpt_pers]['td_email'] = "<a href='mailto:" . $lig->email . "?subject=" . getSettingValue('gepiPrefixeSujetMail') . "GEPI' title='Envoyer un mail à {$lig->email}'><img src='../images/icons/courrier_envoi.png' class='icone16' alt='Mail' /></a><span id='email_personnel_" . $cpt_pers . "' style='display:none;'>{$lig->email}</span>"; } // Compte actif ou non $tab_result_recherche['personnel'][$cpt_pers]['td_compte'] = ""; $tab_result_recherche['personnel'][$cpt_pers]['compte'] = ""; if ($lig->login != "") { if ($_SESSION['statut'] == 'administrateur') { $tab_result_recherche['personnel'][$cpt_pers]['td_compte'] = lien_image_compte_utilisateur($lig->login, "", "", "y", 'y'); } else { $tab_result_recherche['personnel'][$cpt_pers]['td_compte'] = lien_image_compte_utilisateur($lig->login, "", "", "n", 'y'); } if (preg_match("/inactif/", $tab_result_recherche['personnel'][$cpt_pers]['td_compte'])) { $tab_result_recherche['personnel'][$cpt_pers]['compte'] = "inactif"; } else { $tab_result_recherche['personnel'][$cpt_pers]['compte'] = "actif"; } $tab_result_recherche['personnel'][$cpt_pers]['td_compte'] .= temoin_compte_sso($lig->login); } $tab_result_recherche['personnel'][$cpt_pers]['statut'] = $lig->statut; // Matières $tab_result_recherche['personnel'][$cpt_pers]['td_matieres'] = ""; $tab_result_recherche['personnel'][$cpt_pers]['matieres'] = ""; if ($lig->statut == 'professeur') { $tab_matieres_prof = get_matieres_from_prof($lig->login); for ($loop = 0; $loop < count($tab_matieres_prof); $loop++) { if ($loop > 0) { $tab_result_recherche['personnel'][$cpt_pers]['matieres'] .= ", "; $tab_result_recherche['personnel'][$cpt_pers]['td_matieres'] .= ", "; } $tab_result_recherche['personnel'][$cpt_pers]['matieres'] .= $tab_matieres_prof[$loop]['matiere']; if ($tab_matieres_prof[$loop]['enseignee'] == 'y') { $tab_result_recherche['personnel'][$cpt_pers]['td_matieres'] .= "<span style='font-weight:bold' title=\"" . $tab_matieres_prof[$loop]['nom_complet'] . "\">" . $tab_matieres_prof[$loop]['matiere'] . "</span>"; } else { $tab_result_recherche['personnel'][$cpt_pers]['td_matieres'] .= "<span style='font-size:xx-small' title=\"" . $tab_matieres_prof[$loop]['nom_complet'] . " (non enseignée cette année)\">" . $tab_matieres_prof[$loop]['matiere'] . "</span>"; } } } // Classes $tab_result_recherche['personnel'][$cpt_pers]['classes'] = ""; $tab_result_recherche['personnel'][$cpt_pers]['td_classes'] = ""; if ($lig->statut == 'professeur') { $tab_classes_prof = get_classes_from_prof($lig->login); $tab_classes_pp = get_tab_prof_suivi("", $lig->login); if (count($tab_classes_prof) > 0) { $cpt_classe = 0; foreach ($tab_classes_prof as $id_classe_prof => $classe_prof) { if ($cpt_classe > 0) { $tab_result_recherche['personnel'][$cpt_pers]['classes'] .= ", "; $tab_result_recherche['personnel'][$cpt_pers]['td_classes'] .= ", "; } $tab_result_recherche['personnel'][$cpt_pers]['classes'] .= $classe_prof; if ($acces_modify_user) { $tab_result_recherche['personnel'][$cpt_pers]['td_classes'] .= "<a href='{$gepiPath}/groupes/edit_class.php?id_classe={$id_classe_prof}' title=\"Modifier les enseignements de la classe {$classe_prof}\">{$classe_prof}</a>"; } else { $tab_result_recherche['personnel'][$cpt_pers]['td_classes'] .= $classe_prof; } if (in_array($id_classe_prof, $tab_classes_pp)) { $tab_result_recherche['personnel'][$cpt_pers]['td_classes'] .= " <img src='../images/bulle_verte.png' title=\"" . $tab_result_recherche['personnel'][$cpt_pers]['civ_nom_prenom'] . " est " . retourne_denomination_pp($id_classe_prof) . " d'au moins un élève de la classe de " . $classe_prof . " sur une des périodes.\" height='9' width='9'>"; } $cpt_classe++; } } } //$compteur_personnes_trouvees++; $cpt_pers++; } } }
echo $classe['id']; ?> " <?php if (isset($parents_id_classe)) { if ($classe['id'] == $parents_id_classe) { echo "selected"; } } ?> title="Déposer un message sur le Panneau d'affichage pour tous les responsables (parents,...) d'élèves de la classe de <?php echo $classe['classe']; ?> . Pour information, le <?php echo retourne_denomination_pp($classe['id']); ?> de la classe est : <?php echo liste_des_prof_suivi_de_telle_classe($classe['id']); ?> "><?php echo $classe['nom_complet']; if ($classe['nom_complet'] != $classe['classe']) { echo " (" . $classe['classe'] . ")"; } ?> </option> <?php } ?>
function info_eleve($ele_login) { global $ele_lieu_naissance; global $active_cahiers_texte; global $date_ct1, $date_ct2; global $type_etablissement, $type_etablissement2; global $acces_eleve, $acces_responsables, $acces_enseignements, $acces_releves, $acces_bulletins, $acces_cdt, $acces_anna; global $date_debut_disc, $date_fin_disc; unset($tab_ele); $tab_ele = array(); // Récup des infos sur l'élève, les responsables, le PP, le CPE,... $sql = "SELECT * FROM eleves e WHERE e.login='******';"; $res_ele = mysqli_query($GLOBALS["mysqli"], $sql); $lig_ele = mysqli_fetch_object($res_ele); $tab_ele['login'] = $ele_login; $tab_ele['nom'] = $lig_ele->nom; $tab_ele['prenom'] = $lig_ele->prenom; $tab_ele['sexe'] = $lig_ele->sexe; $tab_ele['naissance'] = formate_date($lig_ele->naissance); $tab_ele['elenoet'] = $lig_ele->elenoet; $tab_ele['ele_id'] = $lig_ele->ele_id; $tab_ele['no_gep'] = $lig_ele->no_gep; $tab_ele['email'] = $lig_ele->email; $tab_ele['date_sortie'] = $lig_ele->date_sortie; $tab_ele['code_lieu_naissance'] = $lig_ele->lieu_naissance; if ($ele_lieu_naissance == "y") { $tab_ele['lieu_naissance'] = get_commune($tab_ele['code_lieu_naissance'], 1); } else { $tab_ele['lieu_naissance'] = ""; } $tab_ele['mef'] = ""; $tmp_tab = get_tab_mef_from_mef_code($lig_ele->mef_code); if (isset($tmp_tab['designation_courte'])) { $tab_ele['mef'] = $tmp_tab['designation_courte']; } unset($tmp_tab); if ($_SESSION['statut'] == "professeur") { $is_pp = is_pp($_SESSION['login'], "", $ele_login); } $AccesDerniereConnexionEle = AccesDerniereConnexionEle($ele_login); $AccesDerniereConnexionResp = AccesDerniereConnexionResp("", $ele_login); $sql = "SELECT * FROM utilisateurs WHERE statut='eleve' AND login='******';"; $res_user = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_user) == 1) { $lig_user = mysqli_fetch_object($res_user); $tab_user = array('login', 'show_email', 'etat', 'date_verrouillage', 'niveau_alerte', 'observation_securite', 'auth_mode'); for ($loop = 0; $loop < count($tab_user); $loop++) { $champ = $tab_user[$loop]; $tab_ele['compte_utilisateur'][$champ] = $lig_user->{$champ}; } if ($AccesDerniereConnexionEle) { $tab_ele['compte_utilisateur']['DerniereConnexionEle'] = get_last_connexion($ele_login); $tab_ele['compte_utilisateur']['DerniereConnexionEle_Echec'] = get_last_connexion($ele_login, "n"); } } $tab_ele['prof_liste_email'] = ""; $tab_ele['tab_prof_liste_email'] = array(); /* $tab_ele['classe']=array(); $sql="SELECT DISTINCT c.*,jec.periode FROM classes c, j_eleves_classes jec WHERE jec.login='******' AND c.id=jec.id_classe ORDER BY jec.periode;"; $res_clas=mysql_query($sql); if(mysql_num_rows($res_clas)>0) { $tab_ele['liste_classes']=""; $cpt=0; while($lig_clas=mysql_fetch_object($res_clas)) { if($cpt>0) {$tab_ele['liste_classes'].=", ";} $tab_ele['liste_classes']=$lig_clas->classe; $tab_ele['classe'][$cpt]['id_classe']=$lig_clas->id; $tab_ele['classe'][$cpt]['classe']=$lig_clas->classe; $tab_ele['classe'][$cpt]['nom_complet']=$lig_clas->nom_complet; $tab_ele['classe'][$cpt]['periode']=$lig_clas->periode; // Récup infos Prof Principal (prof_suivi) $sql="SELECT u.* FROM j_eleves_professeurs jep, utilisateurs u WHERE jep.login='******' AND id_classe='".$lig_clas->id."' AND jep.professeur=u.login;"; $res_pp=mysql_query($sql); //echo "$sql<br />"; if(mysql_num_rows($res_pp)>0) { $lig_pp=mysql_fetch_object($res_pp); $tab_ele['classe'][$cpt]['pp']=array(); $tab_ele['classe'][$cpt]['pp']['login']=$lig_pp->login; $tab_ele['classe'][$cpt]['pp']['nom']=$lig_pp->nom; $tab_ele['classe'][$cpt]['pp']['prenom']=$lig_pp->prenom; $tab_ele['classe'][$cpt]['pp']['civilite']=$lig_pp->civilite; } $cpt++; } } */ // Classes $tab_ele['classe'] = array(); $sql = "SELECT DISTINCT c.* FROM classes c, j_eleves_classes jec WHERE jec.login='******' AND c.id=jec.id_classe ORDER BY jec.periode;"; $res_clas = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_clas) > 0) { $tab_ele['liste_classes'] = ""; $cpt = 0; while ($lig_clas = mysqli_fetch_object($res_clas)) { if ($cpt > 0) { $tab_ele['liste_classes'] .= ", "; } $tab_ele['liste_classes'] = $lig_clas->classe; $tab_ele['classe'][$cpt] = array(); $tab_ele['classe'][$cpt]['id_classe'] = $lig_clas->id; $tab_ele['classe'][$cpt]['classe'] = $lig_clas->classe; $tab_ele['classe'][$cpt]['nom_complet'] = $lig_clas->nom_complet; // On devrait mettre $tab_ele['classe'][$cpt]['rn_nomdev'], mais j'ai mis $tab_ele['rn_nomdev'] // C'est imparfait si l'élève n'est pas dans la même classe sur toutes les périodes , mais cela permet de garder le même code pour visu_releve_notes_func.lib.php et la présente page //$tab_ele['rn_app']=$lig_clas->; // Ca ne correspond pas à un champ dans la table 'classes' $tab_ele['rn_nomdev'] = $lig_clas->rn_nomdev; $tab_ele['rn_toutcoefdev'] = $lig_clas->rn_toutcoefdev; $tab_ele['rn_coefdev_si_diff'] = $lig_clas->rn_coefdev_si_diff; $tab_ele['rn_datedev'] = $lig_clas->rn_datedev; $tab_ele['rn_sign_chefetab'] = $lig_clas->rn_sign_chefetab; $tab_ele['rn_sign_pp'] = $lig_clas->rn_sign_pp; $tab_ele['rn_sign_resp'] = $lig_clas->rn_sign_resp; $tab_ele['rn_formule'] = $lig_clas->rn_formule; $tab_ele['rn_sign_nblig'] = $lig_clas->rn_sign_nblig; if ($tab_ele['rn_sign_nblig'] == 0) { $tab_ele['rn_sign_nblig'] = 3; } //echo "\$tab_ele['rn_sign_resp']=$lig_clas->rn_sign_resp<br/>"; // Liste des périodes dans la classe $sql = "SELECT p.* FROM periodes p, j_eleves_classes jec WHERE jec.login='******' AND p.num_periode=jec.periode AND jec.id_classe='" . $lig_clas->id . "' AND p.id_classe=jec.id_classe ORDER BY p.num_periode;"; $res_per = mysqli_query($GLOBALS["mysqli"], $sql); $cpt2 = 0; if (mysqli_num_rows($res_per) > 0) { $tab_ele['classe'][$cpt]['periodes'][$cpt2] = array(); while ($lig_per = mysqli_fetch_object($res_per)) { $tab_ele['classe'][$cpt]['periodes'][$cpt2]['num_periode'] = $lig_per->num_periode; $tab_ele['classe'][$cpt]['periodes'][$cpt2]['nom_periode'] = $lig_per->nom_periode; // On pourrait extraire les relevés de notes et bulletins à ce niveau $cpt2++; } } // Récup infos Prof Principal (prof_suivi) $sql = "SELECT u.* FROM j_eleves_professeurs jep, utilisateurs u WHERE jep.login='******' AND id_classe='" . $lig_clas->id . "' AND jep.professeur=u.login;"; $res_pp = mysqli_query($GLOBALS["mysqli"], $sql); //echo "$sql<br />"; if (mysqli_num_rows($res_pp) > 0) { $lig_pp = mysqli_fetch_object($res_pp); $tab_ele['classe'][$cpt]['pp'] = array(); $tab_ele['classe'][$cpt]['pp']['prof_login'] = $lig_pp->login; $tab_ele['classe'][$cpt]['pp']['nom'] = $lig_pp->nom; $tab_ele['classe'][$cpt]['pp']['prenom'] = $lig_pp->prenom; $tab_ele['classe'][$cpt]['pp']['civilite'] = $lig_pp->civilite; $tab_ele['classe'][$cpt]['pp']['email'] = $lig_pp->email; $tab_ele['classe'][$cpt]['pp']['civ_nom_prenom'] = $lig_pp->civilite . " " . $lig_pp->nom . " " . mb_substr($lig_pp->prenom, 0, 1) . "."; } $cpt++; } } // Périodes //$sql="SELECT DISTINCT p.*, jec.id_classe, c.classe, c.nom_complet FROM periodes p, j_eleves_classes jec, classes c WHERE jec.login='******' AND p.num_periode=jec.periode AND c.id=jec.id_classe ORDER BY p.num_periode;"; $sql = "SELECT DISTINCT p.*,jec.id_classe, c.classe, c.nom_complet FROM periodes p, j_eleves_classes jec, classes c WHERE jec.login='******' AND p.num_periode=jec.periode AND jec.id_classe=p.id_classe AND c.id=jec.id_classe ORDER BY p.num_periode;"; //echo "$sql<br />"; $res_per = mysqli_query($GLOBALS["mysqli"], $sql); $cpt = 0; if (mysqli_num_rows($res_per) > 0) { if ($acces_releves == 'y' || $acces_enseignements == 'y' || $acces_bulletins == 'y') { while ($lig_per = mysqli_fetch_object($res_per)) { $tab_ele['periodes'][$cpt] = array(); $tab_ele['periodes'][$cpt]['num_periode'] = $lig_per->num_periode; $tab_ele['periodes'][$cpt]['nom_periode'] = $lig_per->nom_periode; $tab_ele['periodes'][$cpt]['id_classe'] = $lig_per->id_classe; $tab_ele['periodes'][$cpt]['classe'] = $lig_per->classe; $tab_ele['periodes'][$cpt]['nom_complet'] = $lig_per->nom_complet; $tab_ele['periodes'][$cpt]['gepi_prof_suivi'] = retourne_denomination_pp($lig_per->id_classe); //echo "\$tab_ele['periodes'][$cpt]['num_periode']=".$tab_ele['periodes'][$cpt]['num_periode']."<br />"; //echo "\$tab_ele['periodes'][$cpt]['id_classe']=".$tab_ele['periodes'][$cpt]['id_classe']."<br />"; // On regarde si on affiche les catégories de matières dans la classe courante de l'élève $affiche_categories = sql_query1("SELECT display_mat_cat FROM classes WHERE id='" . $lig_per->id_classe . "'"); if ($affiche_categories == "y") { $affiche_categories = true; } else { $affiche_categories = false; } $tab_ele['periodes'][$cpt]['affiche_categories'] = $affiche_categories; if ($affiche_categories) { $sql = "SELECT DISTINCT g.*,m.nom_complet " . "FROM j_eleves_groupes jeg,\n\t\t\t\t\t\t\tj_groupes_classes jgc,\n\t\t\t\t\t\t\tj_groupes_matieres jgm,\n\t\t\t\t\t\t\tj_matieres_categories_classes jmcc,\n\t\t\t\t\t\t\tmatieres m,\n\t\t\t\t\t\t\tgroupes g " . "WHERE ( " . "jeg.login = '******' AND " . "jgc.id_groupe = jeg.id_groupe AND " . "jgc.categorie_id = jmcc.categorie_id AND " . "jgc.id_classe = '" . $lig_per->id_classe . "' AND " . "jgm.id_groupe = jgc.id_groupe AND " . "m.matiere = jgm.id_matiere AND " . "g.id=jeg.id_groupe " . "AND jgc.id_groupe NOT IN (SELECT id_groupe FROM j_groupes_visibilite WHERE domaine='cahier_notes' AND visible='n')) " . "ORDER BY jmcc.priority,jgc.priorite,m.nom_complet"; } else { $sql = "SELECT DISTINCT g.*,m.nom_complet " . "FROM j_groupes_classes jgc, j_groupes_matieres jgm, j_eleves_groupes jeg, matieres m, groupes g " . "WHERE ( " . "jeg.login = '******' AND " . "jgc.id_groupe = jeg.id_groupe AND " . "jgc.id_classe = '" . $lig_per->id_classe . "' AND " . "jgm.id_groupe = jgc.id_groupe AND\n\t\t\t\t\tm.matiere=jgm.id_matiere AND jgm.id_groupe=g.id " . "AND jgc.id_groupe NOT IN (SELECT id_groupe FROM j_groupes_visibilite WHERE domaine='cahier_notes' AND visible='n')) " . "ORDER BY jgc.priorite,jgm.id_matiere"; } //$sql="SELECT DISTINCT g.*,m.nom_complet FROM groupes g, j_groupes_matieres jgm, matieres m, j_groupes_classes jgc, j_eleves_groupes jeg WHERE g.id=jgm.id_groupe AND m.matiere=jgm.id_matiere AND jgc.id_groupe=jgm.id_groupe AND jeg.id_groupe=g.id AND jeg.periode='".$lig_per->num_periode."' AND jeg.login='******' ORDER BY jgc.priorite,m.nom_complet;"; //echo "$sql<br />"; $res_grp = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_grp) > 0) { $cpt2 = 0; while ($lig_grp = mysqli_fetch_object($res_grp)) { $tab_ele['periodes'][$cpt]['groupes'][$cpt2] = array(); $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['id_groupe'] = $lig_grp->id; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['name'] = $lig_grp->name; //echo "\$tab_ele['periodes'][$cpt]['groupes'][$cpt2]['name']=".$tab_ele['periodes'][$cpt]['groupes'][$cpt2]['name']."<br />"; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['description'] = $lig_grp->description; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['matiere_nom_complet'] = $lig_grp->nom_complet; if ($affiche_categories) { //$sql="SELECT DISTINCT jgc.categorie_id FROM j_groupes_classes jgc WHERE jgc.id_groupe='".$lig_grp->id."' AND id_classe='".$tab_ele['periodes'][$cpt]['id_classe']."';"; $sql = "SELECT DISTINCT jgc.categorie_id, mc.nom_court, mc.nom_complet FROM j_groupes_classes jgc, matieres_categories mc WHERE jgc.id_groupe='" . $lig_grp->id . "' AND id_classe='" . $tab_ele['periodes'][$cpt]['id_classe'] . "' AND mc.id=jgc.categorie_id;"; //echo "$sql<br />"; $res_cat = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_cat) > 0) { $lig_cat = mysqli_fetch_object($res_cat); $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['id_cat'] = $lig_cat->categorie_id; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['cat_nom_court'] = $lig_cat->nom_court; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['cat_nom_complet'] = $lig_cat->nom_complet; //echo "\$tab_ele['periodes'][$cpt]['groupes'][$cpt2]['id_cat']=".$tab_ele['periodes'][$cpt]['groupes'][$cpt2]['id_cat']."<br />"; } } $sql = "SELECT DISTINCT d.coef FROM cn_notes_devoirs nd, cn_devoirs d, cn_cahier_notes cn WHERE (\n\t\t\t\t\t\tnd.login = '******' and\n\t\t\t\t\t\tnd.id_devoir = d.id and\n\t\t\t\t\t\td.display_parents='1' and\n\t\t\t\t\t\td.id_racine = cn.id_cahier_notes and\n\t\t\t\t\t\tcn.id_groupe = '" . $lig_grp->id . "' and\n\t\t\t\t\t\tcn.periode = '" . $lig_per->num_periode . "'\n\t\t\t\t\t\t)"; $res_differents_coef = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_differents_coef) > 1) { $differents_coef = "y"; } else { $differents_coef = "n"; } $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['differents_coef'] = $differents_coef; $sql1 = "SELECT d.coef, nd.note, nd.comment, d.nom_court, nd.statut, d.date, d.note_sur, d.display_parents_app FROM cn_notes_devoirs nd, cn_devoirs d, cn_cahier_notes cn WHERE (\n\t\t\t\t\t\tnd.login = '******' and\n\t\t\t\t\t\tnd.id_devoir = d.id and\n\t\t\t\t\t\td.display_parents='1' and\n\t\t\t\t\t\td.id_racine = cn.id_cahier_notes and\n\t\t\t\t\t\tcn.id_groupe = '" . $lig_grp->id . "' and\n\t\t\t\t\t\tcn.periode = '" . $lig_per->num_periode . "'\n\t\t\t\t\t\t)\n\t\t\t\t\t\tORDER BY d.date\n\t\t\t\t\t\t"; $query_notes = mysqli_query($GLOBALS["mysqli"], $sql1); $count_notes = mysqli_num_rows($query_notes); $m = 0; while ($m < $count_notes) { $eleve_display_app = @old_mysql_result($query_notes, $m, 'display_parents_app'); $eleve_app = @old_mysql_result($query_notes, $m, 'comment'); $eleve_note = @old_mysql_result($query_notes, $m, 'note'); $eleve_statut = @old_mysql_result($query_notes, $m, 'statut'); $eleve_nom_court = @old_mysql_result($query_notes, $m, 'nom_court'); $date_note = @old_mysql_result($query_notes, $m, 'date'); $coef_devoir = @old_mysql_result($query_notes, $m, 'coef'); $note_sur_devoir = @old_mysql_result($query_notes, $m, 'note_sur'); $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['devoir'][$m]['display_app'] = $eleve_display_app; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['devoir'][$m]['app'] = $eleve_app; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['devoir'][$m]['note'] = $eleve_note; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['devoir'][$m]['statut'] = $eleve_statut; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['devoir'][$m]['nom_court'] = $eleve_nom_court; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['devoir'][$m]['date'] = $date_note; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['devoir'][$m]['coef'] = $coef_devoir; $tab_ele['periodes'][$cpt]['groupes'][$cpt2]['devoir'][$m]['note_sur'] = $note_sur_devoir; // On ne récupère pas le nom long du devoir? $m++; } $cpt2++; } } $cpt++; } } $sql = "SELECT DISTINCT g.*,m.nom_complet FROM groupes g, j_groupes_matieres jgm, matieres m, j_groupes_classes jgc, j_eleves_groupes jeg WHERE g.id=jgm.id_groupe AND m.matiere=jgm.id_matiere AND jgc.id_groupe=jgm.id_groupe AND jeg.id_groupe=g.id AND jeg.login='******' ORDER BY jgc.priorite,m.nom_complet;"; //echo "$sql<br />"; $res_grp = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_grp) > 0) { $cpt = 0; while ($lig_grp = mysqli_fetch_object($res_grp)) { $tab_ele['groupes'][$cpt] = array(); $tab_ele['groupes'][$cpt]['id_groupe'] = $lig_grp->id; $tab_ele['groupes'][$cpt]['name'] = $lig_grp->name; $tab_ele['groupes'][$cpt]['description'] = $lig_grp->description; $tab_ele['groupes'][$cpt]['matiere_nom_complet'] = $lig_grp->nom_complet; $tab_ele['index_grp'][$lig_grp->id] = $cpt; $sql = "SELECT periode FROM j_eleves_groupes WHERE login='******' AND id_groupe='" . $lig_grp->id . "' ORDER BY periode;"; $res_per2 = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_per2) > 0) { $tab_ele['groupes'][$cpt]['periodes'] = array(); while ($lig_per2 = mysqli_fetch_object($res_per2)) { $tab_ele['groupes'][$cpt]['periodes'][] = $lig_per2->periode; } } $sql = "SELECT u.* FROM utilisateurs u, j_groupes_professeurs jgp WHERE u.login=jgp.login AND id_groupe='" . $lig_grp->id . "' ORDER BY u.nom, u.prenom;"; $res_prof = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_prof) > 0) { $tab_ele['groupes'][$cpt]['prof'] = array(); $tab_ele['groupes'][$cpt]['prof_liste'] = ""; //$tab_ele['groupes'][$cpt]['prof_liste_email']=""; $cpt2 = 0; while ($lig_prof = mysqli_fetch_object($res_prof)) { if ($cpt2 > 0) { $tab_ele['groupes'][$cpt]['prof_liste'] .= ", "; } $tab_ele['groupes'][$cpt]['prof'][$cpt2]['prof_login'] = $lig_prof->login; $tab_ele['groupes'][$cpt]['prof'][$cpt2]['nom'] = $lig_prof->nom; $tab_ele['groupes'][$cpt]['prof'][$cpt2]['prenom'] = $lig_prof->prenom; $tab_ele['groupes'][$cpt]['prof'][$cpt2]['civilite'] = $lig_prof->civilite; $tab_ele['groupes'][$cpt]['prof'][$cpt2]['email'] = $lig_prof->email; //if($lig_prof->email!='') { // if($tab_ele['groupes'][$cpt]['prof'][$cpt2]['prof_liste_email']!='') {$tab_ele['groupes'][$cpt]['prof_liste_email'].=", ";} // $tab_ele['groupes'][$cpt]['prof_liste_email'].=$lig_prof->email; //} if ($lig_prof->email != '' && !in_array($lig_prof->email, $tab_ele['tab_prof_liste_email'])) { $tab_ele['tab_prof_liste_email'][] = $lig_prof->email; } $tab_ele['groupes'][$cpt]['prof_liste'] .= $lig_prof->civilite . " " . $lig_prof->nom . " " . mb_substr($lig_prof->prenom, 0, 1) . "."; $cpt2++; } } $cpt++; } } // Je ne suis pas sûr de la façon la plus pertinente de gérer les groupes/périodes... et il y aurait aussi les classes: // $tab_ele['groupes'][$cpt]['periodes'][] // ou $tab_ele['periodes'][$cpt]['groupes'][] // ou $tab_ele['classes'][$cpt]['groupes'][$cpt2]['periodes'][] } for ($i = 0; $i < count($tab_ele['tab_prof_liste_email']); $i++) { if ($tab_ele['prof_liste_email'] != "") { $tab_ele['prof_liste_email'] .= ", "; } $tab_ele['prof_liste_email'] .= $tab_ele['tab_prof_liste_email'][$i]; } //=================================== $get_cat = mysqli_query($GLOBALS["mysqli"], "SELECT id FROM matieres_categories"); $categories = array(); while ($row = mysqli_fetch_array($get_cat, MYSQLI_ASSOC)) { $categories[] = $row["id"]; } $cat_names = array(); foreach ($categories as $cat_id) { $sql = "SELECT nom_complet FROM matieres_categories WHERE id='" . $cat_id . "';"; $res_cat = mysqli_query($GLOBALS["mysqli"], $sql); if ($res_cat) { $cat_names[$cat_id] = old_mysql_result($res_cat, 0); } } foreach ($cat_names as $key => $value) { $tab_ele['categorie'][$key] = $value; } //=================================== // Régime et redoublement $sql = "SELECT * FROM j_eleves_regime WHERE login='******';"; $res_ele_reg = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_ele_reg) > 0) { $lig_ele_reg = mysqli_fetch_object($res_ele_reg); $tab_ele['regime'] = $lig_ele_reg->regime; $tab_ele['doublant'] = $lig_ele_reg->doublant; } //$sql="SELECT e.* FROM etablissements e, j_eleves_etablissements j WHERE (j.id_eleve ='".$ele_login."' AND e.id = j.id_etablissement);"; $sql = "SELECT e.* FROM etablissements e, j_eleves_etablissements j WHERE (j.id_eleve ='" . $tab_ele['elenoet'] . "' AND e.id = j.id_etablissement);"; $data_etab = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($data_etab) > 0) { $tab_ele['etab_id'] = @old_mysql_result($data_etab, 0, "id"); $tab_ele['etab_nom'] = @old_mysql_result($data_etab, 0, "nom"); $tab_ele['etab_niveau'] = @old_mysql_result($data_etab, 0, "niveau"); $tab_ele['etab_type'] = @old_mysql_result($data_etab, 0, "type"); $tab_ele['etab_cp'] = @old_mysql_result($data_etab, 0, "cp"); $tab_ele['etab_ville'] = @old_mysql_result($data_etab, 0, "ville"); if ($tab_ele['etab_niveau'] != '') { foreach ($type_etablissement as $type_etab => $nom_etablissement) { if ($tab_ele['etab_niveau'] == $type_etab) { $tab_ele['etab_niveau_nom'] = $nom_etablissement; } } if ($tab_ele['etab_cp'] == 0) { $tab_ele['etab_cp'] = ''; } if ($tab_ele['etab_type'] == 'aucun') { $tab_ele['etab_type'] = ''; } else { $tab_ele['etab_type'] = $type_etablissement2[$tab_ele['etab_type']][$tab_ele['etab_niveau']]; } } } // Récup infos CPE $sql = "SELECT u.* FROM j_eleves_cpe jec, utilisateurs u WHERE e_login='******' AND jec.cpe_login=u.login;"; $res_cpe = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_cpe) > 0) { $lig_cpe = mysqli_fetch_object($res_cpe); $tab_ele['cpe'] = array(); $tab_ele['cpe']['login'] = $lig_cpe->login; $tab_ele['cpe']['nom'] = $lig_cpe->nom; $tab_ele['cpe']['prenom'] = $lig_cpe->prenom; $tab_ele['cpe']['civilite'] = $lig_cpe->civilite; $tab_ele['cpe']['email'] = $lig_cpe->email; $tab_ele['cpe']['civ_nom_prenom'] = $lig_cpe->civilite . " " . $lig_cpe->nom . " " . mb_substr($lig_cpe->prenom, 0, 1) . "."; } $tab_ele['equipe_liste_email'] = $tab_ele['prof_liste_email']; if (isset($tab_ele['cpe']['email']) && $tab_ele['cpe']['email'] != "" && !in_array($tab_ele['cpe']['email'], $tab_ele['tab_prof_liste_email'])) { if ($tab_ele['equipe_liste_email'] != "") { $tab_ele['equipe_liste_email'] .= ", "; } $tab_ele['equipe_liste_email'] .= $tab_ele['cpe']['email']; } /* // Récup infos Prof Principal (prof_suivi) $sql="SELECT u.* FROM j_eleves_professeurs jep, utilisateurs u WHERE jep.login='******' AND id_classe='$id_classe' AND jep.professeur=u.login;"; $res_pp=mysql_query($sql); //echo "$sql<br />"; if(mysql_num_rows($res_pp)>0) { $lig_pp=mysql_fetch_object($res_pp); $tab_ele['pp']=array(); $tab_ele['pp']['login']=$lig_pp->login; $tab_ele['pp']['nom']=$lig_pp->nom; $tab_ele['pp']['prenom']=$lig_pp->prenom; $tab_ele['pp']['civilite']=$lig_pp->civilite; } */ if ($acces_responsables == 'y') { // Récup infos responsables $sql = "SELECT rp.*,ra.adr1,ra.adr2,ra.adr3,ra.adr3,ra.adr4,ra.cp,ra.pays,ra.commune,r.resp_legal FROM resp_pers rp,\n\t\t\t\t\t\t\t\t\t\tresp_adr ra,\n\t\t\t\t\t\t\t\t\t\tresponsables2 r\n\t\t\t\t\tWHERE r.ele_id='" . $tab_ele['ele_id'] . "' AND\n\t\t\t\t\t\t\tr.resp_legal!='0' AND\n\t\t\t\t\t\t\tr.pers_id=rp.pers_id AND\n\t\t\t\t\t\t\trp.adr_id=ra.adr_id\n\t\t\t\t\tORDER BY resp_legal;"; $res_resp = mysqli_query($GLOBALS["mysqli"], $sql); //echo "$sql<br />"; if (mysqli_num_rows($res_resp) > 0) { $cpt = 0; while ($lig_resp = mysqli_fetch_object($res_resp)) { $tab_ele['resp'][$cpt] = array(); $tab_ele['resp'][$cpt]['pers_id'] = $lig_resp->pers_id; $tab_ele['resp'][$cpt]['login'] = $lig_resp->login; $tab_ele['resp'][$cpt]['nom'] = $lig_resp->nom; $tab_ele['resp'][$cpt]['prenom'] = $lig_resp->prenom; $tab_ele['resp'][$cpt]['civilite'] = $lig_resp->civilite; $tab_ele['resp'][$cpt]['tel_pers'] = $lig_resp->tel_pers; $tab_ele['resp'][$cpt]['tel_port'] = $lig_resp->tel_port; $tab_ele['resp'][$cpt]['tel_prof'] = $lig_resp->tel_prof; $tab_ele['resp'][$cpt]['mel'] = $lig_resp->mel; $tab_ele['resp'][$cpt]['adr1'] = $lig_resp->adr1; $tab_ele['resp'][$cpt]['adr2'] = $lig_resp->adr2; $tab_ele['resp'][$cpt]['adr3'] = $lig_resp->adr3; $tab_ele['resp'][$cpt]['adr4'] = $lig_resp->adr4; $tab_ele['resp'][$cpt]['cp'] = $lig_resp->cp; $tab_ele['resp'][$cpt]['pays'] = $lig_resp->pays; $tab_ele['resp'][$cpt]['commune'] = $lig_resp->commune; $tab_ele['resp'][$cpt]['adr_id'] = $lig_resp->adr_id; $tab_ele['resp'][$cpt]['resp_legal'] = $lig_resp->resp_legal; //echo "\$lig_resp->login="******"<br />"; if ($lig_resp->login != "") { $sql = "SELECT etat, auth_mode FROM utilisateurs WHERE login='******';"; //echo "$sql<br />"; $res_u = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_u) > 0) { $lig_u = mysqli_fetch_object($res_u); $tab_ele['resp'][$cpt]['etat'] = $lig_u->etat; $tab_ele['resp'][$cpt]['auth_mode'] = $lig_u->auth_mode; if ($AccesDerniereConnexionResp) { $tab_ele['resp'][$cpt]['DerniereConnexionResp'] = get_last_connexion($lig_resp->login); $tab_ele['resp'][$cpt]['DerniereConnexionResp_Echec'] = get_last_connexion($lig_resp->login, "n"); } } } $cpt++; } } // Récup infos responsables resp_legal=0 $sql = "SELECT rp.*,ra.adr1,ra.adr2,ra.adr3,ra.adr3,ra.adr4,ra.cp,ra.pays,ra.commune,r.resp_legal, r.acces_sp, r.envoi_bulletin FROM resp_pers rp,\n\t\t\t\t\t\t\t\t\t\tresp_adr ra,\n\t\t\t\t\t\t\t\t\t\tresponsables2 r\n\t\t\t\t\tWHERE r.ele_id='" . $tab_ele['ele_id'] . "' AND\n\t\t\t\t\t\t\tr.resp_legal='0' AND\n\t\t\t\t\t\t\tr.pers_id=rp.pers_id AND\n\t\t\t\t\t\t\trp.adr_id=ra.adr_id\n\t\t\t\t\tORDER BY resp_legal;"; $res_resp = mysqli_query($GLOBALS["mysqli"], $sql); //echo "$sql<br />"; if (mysqli_num_rows($res_resp) > 0) { //$cpt=0; while ($lig_resp = mysqli_fetch_object($res_resp)) { $tab_ele['resp'][$cpt] = array(); $tab_ele['resp'][$cpt]['pers_id'] = $lig_resp->pers_id; $tab_ele['resp'][$cpt]['login'] = $lig_resp->login; $tab_ele['resp'][$cpt]['nom'] = $lig_resp->nom; $tab_ele['resp'][$cpt]['prenom'] = $lig_resp->prenom; $tab_ele['resp'][$cpt]['civilite'] = $lig_resp->civilite; $tab_ele['resp'][$cpt]['tel_pers'] = $lig_resp->tel_pers; $tab_ele['resp'][$cpt]['tel_port'] = $lig_resp->tel_port; $tab_ele['resp'][$cpt]['tel_prof'] = $lig_resp->tel_prof; $tab_ele['resp'][$cpt]['mel'] = $lig_resp->mel; $tab_ele['resp'][$cpt]['adr1'] = $lig_resp->adr1; $tab_ele['resp'][$cpt]['adr2'] = $lig_resp->adr2; $tab_ele['resp'][$cpt]['adr3'] = $lig_resp->adr3; $tab_ele['resp'][$cpt]['adr4'] = $lig_resp->adr4; $tab_ele['resp'][$cpt]['cp'] = $lig_resp->cp; $tab_ele['resp'][$cpt]['pays'] = $lig_resp->pays; $tab_ele['resp'][$cpt]['commune'] = $lig_resp->commune; $tab_ele['resp'][$cpt]['adr_id'] = $lig_resp->adr_id; $tab_ele['resp'][$cpt]['resp_legal'] = $lig_resp->resp_legal; $tab_ele['resp'][$cpt]['acces_sp'] = $lig_resp->acces_sp; $tab_ele['resp'][$cpt]['envoi_bulletin'] = $lig_resp->envoi_bulletin; //echo "\$lig_resp->login="******"<br />"; if ($lig_resp->login != "") { $sql = "SELECT etat, auth_mode FROM utilisateurs WHERE login='******';"; //echo "$sql<br />"; $res_u = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_u) > 0) { $lig_u = mysqli_fetch_object($res_u); $tab_ele['resp'][$cpt]['etat'] = $lig_u->etat; $tab_ele['resp'][$cpt]['auth_mode'] = $lig_u->auth_mode; if ($AccesDerniereConnexionResp) { $tab_ele['resp'][$cpt]['DerniereConnexionResp'] = get_last_connexion($lig_resp->login); $tab_ele['resp'][$cpt]['DerniereConnexionResp_Echec'] = get_last_connexion($lig_resp->login, "n"); } } } $cpt++; } } } if ($active_cahiers_texte == "y" && $acces_cdt == 'y') { $ts_limite_visibilite_comptes_rendus_pour_eleves = time(); $ts_limite_visibilite_devoirs_pour_eleves = time() + getSettingValue('delai_devoirs') * 24 * 3600; $cpt1 = 0; // pour initialiser la variable $tab_date_ct = array(); // Un DISTINCT pour éviter les trois exemplaires dûs à j_eleves_groupes $sql = "SELECT DISTINCT cte.* FROM ct_entry cte, j_eleves_groupes jeg WHERE cte.id_groupe=jeg.id_groupe AND jeg.login='******' AND cte.date_ct>={$date_ct1} AND cte.date_ct<={$date_ct2} AND cte.date_ct<={$ts_limite_visibilite_comptes_rendus_pour_eleves} ORDER BY cte.date_ct, cte.id_groupe;"; //echo "$sql<br />"; $res_ct = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_ct) > 0) { $cpt1 = 0; while ($lig_ct = mysqli_fetch_object($res_ct)) { $tab_ele['cdt_entry'][$cpt1] = array(); $tab_ele['cdt_entry'][$cpt1]['id_ct'] = $lig_ct->id_ct; $tab_ele['cdt_entry'][$cpt1]['heure_entry'] = $lig_ct->heure_entry; $tab_ele['cdt_entry'][$cpt1]['id_groupe'] = $lig_ct->id_groupe; $tab_ele['cdt_entry'][$cpt1]['date_ct'] = $lig_ct->date_ct; $tab_ele['cdt_entry'][$cpt1]['id_login'] = $lig_ct->id_login; $tab_ele['cdt_entry'][$cpt1]['contenu'] = $lig_ct->contenu; /* echo "<p>\n"; foreach($tab_ele['cdt_entry'][$cpt] as $key => $value) { echo "\$tab_ele['cdt_entry'][$cpt]['$key']=$value<br />\n"; } echo "</p>\n"; */ $tab_date_ct[] = $lig_ct->date_ct; $cpt1++; } } $sql = "SELECT DISTINCT ctde.* FROM ct_devoirs_entry ctde, j_eleves_groupes jeg WHERE ctde.id_groupe=jeg.id_groupe AND jeg.login='******' AND ctde.date_ct>={$date_ct1} AND ctde.date_ct<={$date_ct2} AND ctde.date_ct<={$ts_limite_visibilite_devoirs_pour_eleves} ORDER BY ctde.date_ct, ctde.id_groupe;"; //echo "$sql<br />"; $res_ct = mysqli_query($GLOBALS["mysqli"], $sql); $cpt2 = 0; if (mysqli_num_rows($res_ct) > 0) { //$cpt2=0; while ($lig_ct = mysqli_fetch_object($res_ct)) { $tab_ele['cdt_dev'][$cpt2] = array(); $tab_ele['cdt_dev'][$cpt2]['id_ct'] = $lig_ct->id_ct; $tab_ele['cdt_dev'][$cpt2]['id_groupe'] = $lig_ct->id_groupe; $tab_ele['cdt_dev'][$cpt2]['date_ct'] = $lig_ct->date_ct; $tab_ele['cdt_dev'][$cpt2]['id_login'] = $lig_ct->id_login; $tab_ele['cdt_dev'][$cpt2]['contenu'] = $lig_ct->contenu; $tab_date_ct[] = $lig_ct->date_ct; $cpt2++; } } sort($tab_date_ct); $tmp_tab_date_ct = $tab_date_ct; unset($tab_date_ct); $tab_date_ct = array_unique($tmp_tab_date_ct); //array_unique($tab_date_ct); $cpt1_2 = $cpt1 + $cpt2; $cpt = 0; //for($i=0;$i<count($tab_date_ct);$i++) { //for($i=0;$i<max($cpt1,$cpt2);$i++) { for ($i = 0; $i < $cpt1_2; $i++) { //echo "\$tab_date_ct[$i]=".$tab_date_ct[$i]."<br />"; //if($tab_date_ct[$i]!="") { if (isset($tab_date_ct[$i]) && $tab_date_ct[$i] != "") { $tab_ele['cdt'][$cpt]['date_ct'] = $tab_date_ct[$i]; $nbre_cdt_dev = isset($tab_ele['cdt_dev']) ? count($tab_ele['cdt_dev']) : 0; for ($j = 0; $j < $nbre_cdt_dev; $j++) { if ($tab_ele['cdt_dev'][$j]['date_ct'] == $tab_date_ct[$i]) { $tab_ele['cdt'][$cpt]['dev'][] = $tab_ele['cdt_dev'][$j]; } elseif ($tab_ele['cdt_dev'][$j]['date_ct'] > $tab_date_ct[$i]) { break; } } if (isset($tab_ele['cdt_entry'])) { for ($j = 0; $j < count($tab_ele['cdt_entry']); $j++) { if ($tab_ele['cdt_entry'][$j]['date_ct'] == $tab_date_ct[$i]) { $tab_ele['cdt'][$cpt]['entry'][] = $tab_ele['cdt_entry'][$j]; } elseif ($tab_ele['cdt_entry'][$j]['date_ct'] > $tab_date_ct[$i]) { break; } } } $cpt++; } } } $tab_ele['absences'] = array(); $sql = "SELECT * FROM absences WHERE login='******' ORDER BY periode;"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { $cpt = 0; while ($lig = mysqli_fetch_object($res)) { $tab_ele['absences'][$cpt]['periode'] = $lig->periode; $tab_ele['absences'][$cpt]['nb_absences'] = $lig->nb_absences; $tab_ele['absences'][$cpt]['non_justifie'] = $lig->non_justifie; $tab_ele['absences'][$cpt]['nb_retards'] = $lig->nb_retards; $tab_ele['absences'][$cpt]['appreciation'] = $lig->appreciation; $cpt++; } } // ============================================================================= // // === SUIVI des absences pour ceux qui utilisent la saisie 'fond de classe' === // // ============================================================================= // $tab_ele['abs_quotidien'] = array(); $tab_ele['abs_quotidien']['autorisation'] = 'non'; // ne sera changé que dans le cas où la requête suivante renvoie un résultat $ts_quinze_jours_avant = date("U") - 1296000; $sql2 = "SELECT DISTINCT * FROM absences_rb WHERE eleve_id = '" . $ele_login . "' AND date_saisie > '" . $ts_quinze_jours_avant . "'"; $query = mysqli_query($GLOBALS["mysqli"], $sql2); if ($query) { $test = mysqli_num_rows($query); if ($test >= 1) { $tab_ele['abs_quotidien']['autorisation'] = 'oui'; } // On enregistre toutes les absences de l'élève dans le tableau $s = 0; while ($rep = mysqli_fetch_object($query)) { $jour = date("d/m", $rep->debut_ts); $creneau = mysqli_fetch_array(mysqli_query($GLOBALS["mysqli"], "SELECT nom_definie_periode FROM edt_creneaux WHERE id_definie_periode = '" . $rep->creneau_id . "' LIMIT 1")); $tab_ele['abs_quotidien'][$s]['retard_absence'] = $rep->retard_absence; $tab_ele['abs_quotidien'][$s]['jour_semaine'] = $rep->jour_semaine . ' ' . $jour; $tab_ele['abs_quotidien'][$s]['debut_heure'] = date("H:i", $rep->debut_ts); $tab_ele['abs_quotidien'][$s]['creneau'] = $creneau["nom_definie_periode"]; $s++; } } else { // rien et on laisse } // Affecter auparavant la valeur de $acces_mod_discipline sur deux tests: // - Module actif // - Accès au module discipline précisé dans Gestion générale/Droits d'accès require_once "../mod_discipline/sanctions_func_lib.php"; // tab_mod_discipline($ele_login,$mode,$date_debut,$date_fin); // $mode=all ou bien qualité: responsable, victime, témoin,... $tab_ele['tab_mod_discipline'] = tab_mod_discipline($ele_login, "all", $date_debut_disc, $date_fin_disc); return $tab_ele; }
if (count($tab_pp['id_classe']) == 0) { echo "</p>\n\n<p>Vous n'êtes " . getSettingValue('gepi_prof_suivi') . " d'aucune classe.</p>"; require_once "../lib/footer.inc.php"; die; } elseif (count($tab_pp['id_classe']) == 1) { $id_classe = array(); $id_classe[0] = $tab_pp['id_classe'][0]; } else { if (!isset($id_classe)) { $suite = "n"; } else { $suite = "y"; for ($loop = 0; $loop < count($id_classe); $loop++) { if (!in_array($id_classe[$loop], $tab_pp['id_classe'])) { echo "</p>\n"; $gepi_prof_suivi = ucfirst(retourne_denomination_pp($id_classe[$loop])); echo "<p style='color:red'>Vous n'êtes pas " . $gepi_prof_suivi . " de la classe de " . get_nom_classe($id_classe[$loop]); $suite = "n"; break; } } } if ($suite == "n") { echo "</p>\n"; echo "<p class='bold'>Choix des classes :</p>\n"; echo "<form enctype='multipart/form-data' action='" . $_SERVER['PHP_SELF'] . "' method='post' name='formulaire'>\n"; for ($loop = 0; $loop < count($tab_pp['id_classe']); $loop++) { echo "<label id='label_tab_id_classe_{$loop}' for='tab_id_classe_{$loop}' style='cursor: pointer;'><input type='checkbox' name='id_classe[]' id='tab_id_classe_{$loop}' value='" . $tab_pp['id_classe'][$loop] . "' onchange='change_style_classe({$loop})' /> " . $tab_pp['classe'][$loop] . "</label>"; echo "<br />\n"; } echo "<p><input type='submit' value='Valider' /></p>\n";
function bulletin($tab_moy, $current_eleve_login, $compteur, $total, $periode1, $periode2, $nom_periode, $gepiYear, $id_classe, $affiche_rang, $test_coef, $affiche_categories, $couleur_lignes = NULL) { //global $nb_notes,$nombre_eleves,$type_etablissement,$type_etablissement2; global $nb_notes, $type_etablissement, $type_etablissement2; global $display_moy_gen; global $affiche_coef; global $bull_intitule_app; global $affiche_deux_moy_gen; global $affiche_colonne_moy_classe; //$affiche_colonne_moy_classe="n"; global $gepi_denom_mention; if ($gepi_denom_mention == '') { $gepi_denom_mention = "mention"; } //========================= global $utilisation_tablekit; if ($periode1 != $periode2) { //unset($utilisation_tablekit); $utilisation_tablekit = "no"; } //========================= // Pour éviter dans bulletin() d'afficher le lien vers saisie_avis2.php depuis la page saisie_avis2.php global $temoin_page_courante; global $bull_simp_larg_tab, $bull_simp_larg_col1, $bull_simp_larg_col2, $bull_simp_larg_col3, $bull_simp_larg_col4; global $themessage; if (!isset($themessage) || $themessage == "") { $themessage = "Des saisies n\\'ont pas été enregistrées. Voulez-vous vraiment quitter sans enregistrer ?"; } $alt = 1; // Initialisation des tableaux // $tab_afficher_liens_modif_app[$id_groupe][$num_per] // $tab_afficher_liens_valider_modif_app[$loop_per] //$tab_afficher_liens_modif_app=array(); //$tab_afficher_liens_valider_modif_app=array(); $tmp_tab = afficher_liens_modif_app($id_classe, $periode1, $periode2); $tab_afficher_liens_modif_app = $tmp_tab[0]; $tab_afficher_liens_valider_modif_app = $tmp_tab[1]; $afficher_proposition_correction = "n"; if (count($tab_afficher_liens_modif_app) > 0) { $afficher_proposition_correction = "y"; } /* echo "<pre>"; print_r($tab_afficher_liens_modif_app); echo "</pre>"; */ $tab_statuts_signalement_faute_autorise = array('administrateur', 'professeur', 'cpe', 'scolarite'); $afficher_signalement_faute = "n"; if (in_array($_SESSION['statut'], $tab_statuts_signalement_faute_autorise)) { if ($_SESSION['statut'] == 'professeur' && mb_substr(getSettingValue('autoriser_signalement_faute_app_prof'), 0, 1) == 'y') { $afficher_signalement_faute = "y"; } elseif ($_SESSION['statut'] == 'professeur' && mb_substr(getSettingValue('autoriser_signalement_faute_app_pp'), 0, 1) == 'y') { // Tester si le prof est pp de la classe if (is_pp($_SESSION['login'], $id_classe)) { $afficher_signalement_faute = "y"; } } elseif ($_SESSION['statut'] == 'scolarite' && mb_substr(getSettingValue('autoriser_signalement_faute_app_scol'), 0, 1) == 'y') { $afficher_signalement_faute = "y"; } elseif ($_SESSION['statut'] == 'cpe' && mb_substr(getSettingValue('autoriser_signalement_faute_app_cpe'), 0, 1) == 'y') { $afficher_signalement_faute = "y"; } } if ($afficher_signalement_faute == 'y' || $afficher_proposition_correction == "y") { // A N'INSERER QUE POUR LES COMPTES DE PERSONNELS... de façon à éviter de donner les mails des profs à des élèves if (!isset($necessaire_signalement_fautes_insere) || $necessaire_signalement_fautes_insere == "n") { lib_signalement_fautes(); } global $signalement_id_groupe; $envoi_mail_actif = getSettingValue('envoi_mail_actif'); } global $mysqli; $tab_modif_app_proposees = array(); $tab_mes_groupes = array(); if ($_SESSION['statut'] == 'professeur') { //$tab_mes_groupes=array(); $sql = "SELECT jgp.id_groupe FROM j_groupes_professeurs jgp WHERE login = '******'login'] . "';"; //echo "$sql<br />"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { while ($lig = mysqli_fetch_object($res)) { $tab_mes_groupes[] = $lig->id_groupe; $sql = "SELECT * FROM matieres_app_corrections WHERE id_groupe='{$lig->id_groupe}';"; $res_mad = mysqli_query($mysqli, $sql); if ($res_mad->num_rows > 0) { while ($lig_mad = $res_mad->fetch_object()) { $tab_modif_app_proposees[$lig_mad->id_groupe][$lig_mad->periode][$lig_mad->login] = $lig_mad->appreciation; } } } } if (getSettingAOui('visuCorrectionsAppProposeesProfs')) { $sql = "SELECT DISTINCT ma.* FROM matieres_app_corrections ma,j_groupes_classes jgc WHERE jgc.id_groupe=ma.id_groupe AND jgc.id_classe='{$id_classe}';"; //echo "$sql<br />"; $res_mad = mysqli_query($mysqli, $sql); if ($res_mad->num_rows > 0) { while ($lig_mad = $res_mad->fetch_object()) { $tab_modif_app_proposees[$lig_mad->id_groupe][$lig_mad->periode][$lig_mad->login] = $lig_mad->appreciation; } } } if (!isset($necessaire_corriger_appreciation_insere) || $necessaire_corriger_appreciation_insere == "n") { lib_corriger_appreciation(); } global $corriger_app_id_groupe; //global $tab_mes_groupes; /* echo "tab_mes_groupes:<pre>"; print_r($tab_mes_groupes); echo "</pre>"; */ } elseif ($_SESSION['statut'] == 'scolarite') { $sql = "SELECT DISTINCT ma.* FROM matieres_app_corrections ma,j_groupes_classes jgc WHERE jgc.id_groupe=ma.id_groupe AND jgc.id_classe='{$id_classe}';"; //echo "$sql<br />"; $res_mad = mysqli_query($mysqli, $sql); if ($res_mad->num_rows > 0) { while ($lig_mad = $res_mad->fetch_object()) { $tab_modif_app_proposees[$lig_mad->id_groupe][$lig_mad->periode][$lig_mad->login] = $lig_mad->appreciation; } } if (getSettingAOui('AccesModifAppreciationScol')) { if (!isset($necessaire_corriger_appreciation_insere) || $necessaire_corriger_appreciation_insere == "n") { lib_corriger_appreciation(); } } } // données requise : //- le login de l'élève : $current_eleve_login //- $compteur : compteur //- $total : nombre total d'élèves //- $periode1 : numéro de la première période à afficher //- $periode2 : numéro de la dernière période à afficher //- $nom_periode : tableau des noms de période //- $gepiYear : année //- $id_classe : identifiant de la classe. //========================================================== // AJOUT: boireaus 20080218 // Dispositif de restriction des accès aux appréciations pour les comptes responsables/eleves //echo "\$_SESSION['statut']=".$_SESSION['statut']."<br />"; //echo "\$periode1=$periode1<br />"; //echo "\$periode2=$periode2<br />"; unset($tab_acces_app); $tab_acces_app = array(); $tab_acces_app = acces_appreciations($periode1, $periode2, $id_classe); //========================================================== $nb_periodes = $periode2 - $periode1 + 1; $on_continue = "yes"; if ($nb_periodes == 1) { // S'il n'est demandé qu'une seule période: // Test pour savoir si l'élève appartient à la classe pour la période considérée $test_eleve_app = sql_query1("select count(login) from j_eleves_classes where login='******' and id_classe='" . $id_classe . "' and periode='" . $periode1 . "'"); if ($test_eleve_app == 0) { $on_continue = "no"; } } if ($on_continue == 'yes') { // Mis hors de la fonction //$affiche_coef=sql_query1("SELECT display_coef FROM classes WHERE id='".$id_classe."'"); //echo "\$affiche_categories=$affiche_categories<br />"; $data_eleve = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM eleves WHERE login='******'"); // Récupération du champ auto_increment $current_id_eleve = old_mysql_result($data_eleve, 0, "id_eleve"); $current_eleve_nom = old_mysql_result($data_eleve, 0, "nom"); $current_eleve_prenom = old_mysql_result($data_eleve, 0, "prenom"); $current_eleve_sexe = old_mysql_result($data_eleve, 0, "sexe"); $current_eleve_naissance = old_mysql_result($data_eleve, 0, "naissance"); $current_eleve_naissance = affiche_date_naissance($current_eleve_naissance); $current_eleve_elenoet = old_mysql_result($data_eleve, 0, "elenoet"); $data_profsuivi = mysqli_query($GLOBALS["mysqli"], "SELECT u.login FROM utilisateurs u, j_eleves_professeurs j WHERE (j.login='******' AND j.professeur = u.login AND j.id_classe='{$id_classe}') "); $current_eleve_profsuivi_login = @old_mysql_result($data_profsuivi, 0, "login"); echo "<input type='hidden' name='nom_prenom_eleve[{$current_id_eleve}]' id='nom_prenom_eleve_{$current_id_eleve}' value=\"{$current_eleve_nom} {$current_eleve_prenom}\" />\n"; $data_etab = mysqli_query($GLOBALS["mysqli"], "SELECT e.* FROM etablissements e, j_eleves_etablissements j WHERE (j.id_eleve ='{$current_eleve_elenoet}' AND e.id = j.id_etablissement) "); $current_eleve_etab_id = @old_mysql_result($data_etab, 0, "id"); $current_eleve_etab_nom = @old_mysql_result($data_etab, 0, "nom"); $current_eleve_etab_niveau = @old_mysql_result($data_etab, 0, "niveau"); $current_eleve_etab_type = @old_mysql_result($data_etab, 0, "type"); $current_eleve_etab_cp = @old_mysql_result($data_etab, 0, "cp"); $current_eleve_etab_ville = @old_mysql_result($data_etab, 0, "ville"); if ($current_eleve_etab_niveau != '') { foreach ($type_etablissement as $type_etab => $nom_etablissement) { if ($current_eleve_etab_niveau == $type_etab) { $current_eleve_etab_niveau_nom = $nom_etablissement; } } if ($current_eleve_etab_cp == 0) { $current_eleve_etab_cp = ''; } if ($current_eleve_etab_type == 'aucun') { $current_eleve_etab_type = ''; } else { $current_eleve_etab_type = $type_etablissement2[$current_eleve_etab_type][$current_eleve_etab_niveau]; } } $classe_eleve = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM classes WHERE id='{$id_classe}'"); $current_eleve_classe = old_mysql_result($classe_eleve, 0, "classe"); $id_classe = old_mysql_result($classe_eleve, 0, "id"); $regime_doublant_eleve = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM j_eleves_regime WHERE login = '******'"); $current_eleve_regime = old_mysql_result($regime_doublant_eleve, 0, "regime"); $current_eleve_doublant = old_mysql_result($regime_doublant_eleve, 0, "doublant"); //------------------------------- // On affiche l'en-tête : Les données de l'élève //------------------------------- echo "<span class='bull_simpl'><span class='bold'>{$current_eleve_nom} {$current_eleve_prenom}</span>"; if ($current_eleve_sexe == "M") { echo ", né le {$current_eleve_naissance}"; } else { echo ", née le {$current_eleve_naissance}"; } if ($current_eleve_regime == "d/p") { echo ", demi-pensionnaire"; } if ($current_eleve_regime == "ext.") { echo ", externe"; } if ($current_eleve_regime == "int.") { echo ", interne"; } if ($current_eleve_regime == "i-e") { if ($current_eleve_sexe == "M") { echo ", interne externé"; } else { echo ", interne externée"; } } if ($current_eleve_doublant == 'R') { if ($current_eleve_sexe == "M") { echo ", <b>redoublant</b>"; } else { echo ", <b>redoublante</b>"; } } echo " - Classe de {$current_eleve_classe}, année scolaire {$gepiYear}<br />\n"; if ($current_eleve_etab_nom != '') { echo "Etablissement d'origine : "; if ($current_eleve_etab_id != '990') { echo "{$current_eleve_etab_niveau_nom} {$current_eleve_etab_type} {$current_eleve_etab_nom} ({$current_eleve_etab_cp} {$current_eleve_etab_ville})<br />\n"; } else { echo "hors de France<br />\n"; } } if ($periode1 < $periode2) { echo "Résultats de : "; $nb = $periode1; while ($nb < $periode2 + 1) { echo $nom_periode[$nb]; if ($nb < $periode2) { echo " - "; } $nb++; } echo ".</span>"; } else { $temp = my_strtolower($nom_periode[$periode1]); echo "Résultats du {$temp}.</span>"; } // //------------------------------- // Fin de l'en-tête // Initialisation de variable pour le cas où un élève n'est dans aucun enseignement sur une période $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black; border-bottom: 1px dashed black;"; // On initialise le tableau : $bull_simp_larg_tab_defaut = 680; $bull_simp_larg_col1_defaut = 120; $bull_simp_larg_col2_defaut = 38; $bull_simp_larg_col3_defaut = 38; $bull_simp_larg_col4_defaut = 20; $larg_tab = $bull_simp_larg_tab_defaut; $larg_col1 = $bull_simp_larg_col1_defaut; $larg_col2 = $bull_simp_larg_col3_defaut; $larg_col3 = $bull_simp_larg_col3_defaut; $larg_col4 = $bull_simp_larg_col4_defaut; if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_tab)) { $larg_tab = $bull_simp_larg_tab; } if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_col1)) { $larg_col1 = $bull_simp_larg_col1; } if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_col2)) { $larg_col2 = $bull_simp_larg_col2; } if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_col3)) { $larg_col3 = $bull_simp_larg_col3; } if (preg_match("/^[0-9]{1,}\$/", $bull_simp_larg_col4)) { $larg_col4 = $bull_simp_larg_col4; } if ($bull_simp_larg_tab < $bull_simp_larg_col1 + $bull_simp_larg_col2 + $bull_simp_larg_col3 + $bull_simp_larg_col4) { $larg_tab = $bull_simp_larg_tab_defaut; $larg_col1 = $bull_simp_larg_col1_defaut; $larg_col2 = $bull_simp_larg_col2_defaut; $larg_col3 = $bull_simp_larg_col3_defaut; $larg_col4 = $bull_simp_larg_col4_defaut; } $larg_col5 = $larg_tab - $larg_col1 - $larg_col2 - $larg_col3 - $larg_col4; //========================= // MODIF: boireaus 20080315 //echo "<table width=$larg_tab border=1 cellspacing=1 cellpadding=1>\n"; echo "<table width={$larg_tab} class='boireaus"; if ($utilisation_tablekit == "ok") { echo " sortable resizable"; } echo "' cellspacing='1' cellpadding='1' summary='Matières/Notes/Appréciations'>\n"; //========================= echo "<thead>\n"; echo "<tr><td width=\"{$larg_col1}\" class='bull_simpl text'>{$compteur}"; if ($total != '') { echo "/{$total}"; } echo "</td>\n"; //==================== // Modif: boireaus 20070626 if ($affiche_coef == 'y') { if ($test_coef != 0) { echo "<td width=\"{$larg_col2}\" align=\"center\" class='number'><p class='bull_simpl'>Coef.</p></td>\n"; } } //==================== if ($affiche_colonne_moy_classe != 'n') { echo "<td width=\"{$larg_col2}\" align=\"center\" class='bull_simpl text'>Classe</td>\n"; } echo "<td width=\"{$larg_col3}\" align=\"center\" class='bull_simpl number'>Élève</td>\n"; if ($affiche_rang == 'y') { echo "<td width={$larg_col4} align=\"center\" class='bull_simpl number'><i>Rang</i></td>\n"; } echo "<td width=\"{$larg_col5}\" class='bull_simpl nosort'>{$bull_intitule_app}</td>\n"; if ($afficher_signalement_faute == 'y') { // A N'INSERER QUE POUR LES COMPTES DE PERSONNELS... de façon à éviter de donner les mails des profs à des élèves echo "<td class='bull_simpl noprint'>Signaler</td>\n"; } echo "</tr>\n"; echo "</thead>\n"; echo "<tbody>\n"; //echo "</table>"; // On attaque maintenant l'affichage des appréciations des Activités Interdisciplinaires devant apparaître en tête des bulletins : $call_data = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM aid_config WHERE order_display1 = 'b' ORDER BY order_display2"); $nb_aid = mysqli_num_rows($call_data); $z = 0; while ($z < $nb_aid) { $display_begin = old_mysql_result($call_data, $z, "display_begin"); $display_end = old_mysql_result($call_data, $z, "display_end"); if ($periode1 >= $display_begin and $periode2 <= $display_end) { $indice_aid = @old_mysql_result($call_data, $z, "indice_aid"); $aid_query = mysqli_query($GLOBALS["mysqli"], "SELECT id_aid FROM j_aid_eleves WHERE (login='******' and indice_aid='{$indice_aid}')"); $aid_id = @old_mysql_result($aid_query, 0, "id_aid"); if ($aid_id != '') { affiche_aid_simple($affiche_rang, $test_coef, $indice_aid, $aid_id, $current_eleve_login, $periode1, $periode2, $id_classe, 'bull_simpl', $affiche_coef); } } $z++; } //------------------------------ // Boucle 'groupes' //------------------------------ // Récupération des noms de categories $get_cat = mysqli_query($GLOBALS["mysqli"], "SELECT id FROM matieres_categories"); $categories = array(); while ($row = mysqli_fetch_array($get_cat, MYSQLI_ASSOC)) { $categories[] = $row["id"]; } $cat_names = array(); foreach ($categories as $cat_id) { $cat_names[$cat_id] = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT nom_complet FROM matieres_categories WHERE id = '" . $cat_id . "'"), 0); } // Nombre de groupes sur la classe $nombre_groupes = count($tab_moy['current_group']); // Récupération des indices de l'élève $current_eleve_login dans $tab_moy unset($tab_login_indice); $nb = $periode1; while ($nb < $periode2 + 1) { //$tab_login_indice[$nb]=$tab_moy['periodes'][$nb]['tab_login_indice'][$current_eleve_login]; // Un élève qui arrive ou part en cours d'année ne sera pas dans la classe ni dans les groupes sur certaines périodes //if(isset($tab_moy['periodes'][$nb]['tab_login_indice'][$current_eleve_login])) { if (isset($tab_moy['periodes'][$nb]['tab_login_indice'][my_strtoupper($current_eleve_login)])) { //$tab_login_indice[$nb]=$tab_moy['periodes'][$nb]['tab_login_indice'][$current_eleve_login]; $tab_login_indice[$nb] = $tab_moy['periodes'][$nb]['tab_login_indice'][my_strtoupper($current_eleve_login)]; //echo "\$tab_login_indice[$nb]=$tab_login_indice[$nb]<br />"; } /* else { echo "\$tab_moy['periodes'][$nb]['tab_login_indice'][$current_eleve_login] n'est pas affecté.<br />"; } */ $nb++; } //$j = 0; $prev_cat_id = null; //while ($j < $nombre_groupes) { for ($j = 0; $j < $nombre_groupes; $j++) { //echo "<table width=$larg_tab border=1 cellspacing=0 cellpadding=1 style='margin-bottom: 0px; border-bottom: 1px solid black; border-top: none;'>"; $inser_ligne = 'no'; //$group_id = old_mysql_result($appel_liste_groupes, $j, "id_groupe"); //$current_group = get_group($group_id); // On récupère le groupe depuis $tab_moy $current_group = $tab_moy['current_group'][$j]; //echo "<p>Groupe n°$j: ".$current_group['name']."<br />\n"; // Coefficient pour le groupe $current_coef = $current_group["classes"]["classes"][$id_classe]["coef"]; // Pour les enseignements à bonus,... $mode_moy = $current_group["classes"]["classes"][$id_classe]["mode_moy"]; $current_matiere_professeur_login = $current_group["profs"]["list"]; //$current_matiere_nom_complet = $current_group["matiere"]["nom_complet"]; if (getSettingValue('bul_rel_nom_matieres') == 'nom_groupe') { $current_matiere_nom_complet = $current_group["name"]; } elseif (getSettingValue('bul_rel_nom_matieres') == 'description_groupe') { $current_matiere_nom_complet = $current_group["description"]; } else { $current_matiere_nom_complet = $current_group["matiere"]["nom_complet"]; } $nb = $periode1; while ($nb < $periode2 + 1) { $current_classe_matiere_moyenne[$nb] = $tab_moy['periodes'][$nb]['current_classe_matiere_moyenne'][$j]; // On teste si des notes de une ou plusieurs boites du carnet de notes doivent être affichée $test_cn = mysqli_query($GLOBALS["mysqli"], "select c.nom_court, c.id from cn_cahier_notes cn, cn_conteneurs c\n\t\t\twhere (cn.periode = '{$nb}' and cn.id_groupe='" . $current_group["id"] . "' and cn.id_cahier_notes = c.id_racine and c.id_racine!=c.id and c.display_bulletin = 1) "); $nb_ligne_cn[$nb] = mysqli_num_rows($test_cn); $n = 0; while ($n < $nb_ligne_cn[$nb]) { $cn_id[$nb][$n] = old_mysql_result($test_cn, $n, 'id'); $cn_nom[$nb][$n] = old_mysql_result($test_cn, $n, 'nom_court'); $n++; } $nb++; } // Maintenant on regarde si l'élève suit bien cette matière ou pas //----------------------------- $nb = $periode1; while ($nb < $periode2 + 1) { // Test supplémentaire pour savoir si l'élève appartient à la classe pour la période considérée $test_eleve_app = sql_query1("select count(login) from j_eleves_classes where login='******' and id_classe='" . $id_classe . "' and periode='" . $nb . "'"); if ((in_array($current_eleve_login, $current_group["eleves"][$nb]["list"]) or in_array(my_strtolower($current_eleve_login), $current_group["eleves"][$nb]["list"]) or in_array(my_strtoupper($current_eleve_login), $current_group["eleves"][$nb]["list"])) and $test_eleve_app != 0) { $inser_ligne = 'yes'; $current_eleve_note[$nb] = $tab_moy['periodes'][$nb]['current_eleve_note'][$j][$tab_login_indice[$nb]]; $current_eleve_statut[$nb] = $tab_moy['periodes'][$nb]['current_eleve_statut'][$j][$tab_login_indice[$nb]]; $current_eleve_appreciation_query = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM matieres_appreciations ma, j_eleves_classes jec WHERE (ma.login='******' AND ma.id_groupe='" . $current_group["id"] . "' AND ma.periode='{$nb}' and jec.periode='{$nb}' and jec.login='******' and jec.id_classe='{$id_classe}')"); $current_eleve_appreciation[$nb] = @old_mysql_result($current_eleve_appreciation_query, 0, "appreciation"); $coef_eleve = $tab_moy['periodes'][$nb]['current_coef_eleve'][$tab_login_indice[$nb]][$j]; //echo "\$coef_eleve=\$tab_moy['periodes'][$nb]['current_coef_eleve'][".$tab_login_indice[$nb]."][$j]=".$coef_eleve."<br />\n"; } else { $current_eleve_note[$nb] = ''; $current_eleve_statut[$nb] = 'Non suivie'; $current_eleve_appreciation[$nb] = ''; } //++++++++++++++++++++++++ // Modif d'après F.Boisson // notes dans appreciation $sql = "SELECT cnd.note, cd.note_sur FROM cn_notes_devoirs cnd, cn_devoirs cd, cn_cahier_notes ccn WHERE cnd.login='******' AND cnd.id_devoir=cd.id AND cd.id_racine=ccn.id_cahier_notes AND ccn.id_groupe='" . $current_group["id"] . "' AND ccn.periode='{$nb}' AND cnd.statut='';"; $result_nbct = mysqli_query($GLOBALS["mysqli"], $sql); $string_notes = ''; if ($result_nbct) { while ($snnote = mysqli_fetch_assoc($result_nbct)) { if ($string_notes != '') { $string_notes .= ", "; } $string_notes .= $snnote['note']; if (getSettingValue("note_autre_que_sur_referentiel") == "V" || $snnote['note_sur'] != getSettingValue("referentiel_note")) { $string_notes .= "/" . $snnote['note_sur']; } } } $current_eleve_appreciation[$nb] = str_replace('@@Notes', $string_notes, $current_eleve_appreciation[$nb]); //++++++++++++++++++++++++ $nb++; } if ($inser_ligne == 'yes') { if ($affiche_categories) { // On regarde si on change de catégorie de matière if ($current_group["classes"]["classes"][$id_classe]["categorie_id"] != $prev_cat_id) { $prev_cat_id = $current_group["classes"]["classes"][$id_classe]["categorie_id"]; // On est dans une nouvelle catégorie // On récupère les infos nécessaires, et on affiche une ligne // On détermine le nombre de colonnes pour le colspan if ($affiche_colonne_moy_classe == 'n') { $nb_total_cols = 3; } else { $nb_total_cols = 4; } //==================== // Modif: boireaus 20070626 if ($affiche_coef == 'y') { if ($test_coef != 0) { $nb_total_cols++; } } //==================== if ($affiche_rang == 'y') { $nb_total_cols++; } // On regarde s'il faut afficher la moyenne de l'élève pour cette catégorie $affiche_cat_moyenne_query = mysqli_query($GLOBALS["mysqli"], "SELECT affiche_moyenne FROM j_matieres_categories_classes WHERE (classe_id = '" . $id_classe . "' and categorie_id = '" . $prev_cat_id . "')"); if (mysqli_num_rows($affiche_cat_moyenne_query) == "0") { $affiche_cat_moyenne = false; } else { $affiche_cat_moyenne = old_mysql_result($affiche_cat_moyenne_query, 0); } // On a toutes les infos. On affiche ! echo "<tr>\n"; echo "<td colspan='" . $nb_total_cols . "'>\n"; echo "<p style='padding: 0; margin:0; font-size: 10px; text-align:left;'>" . $cat_names[$prev_cat_id] . "</p></td>\n"; if ($afficher_signalement_faute == 'y') { // A N'INSERER QUE POUR LES COMPTES DE PERSONNELS... de façon à éviter de donner les mails des profs à des élèves echo "<td class='bull_simpl noprint'>-</td>\n"; } echo "</tr>\n"; } } if ($couleur_lignes == 'y') { $alt = $alt * -1; echo "<tr class='lig{$alt}'>\n"; $alt2 = $alt; } else { echo "<tr>\n"; } echo "<td "; if ($nb_periodes > 1) { echo " rowspan= " . $nb_periodes; } //echo" width=\"$larg_col1\" class='bull_simpl'><b>$current_matiere_nom_complet</b>"; echo " width=\"{$larg_col1}\" class='bull_simpl'><b>" . htmlspecialchars($current_matiere_nom_complet) . "</b>"; $k = 0; //echo "(".$current_group['id'].")"; $liste_email_profs_du_groupe = ""; $liste_profs_du_groupe = ""; while ($k < count($current_matiere_professeur_login)) { echo "<br /><i>" . affiche_utilisateur($current_matiere_professeur_login[$k], $id_classe) . "</i>"; if ($k > 0) { $liste_profs_du_groupe .= "|"; } $liste_profs_du_groupe .= $current_matiere_professeur_login[$k]; $tmp_mail = retourne_email($current_matiere_professeur_login[$k]); if ($tmp_mail != '') { if ($liste_email_profs_du_groupe != '') { $liste_email_profs_du_groupe .= ", "; } $liste_email_profs_du_groupe .= $tmp_mail; } $k++; } if (!isset($signalement_id_groupe[$current_group['id']])) { echo "<input type='hidden' name='signalement_id_groupe[" . $current_group['id'] . "]' id='signalement_id_groupe_" . $current_group['id'] . "' value=\"" . $current_group['name'] . " (" . $current_group['name'] . " en " . $current_group['classlist_string'] . ")\" />\n"; } echo "</td>\n"; //==================== // Modif: boireaus 20070626 if ($affiche_coef == 'y') { if ($test_coef != 0) { //if ($current_coef > 0) $print_coef= $current_coef ; else $print_coef='-'; //if ($coef_eleve > 0) $print_coef= $coef_eleve; else $print_coef='-'; if ($coef_eleve > 0) { $print_coef = number_format($coef_eleve, 1, ',', ' '); } else { $print_coef = '-'; } echo "<td width=\"{$larg_col2}\""; if ($nb_periodes > 1) { echo " rowspan= " . $nb_periodes; } echo " align=\"center\"><p class='bull_simpl'>" . $print_coef . "</p></td>\n"; } } //==================== $nb = $periode1; $print_tr = 'no'; while ($nb < $periode2 + 1) { if ($print_tr == 'yes') { //echo "<tr style='border-width: 5px;'>\n"; if ($couleur_lignes == 'y') { $alt2 = $alt2 * -1; echo "<tr class='lig{$alt2}' style='border-width: 5px;'>\n"; } else { echo "<tr>\n"; } } //========================= // MODIF: boireaus 20080315 //echo "<td width=\"$larg_col2\" align=\"center\" class='bull_simpl'>\n"; //if($nb>$periode1) {$style_bordure_cell="border: 1px dashed black;";} else {$style_bordure_cell="";} //$style_bordure_cell="border: 1px dashed black;"; if ($nb == $periode1) { if ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black"; } else { $style_bordure_cell = "border: 1px solid black; border-bottom: 1px dashed black"; } } elseif ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black;"; } else { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black; border-bottom: 1px dashed black;"; } if ($affiche_colonne_moy_classe != 'n') { echo "<td width=\"{$larg_col2}\" align=\"center\" class='bull_simpl' style='{$style_bordure_cell}'>\n"; //========================= //echo "\$nb=$nb<br />"; $note = number_format($current_classe_matiere_moyenne[$nb], 1, ',', ' '); if ($note != "0,0") { echo $note; } else { echo "-"; } echo "</td>\n"; } echo "<td width=\"{$larg_col3}\" align=\"center\" class='bull_simpl' style='{$style_bordure_cell}'>\n<b>"; $flag_moy[$nb] = 'no'; if ($current_eleve_note[$nb] != '') { if ($current_eleve_statut[$nb] != '') { echo $current_eleve_statut[$nb]; } else { //$note=number_format($current_eleve_note[$nb],1, ',', ' '); $note = nf($current_eleve_note[$nb]); echo "{$note}"; $flag_moy[$nb] = 'yes'; } } else { echo '-'; } echo "</b></td>\n"; //Affichage des cellules rang le cas échéant if ($affiche_rang == 'y') { /* $rang = sql_query1("select rang from matieres_notes where ( periode = '".$nb."' and id_groupe = '".$current_group["id"]."' and login = '******' ) "); if (($rang == 0) or ($rang == -1)){ $rang = "-"; } else{ //$rang.="/".$nb_notes[$current_group["id"]][$nb]; //if(isset($nb_notes[$current_group["id"]][$nb])){ $rang.="/".$nb_notes[$current_group["id"]][$nb]; //} //$rang.="<br />\$nb_notes[".$current_group["id"]."][$nb]"; } */ $rang = "-"; if (isset($tab_login_indice[$nb])) { if (isset($tab_moy['periodes'][$nb]['current_eleve_rang'][$j][$tab_login_indice[$nb]])) { // Si l'élève n'est dans le groupe que sur une période (cas des IDD), son rang n'existera pas sur certaines périodes //echo "\$tab_moy['periodes'][$nb]['current_eleve_rang'][$j][".$tab_login_indice[$nb]."]="; $rang = $tab_moy['periodes'][$nb]['current_eleve_rang'][$j][$tab_login_indice[$nb]]; //echo "$rang<br />"; } } $eff_grp_avec_note = $tab_moy['periodes'][$nb]['current_group_effectif_avec_note'][$j]; if ($rang != 0 && $rang != -1 && $rang != '' && $rang != '-') { $rang .= "/{$eff_grp_avec_note}"; } echo "<td width=\"{$larg_col4}\" align=\"center\" class='bull_simpl' style='{$style_bordure_cell}'><i>" . $rang . "</i></td>\n"; } // Affichage des cases appréciations echo "<td width=\"{$larg_col5}\" class='bull_simpl' style='{$style_bordure_cell}; text-align:left;'>\n"; // Affichage des moyennes secondaires if ($nb_ligne_cn[$nb] != 0) { $tiret = 'no'; for ($cn = 0; $cn < $nb_ligne_cn[$nb]; $cn++) { $appel_cn = mysqli_query($GLOBALS["mysqli"], "select note, statut from cn_notes_conteneurs where (login='******' and id_conteneur='" . $cn_id[$nb][$cn] . "')"); $cn_statut = @old_mysql_result($appel_cn, 0, 'statut'); if ($cn_statut == 'y') { $cn_note = @old_mysql_result($appel_cn, 0, 'note'); if ($tiret == 'yes') { echo " - "; } echo $cn_nom[$nb][$cn] . " : " . $cn_note; $tiret = 'yes'; } } echo "<br />\n"; } //========================================================== // MODIF: boireaus 20080218 // Dispositif de restriction des accès aux appréciations pour les comptes responsables/eleves //if ($current_eleve_appreciation[$nb]) { if ($current_eleve_appreciation[$nb] && $tab_acces_app[$nb] == "y") { //========================================================== //====================================== // MODIF: boireaus //echo $current_eleve_appreciation[$nb]; if ($current_eleve_appreciation[$nb] == "-1") { // 20120409 echo "<div id='app_" . $current_id_eleve . "_" . $current_group['id'] . "_{$nb}'>"; echo "<span class='noprint'>-</span>\n"; echo "</div>\n"; } else { // 20120409 echo "<div id='app_" . $current_id_eleve . "_" . $current_group['id'] . "_{$nb}'>"; if (strstr($current_eleve_appreciation[$nb], ">") || strstr($current_eleve_appreciation[$nb], "<")) { echo "{$current_eleve_appreciation[$nb]}"; } else { echo nl2br($current_eleve_appreciation[$nb]); } echo "</div>\n"; // 20131207 echo "<div id='proposition_app_" . $current_id_eleve . "_" . $current_group['id'] . "_{$nb}' class='noprint'>"; if (isset($tab_modif_app_proposees[$current_group['id']][$nb][$current_eleve_login])) { echo "<div style='border:1px solid red; color: green'><strong>Proposition de correction en attente :</strong><br />" . $tab_modif_app_proposees[$current_group['id']][$nb][$current_eleve_login] . "</div>"; } echo "</div>"; echo "<textarea name='appreciation_" . $current_id_eleve . "_" . $current_group['id'] . "[{$nb}]' id='appreciation_" . $current_id_eleve . "_" . $current_group['id'] . "_{$nb}' style='display:none;'>" . $current_eleve_appreciation[$nb] . "</textarea>\n"; } //====================================== } else { // 20120409 echo "<div id='app_" . $current_id_eleve . "_" . $current_group['id'] . "_{$nb}'>"; echo "<span class='noprint'>-</span>\n"; echo "</div>\n"; } echo "</td>\n"; if ($afficher_signalement_faute == 'y' || $afficher_proposition_correction == 'y') { // A N'INSERER QUE POUR LES COMPTES DE PERSONNELS... de façon à éviter de donner les mails des profs à des élèves echo "<td class='bull_simpl noprint'>"; if ($current_group["classe"]["ver_periode"][$id_classe][$nb] == 'O') { echo "-"; } else { // 20120409 echo affiche_lien_proposition_ou_correction_appreciation($current_eleve_login, $current_id_eleve, $current_eleve_prenom, $current_eleve_nom, $current_group, $id_classe, $nb, $liste_profs_du_groupe, $tab_mes_groupes, $tab_afficher_liens_modif_app); /* if(($_SESSION['statut']=='professeur')&&(in_array($current_group['id'],$tab_mes_groupes))) { if($current_group["classe"]["ver_periode"][$id_classe][$nb]=='N') { echo "<a href='#' onclick=\"modifier_une_appreciation('$current_eleve_login', '$current_id_eleve', '".$current_group['id']."', '$liste_profs_du_groupe', '$nb', 'corriger') ;return false;\" title=\"Modifier l'appréciation en période $nb pour $current_eleve_prenom $current_eleve_nom. Si vous vous apercevez que vous avez fait une faute de frappe, ou si vous souhaitez modifier votre appréciation, ce lien est là pour ça.\" class='noprint'><img src='../images/edit16.png' width='16' height='16' /></a> "; } elseif(isset($tab_afficher_liens_modif_app[$current_group['id']][$nb])) { if($tab_afficher_liens_modif_app[$current_group['id']][$nb]=='y') { echo "<a href='#' onclick=\"modifier_une_appreciation('$current_eleve_login', '$current_id_eleve', '".$current_group['id']."', '$liste_profs_du_groupe', '$nb', 'proposer') ;return false;\" title=\"Proposer une correction de l'appréciation en période $nb pour $current_eleve_prenom $current_eleve_nom. Si vous vous apercevez que vous avez fait une faute de frappe, ou si vous souhaitez simplement modifier votre appréciation, ce lien est là pour ça.\" class='noprint'><img src='../images/edit16.png' width='16' height='16' /></a> "; } elseif($tab_afficher_liens_modif_app[$current_group['id']][$nb]=='yy') { echo "<a href='#' onclick=\"modifier_une_appreciation('$current_eleve_login', '$current_id_eleve', '".$current_group['id']."', '$liste_profs_du_groupe', '$nb', 'corriger') ;return false;\" title=\"Modifier l'appréciation en période $nb pour $current_eleve_prenom $current_eleve_nom. Si vous vous apercevez que vous avez fait une faute de frappe, ou si vous souhaitez modifier votre appréciation, ce lien est là pour ça.\" class='noprint'><img src='../images/edit16.png' width='16' height='16' /></a> "; } //echo "plop"; } } */ // Tester si l'adresse mail du/des profs de l'enseignement est renseignée et si l'envoi de mail est actif. // Sinon, on pourrait enregistrer le signalement dans une table actions_signalements pour affichage comme le Panneau d'affichage if ($afficher_signalement_faute == 'y') { echo "<a href=\"mailto:{$liste_email_profs_du_groupe}?Subject=[Gepi]: Signaler un problème/faute&body=Bonjour,Je pense que vous avez commis une faute de frappe pour {$current_eleve_login} dans l enseignement n°" . $current_group['id'] . ".Cordialement.-- " . casse_mot($_SESSION['prenom'], 'majf2') . " " . $_SESSION['nom'] . "\""; if ($envoi_mail_actif != 'n') { //echo " onclick=\"alert('plop');return false;\""; echo " onclick=\"signaler_une_faute('{$current_eleve_login}', '{$current_id_eleve}', '" . $current_group['id'] . "', '{$liste_profs_du_groupe}', '{$nb}') ;return false;\""; } echo " title=\"Signaler une faute de frappe, d'orthographe ou autre...\nSi vous vous apercevez que ce collègue a fait une erreur,\nvous pouvez lui envoyer un mail pour l'alerter.\nCe lien est là pour ça.\" target='_blank'><img src='../images/icons/mail.png' width='16' height='16' alt='Signaler un problème/faute par mail' /></a>"; echo "<span id='signalement_effectue_" . $current_id_eleve . "_" . $current_group['id'] . "_{$nb}'></span>"; } } echo "</td>\n"; } echo "</tr>\n"; $print_tr = 'yes'; $nb++; } /* // On calcule les moyennes générales de l'élève et de la classe : if ($test_coef != 0) { $nb=$periode1; while ($nb < $periode2+1) { if ($flag_moy[$nb] == 'yes') { //=========================== // MODIF: boireaus 20070627 //$total_coef[$nb] += $current_coef; //$total_points_classe[$nb] += $current_coef*$current_classe_matiere_moyenne[$nb]; //$total_points_eleve[$nb] += $current_coef*$current_eleve_note[$nb]; if($mode_moy=='-') { $total_coef_eleve[$nb] += $coef_eleve; $total_points_eleve[$nb] += $coef_eleve*$current_eleve_note[$nb]; $total_coef_classe[$nb] += $current_coef; $total_points_classe[$nb] += $current_coef*$current_classe_matiere_moyenne[$nb]; } elseif($mode_moy=='sup10') { if($current_eleve_note[$nb]>10) { $total_points_eleve[$nb] += $coef_eleve*($current_eleve_note[$nb]-10); } if($current_classe_matiere_moyenne[$nb]>0) { $total_points_classe[$nb] += $current_coef*($current_classe_matiere_moyenne[$nb]-10); } } else { echo "<p>ANOMALIE : \$mode_moy='$mode_moy' mode inconnu pour ".$current_group['name']."</p>\n"; } //=========================== //if($affiche_categories=='1'){ if(($affiche_categories=='1')||($affiche_categories==true)){ $total_cat_classe[$nb][$prev_cat_id] += $current_coef*$current_classe_matiere_moyenne[$nb]; //=========================== // MODIF: boireaus 20070627 //$total_cat_eleve[$nb][$prev_cat_id] += $current_coef*$current_eleve_note[$nb]; $total_cat_eleve[$nb][$prev_cat_id] += $coef_eleve*$current_eleve_note[$nb]; //$total_cat_coef[$nb][$prev_cat_id] += $current_coef; $total_cat_coef_eleve[$nb][$prev_cat_id] += $coef_eleve; $total_cat_coef_classe[$nb][$prev_cat_id] += $current_coef; //=========================== } } $nb++; } } */ } //$j++; // echo "</table>"; } //echo "<table width=$larg_tab border=1 cellspacing=1 cellpadding=1>"; // On attaque maintenant l'affichage des appréciations des Activités Interdisciplinaires devant apparaître en fin de bulletin : $call_data = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM aid_config WHERE order_display1 = 'e' ORDER BY order_display2"); $nb_aid = mysqli_num_rows($call_data); $z = 0; while ($z < $nb_aid) { $display_begin = old_mysql_result($call_data, $z, "display_begin"); $display_end = old_mysql_result($call_data, $z, "display_end"); if ($periode1 >= $display_begin and $periode2 <= $display_end) { $indice_aid = @old_mysql_result($call_data, $z, "indice_aid"); $aid_query = mysqli_query($GLOBALS["mysqli"], "SELECT id_aid FROM j_aid_eleves WHERE (login='******' and indice_aid='{$indice_aid}')"); $aid_id = @old_mysql_result($aid_query, 0, "id_aid"); if ($aid_id != '') { affiche_aid_simple($affiche_rang, $test_coef, $indice_aid, $aid_id, $current_eleve_login, $periode1, $periode2, $id_classe, 'bull_simpl', $affiche_coef); } } $z++; } //echo "</table>"; //echo "<table width=$larg_tab border=1 cellspacing=1 cellpadding=1>"; //==================================================================== //==================================================================== //==================================================================== echo "</tbody>\n"; // Affichage des moyennes générales echo "<tfoot>\n"; if ($display_moy_gen == "y") { if ($test_coef != 0) { echo "<tr>\n<td"; if ($nb_periodes > 1) { echo " rowspan=" . $nb_periodes; } echo ">\n<p class='bull_simpl'><b>Moyenne générale</b></p>\n</td>\n"; //==================== // Modif: boireaus 20070626 if ($affiche_coef == 'y') { echo "<td"; if ($nb_periodes > 1) { echo " rowspan=" . $nb_periodes; } echo " align=\"center\" style='{$style_bordure_cell}'>-</td>\n"; } //==================== $nb = $periode1; $print_tr = 'no'; while ($nb < $periode2 + 1) { //============================= //if($nb==$periode1){echo "<tr>\n";} if ($print_tr == 'yes') { echo "<tr style='border-width: 5px;'>\n"; } //============================= //========================= // AJOUT: boireaus 20080315 if ($nb == $periode1) { if ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black"; } else { $style_bordure_cell = "border: 1px solid black; border-bottom: 1px dashed black"; } } elseif ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black;"; } else { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black; border-bottom: 1px dashed black;"; } //========================= if ($affiche_colonne_moy_classe != 'n') { echo "<td class='bull_simpl' align=\"center\" style='{$style_bordure_cell}'>\n"; /* //echo "\$total_points_classe[$nb]=$total_points_classe[$nb]<br />\n"; //echo "\$tab_moy_gen[$nb]=$tab_moy_gen[$nb]<br />\n"; //if ($total_points_classe[$nb] != 0) { if(($total_points_classe[$nb]!=0)||(isset($tab_moy_gen[$nb]))) { //$moy_classe=number_format($total_points_classe[$nb]/$total_coef[$nb],1, ',', ' '); //========================= // MODIF: boireaus 20080316 //$moy_classe=number_format($total_points_classe[$nb]/$total_coef_classe[$nb],1, ',', ' '); //$moy_classe=number_format($tab_moy_gen[$nb],1, ',', ' '); $moy_classe=$tab_moy_gen[$nb]; //========================= } else { $moy_classe = '-'; } //echo "$moy_classe"; echo nf($moy_classe); */ echo nf($tab_moy['periodes'][$nb]['moy_generale_classe'], 2); if ($affiche_deux_moy_gen == 1) { echo "<br />\n"; $moy_classe1 = $tab_moy['periodes'][$nb]['moy_generale_classe1']; echo "<i>" . nf($moy_classe1, 2) . "</i>\n"; } echo "</td>\n"; } echo "<td class='bull_simpl' align=\"center\" style='{$style_bordure_cell}'>\n"; /* if ($total_points_eleve[$nb] != '0') { //$moy_eleve=number_format($total_points_eleve[$nb]/$total_coef[$nb],1, ',', ' '); $moy_eleve=number_format($total_points_eleve[$nb]/$total_coef_eleve[$nb],1, ',', ' '); } else { $moy_eleve = '-'; } */ if (isset($tab_login_indice[$nb])) { $moy_eleve = $tab_moy['periodes'][$nb]['moy_gen_eleve'][$tab_login_indice[$nb]]; echo "<b>" . nf($moy_eleve, 2) . "</b>\n"; if ($affiche_deux_moy_gen == 1) { echo "<br />\n"; $moy_eleve1 = $tab_moy['periodes'][$nb]['moy_gen_eleve1'][$tab_login_indice[$nb]]; echo "<i><b>" . nf($moy_eleve1, 2) . "</b></i>\n"; } } else { echo "-\n"; } echo "</td>\n"; if ($affiche_rang == 'y') { $rang = sql_query1("select rang from j_eleves_classes where (\n\t\t\t\t\tperiode = '" . $nb . "' and\n\t\t\t\t\tid_classe = '" . $id_classe . "' and\n\t\t\t\t\tlogin = '******' )\n\t\t\t\t\t"); $nombre_eleves = count($tab_moy['periodes'][$nb]['current_eleve_login']); if ($rang == 0 or $rang == -1) { $rang = "-"; } else { $rang .= "/" . $nombre_eleves; } echo "<td class='bull_simpl' align=\"center\" style='{$style_bordure_cell}'>" . $rang . "</td>\n"; } if ($affiche_categories) { echo "<td class='bull_simpl' style='{$style_bordure_cell}; text-align:left;'>\n"; foreach ($categories as $cat_id) { // MODIF: boireaus 20070627 ajout du test et utilisation de $total_cat_coef_eleve, $total_cat_coef_classe // Tester si cette catégorie doit avoir sa moyenne affichée $affiche_cat_moyenne_query = mysqli_query($GLOBALS["mysqli"], "SELECT affiche_moyenne FROM j_matieres_categories_classes WHERE (classe_id = '" . $id_classe . "' and categorie_id = '" . $cat_id . "')"); if (mysqli_num_rows($affiche_cat_moyenne_query) == "0") { $affiche_cat_moyenne = false; } else { $affiche_cat_moyenne = old_mysql_result($affiche_cat_moyenne_query, 0); } if ($affiche_cat_moyenne) { /* //if ($total_cat_coef[$nb][$cat_id] != "0") { if ($total_cat_coef_eleve[$nb][$cat_id] != "0") { //$moy_eleve=number_format($total_cat_eleve[$nb][$cat_id]/$total_cat_coef[$nb][$cat_id],1, ',', ' '); //$moy_classe=number_format($total_cat_classe[$nb][$cat_id]/$total_cat_coef[$nb][$cat_id],1, ',', ' '); $moy_eleve=number_format($total_cat_eleve[$nb][$cat_id]/$total_cat_coef_eleve[$nb][$cat_id],1, ',', ' '); if ($total_cat_coef_classe[$nb][$cat_id] != "0") { $moy_classe=number_format($total_cat_classe[$nb][$cat_id]/$total_cat_coef_classe[$nb][$cat_id],1, ',', ' '); } else{ $moy_classe="-"; } echo $cat_names[$cat_id] . " - <b>".$moy_eleve."</b> (classe : " . $moy_classe . ")<br/>\n"; } */ // Si l'élève est bien dans la classe sur la période $nb if (isset($tab_login_indice[$nb])) { $moy_eleve = $tab_moy['periodes'][$nb]['moy_cat_eleve'][$tab_login_indice[$nb]][$cat_id]; $moy_classe = $tab_moy['periodes'][$nb]['moy_cat_classe'][$tab_login_indice[$nb]][$cat_id]; echo $cat_names[$cat_id] . " - <b>" . nf($moy_eleve, 2) . "</b> (classe : " . nf($moy_classe, 2) . ")<br/>\n"; } } } echo "</td>\n</tr>\n"; } else { echo "<td class='bull_simpl' style='text-align:left; {$style_bordure_cell}'>-</td>\n</tr>\n"; } $nb++; $print_tr = 'yes'; } } } echo "</tfoot>\n"; echo "</table>\n"; // Les absences // On ne les affiche que si dans le bulletin HTML, on affiche les absences if (getSettingAOui('bull_affiche_absences')) { echo "<span class='bull_simpl'><b>Absences et retards:</b></span>\n"; //echo "<table width=$larg_tab border=1 cellspacing=1 cellpadding=1>\n"; echo "<table width='{$larg_tab}' class='boireaus' cellspacing='1' cellpadding='1' summary='Absences et retards'>\n"; $nb = $periode1; while ($nb < $periode2 + 1) { //On vérifie si le module est activé if (getSettingValue("active_module_absence") != '2' || getSettingValue("abs2_import_manuel_bulletin") == 'y') { $current_eleve_absences_query = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM absences WHERE (login='******' AND periode='{$nb}')"); $eleve_abs[$nb] = @old_mysql_result($current_eleve_absences_query, 0, "nb_absences"); $eleve_abs_nj[$nb] = @old_mysql_result($current_eleve_absences_query, 0, "non_justifie"); $eleve_retards[$nb] = @old_mysql_result($current_eleve_absences_query, 0, "nb_retards"); $current_eleve_appreciation_absences = @old_mysql_result($current_eleve_absences_query, 0, "appreciation"); $eleve_app_abs[$nb] = @old_mysql_result($current_eleve_absences_query, 0, "appreciation"); } else { // Initialisations files require_once "../lib/initialisationsPropel.inc.php"; $eleve = EleveQuery::create()->findOneByLogin($current_eleve_login); if ($eleve != null) { $current_eleve_absences_query = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM absences WHERE (login='******' AND periode='{$nb}')"); $eleve_abs[$nb] = $eleve->getDemiJourneesAbsenceParPeriode($nb)->count(); $eleve_abs_nj[$nb] = $eleve->getDemiJourneesNonJustifieesAbsenceParPeriode($nb)->count(); $eleve_retards[$nb] = $eleve->getRetardsParPeriode($nb)->count(); $current_eleve_appreciation_absences = @old_mysql_result($current_eleve_absences_query, 0, "appreciation"); $eleve_app_abs[$nb] = @old_mysql_result($current_eleve_absences_query, 0, "appreciation"); } } if ($eleve_abs[$nb] !== '' and $eleve_abs_nj[$nb] !== '') { $eleve_abs_j[$nb] = $eleve_abs[$nb] - $eleve_abs_nj[$nb]; } else { $eleve_abs_j[$nb] = "?"; } if ($eleve_abs_nj[$nb] === '') { $eleve_abs_nj[$nb] = "?"; } if ($eleve_retards[$nb] === '') { $eleve_retards[$nb] = "?"; } //==================================== // AJOUT: boireaus 20080317 if ($nb == $periode1) { if ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black"; } else { $style_bordure_cell = "border: 1px solid black; border-bottom: 1px dashed black"; } } elseif ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black;"; } else { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black; border-bottom: 1px dashed black;"; } //==================================== $nb_colspan_abs = 0; if (getSettingValue('bull_affiche_abs_tot') == 'y') { $nb_colspan_abs++; } if (getSettingValue('bull_affiche_abs_nj') == 'y') { $nb_colspan_abs++; } if (getSettingValue('bull_affiche_abs_ret') == 'y') { $nb_colspan_abs++; } echo "<tr>\n<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>{$nom_periode[$nb]}</td>\n"; // Test pour savoir si l'élève appartient à la classe pour la période considérée $test_eleve_app = sql_query1("select count(login) from j_eleves_classes where login='******' and id_classe='" . $id_classe . "' and periode='" . $nb . "'"); if (getSettingValue('bull_affiche_abs_tot') == 'y' || getSettingValue('bull_affiche_abs_nj') == 'y' || getSettingValue('bull_affiche_abs_ret') == 'y') { if ($test_eleve_app != 0) { // 20130215 if (getSettingValue('bull_affiche_abs_tot') == 'y') { if (getSettingValue('bull_affiche_abs_nj') == 'y') { echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>\n"; if ($eleve_abs_j[$nb] == "1") { echo "Absences justifiées : une demi-journée"; } else { if ($eleve_abs_j[$nb] != "0") { echo "Absences justifiées : {$eleve_abs_j[$nb]} demi-journées"; } else { echo "Aucune absence justifiée"; } } echo "</td>\n"; echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>\n"; if ($eleve_abs_nj[$nb] == '1') { echo "Absences non justifiées : une demi-journée"; } else { if ($eleve_abs_nj[$nb] != '0') { echo "Absences non justifiées : {$eleve_abs_nj[$nb]} demi-journées"; } else { echo "Aucune absence non justifiée"; } } echo "</td>\n"; } else { echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>\n"; if ($eleve_abs[$nb] > 0) { echo "Nombre de demi-journées : " . $eleve_abs[$nb]; } else { echo "Aucune absence"; } echo "</td>\n"; } } elseif (getSettingValue('bull_affiche_abs_nj') == 'y') { echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>\n"; if ($eleve_abs_nj[$nb] == "1") { echo "Absences non-justifiées : une demi-journée"; } else { if ($eleve_abs_nj[$nb] != "0") { echo "Absences non-justifiées : {$eleve_abs_nj[$nb]} demi-journées"; } else { echo "Aucune absence non-justifiée"; } } echo "</td>\n"; } if (getSettingValue('bull_affiche_abs_ret') == 'y') { echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>Nb. de retards : {$eleve_retards[$nb]}</td>\n"; } echo "</tr>\n"; } else { if (getSettingValue('bull_affiche_abs_tot') == 'y') { echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>-</td>\n"; } if (getSettingValue('bull_affiche_abs_nj') == 'y') { echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>-</td>\n"; } if (getSettingValue('bull_affiche_abs_ret') == 'y') { echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>-</td>\n"; } echo "</tr>\n"; } } else { if ($nb_colspan_abs > 0) { echo "<td colspan='{$nb_colspan_abs}' valign=top class='bull_simpl' style='{$style_bordure_cell}'>-</td>\n"; } else { echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'>-</td>\n"; } echo "</tr>\n"; } //Ajout Eric if ($current_eleve_appreciation_absences != "") { if ($test_eleve_app != 0) { echo "<tr>\n"; echo "<td valign=top class='bull_simpl' style='{$style_bordure_cell}'> </td>\n"; if ($nb_colspan_abs > 0) { echo "<td valign=top class='bull_simpl' colspan=\"{$nb_colspan_abs}\" style='text-align:left; {$style_bordure_cell}'>"; } else { echo "<td valign=top class='bull_simpl' style='text-align:left; {$style_bordure_cell}'>"; } echo " Observation(s) : {$current_eleve_appreciation_absences}</td>\n</tr>\n"; } else { echo "<tr><td valign=top class='bull_simpl' style='{$style_bordure_cell}'> </td><td valign=top class='bull_simpl' colspan=\"3\" style='{$style_bordure_cell}'>-</td>\n</tr>\n"; } } $nb++; } echo "</table>\n"; } $tab_classe_periode = get_infos_classe_periode($id_classe); // Maintenant, on met l'avis du conseil de classe : echo "<span class='bull_simpl'><b>Avis du conseil de classe </b> "; if ($current_eleve_profsuivi_login) { $gepi_prof_suivi = ucfirst(retourne_denomination_pp($id_classe)); echo "<b>(" . ucfirst($gepi_prof_suivi) . " : <i>" . affiche_utilisateur($current_eleve_profsuivi_login, $id_classe) . "</i>)</b>"; } echo " :</span>\n"; $larg_col1b = $larg_tab - $larg_col1; echo "<table width=\"{$larg_tab}\" class='boireaus' cellspacing='1' cellpadding='1' summary='Avis du conseil de classe'>\n"; $nb = $periode1; while ($nb < $periode2 + 1) { //========================= if ($nb == $periode1) { if ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black"; } else { $style_bordure_cell = "border: 1px solid black; border-bottom: 1px dashed black"; } } elseif ($nb == $periode2) { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black;"; } else { $style_bordure_cell = "border: 1px solid black; border-top: 1px dashed black; border-bottom: 1px dashed black;"; } //========================= $current_eleve_avis_query = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM avis_conseil_classe WHERE (login='******' AND periode='{$nb}')"); $current_eleve_avis[$nb] = @old_mysql_result($current_eleve_avis_query, 0, "avis"); // **** AJOUT POUR LA MENTION **** $current_eleve_mention[$nb] = @old_mysql_result($current_eleve_avis_query, 0, "id_mention"); // **** FIN D'AJOUT POUR LA MENTION **** // Test pour savoir si l'élève appartient à la classe pour la période considérée $test_eleve_app = sql_query1("select count(login) from j_eleves_classes where login='******' and id_classe='" . $id_classe . "' and periode='" . $nb . "'"); if ($current_eleve_avis[$nb] == '' or $tab_acces_app[$nb] != "y" or $test_eleve_app == 0) { $current_eleve_avis[$nb] = ' -'; } echo "<tr>\n<td valign=\"top\" width =\"{$larg_col1}\" class='bull_simpl' style='text-align:left; {$style_bordure_cell}'>{$nom_periode[$nb]}</td>\n"; echo "<td valign=\"top\" width = \"{$larg_col1b}\" class='bull_simpl' style='text-align:left; {$style_bordure_cell}' title=\"Avis du conseil de classe en période n°{$nb} pour " . $current_eleve_prenom . " " . $current_eleve_nom . "\">"; if ($temoin_page_courante != "saisie_avis2" && $tab_classe_periode[$nb]['verouiller'] != "O") { if ($_SESSION['statut'] == 'scolarite' || $_SESSION['statut'] == 'professeur' && is_pp($_SESSION['login'], $id_classe)) { echo "<div style='float:right; width:16px;' title=\"Saisir/Modifier l'avis du conseil de classe.\" class='noprint'><a href = '../saisie/saisie_avis2.php?periode_num={$nb}&id_classe={$id_classe}&fiche=y&current_eleve_login={$current_eleve_login}#app' onclick=\"return confirm_abandon (this, change, '{$themessage}')\"><img src='../images/edit16.png' class='icone16' alt='Editer' /></a></div>"; //&ind_eleve_login_suiv=$ind_eleve_login_suiv } } echo $current_eleve_avis[$nb]; // Ajouter par la suite une option pour faire apparaître les mentions même si c'est "-" //if(($current_eleve_mention[$nb]=="F")||($current_eleve_mention[$nb]=="M")||($current_eleve_mention[$nb]=="E")) { $afficher_les_mentions = "y"; if ($_SESSION['statut'] == 'eleve' || $_SESSION['statut'] == 'responsable') { if ($tab_acces_app[$nb] != "y") { $afficher_les_mentions = "n"; } } if ($afficher_les_mentions == "y") { if (!isset($tableau_des_mentions_sur_le_bulletin) || !is_array($tableau_des_mentions_sur_le_bulletin) || count($tableau_des_mentions_sur_le_bulletin) == 0) { $tableau_des_mentions_sur_le_bulletin = get_mentions(); } if (isset($tableau_des_mentions_sur_le_bulletin[$current_eleve_mention[$nb]])) { echo "<br />\n"; echo "<br />\n"; echo "<b>" . $gepi_denom_mention . " : </b>"; echo $tableau_des_mentions_sur_le_bulletin[$current_eleve_mention[$nb]]; //else {echo "-";} } } echo "</td>\n"; echo "</tr>\n"; $nb++; } echo "</table>\n"; } // fin de la condition if ($on_continue == 'yes') }
echo "</tr>\n"; } echo "</table>\n"; if (count($tab_ele['classe']) == 1) { $gepi_prof_suivi_current_classe = retourne_denomination_pp($tab_ele['classe'][0]['id_classe']); echo "<p><strong>" . ucfirst($gepi_prof_suivi_current_classe) . "</strong>: "; } else { echo "<p><strong>" . ucfirst($gepi_prof_suivi) . "</strong>: "; } for ($loop = 0; $loop < count($tab_ele['classe']); $loop++) { if (isset($tab_ele['classe'][$loop]['pp'])) { if ($loop > 0) { echo ", "; } if ($tab_ele['classe'][$loop]['pp']['email'] != "") { $gepi_prof_suivi_current_classe = retourne_denomination_pp($tab_ele['classe'][$loop]['id_classe']); //echo "<a href='mailto:".$tab_ele['classe'][$loop]['pp']['email']."'>"; //echo "<a href='mailto:".$tab_ele['classe'][$loop]['pp']['email']."'>"; echo "<a href='mailto:" . $tab_ele['classe'][$loop]['pp']['email'] . "?subject=" . getSettingValue('gepiPrefixeSujetMail') . "GEPI - [" . remplace_accents($tab_ele['nom'], 'all') . " " . remplace_accents($tab_ele['prenom'], 'all') . "]&body="; if ($tmp_date['hours'] >= 18) { echo "Bonsoir"; } else { echo "Bonjour"; } echo ",%0d%0aCordialement.' title=\"Envoyer un email au " . $gepi_prof_suivi_current_classe . "\">"; } echo $tab_ele['classe'][$loop]['pp']['civ_nom_prenom']; if ($tab_ele['classe'][$loop]['pp']['email'] != "") { echo "</a>"; } echo " (<em>" . $tab_ele['classe'][$loop]['classe'] . "</em>)";