function clean_string_csv($texte) { // Pour remplacer les ; par ., et les " par '' et virer les retours à la ligne $texte=my_ereg_replace(";",".,",$texte); $texte=my_ereg_replace('"',"''",$texte); $texte=my_ereg_replace('\\\r\\\n','',$texte); return $texte; }
function modif_suivi_du_courrier($id_absence_eleve, $eleve_absence_eleve='') { global $prefix_base; $requete_a_qui_appartient_id = 'SELECT * FROM '.$prefix_base.'absences_eleves WHERE id_absence_eleve = "' . $id_absence_eleve . '"'; $execution_a_qui_appartient_id = mysqli_query($GLOBALS["mysqli"], $requete_a_qui_appartient_id) or die('Erreur SQL !'.$requete_a_qui_appartient_id.'<br />'.mysqli_error($GLOBALS["mysqli"])); while ( $donnee_a_qui_appartient_id = mysqli_fetch_array( $execution_a_qui_appartient_id ) ) { $eleve_absence_eleve = $donnee_a_qui_appartient_id['eleve_absence_eleve']; } // on vérify s'il y a un courrier si oui on le supprime s'il fait parti d'un ensemble de courrier alors on le modifi. // première option il existe une lettre qui fait seulement référence à cette id donc suppression $cpt_lettre_suivi = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT count(*) FROM ".$prefix_base."lettres_suivis WHERE quirecois_lettre_suivi = '".$eleve_absence_eleve."' AND partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi = ',".$id_absence_eleve.",'"),0); if( $cpt_lettre_suivi == 1 ) { $requete = "DELETE FROM ".$prefix_base."lettres_suivis WHERE partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi = ',".$id_absence_eleve.",'"; mysqli_query($GLOBALS["mysqli"], $requete) or die('Erreur SQL !'.$requete.'<br />'.mysqli_error($GLOBALS["mysqli"])); } else { // deuxième option il existe une lettre qui fait référence à cette id mais à d'autre aussi donc modification $cpt_lettre_suivi = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT count(*) FROM ".$prefix_base."lettres_suivis WHERE quirecois_lettre_suivi = '".$eleve_absence_eleve."' AND partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi LIKE '%,".$id_absence_eleve.",%'"),0); if( $cpt_lettre_suivi == 1 ) { $requete = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM ".$prefix_base."lettres_suivis WHERE partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi LIKE '%,".$id_absence_eleve.",%'" ); $donnee = mysqli_fetch_array($requete); $remplace_sa = ','.$id_absence_eleve.','; $modifier_par = my_ereg_replace($remplace_sa,',',$donnee['partdenum_lettre_suivi']); $requete = "UPDATE ".$prefix_base."lettres_suivis SET partdenum_lettre_suivi = '".$modifier_par."', envoye_date_lettre_suivi = '', envoye_heure_lettre_suivi = '', quienvoi_lettre_suivi = '' WHERE partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi LIKE '%,".$id_absence_eleve.",%'"; mysqli_query($GLOBALS["mysqli"], $requete) or die('Erreur SQL !'.$requete.'<br />'.mysqli_error($GLOBALS["mysqli"])); } } }
} } $tbs_nom_prenom_statut = $tbs_nom_prenom; //=== Dernière connexion === if (isset($affiche_connexion)) { $tbs_last_connection = last_connection(); } //=== statut utilisateur === if (isset($_SESSION['statut'])) { $tbs_nom_prenom_statut .= " (" . $_SESSION['statut'] . ")"; if ($_SESSION['statut'] == "administrateur") { $tbs_statut[] = array("classe" => "rouge", "texte" => "Administrateur"); } elseif ($_SESSION['statut'] == "professeur") { $nom_complet_matiere = sql_query1("select nom_complet from matieres\n\t\t\twhere matiere = '" . $_SESSION['matiere'] . "'"); if ($nom_complet_matiere != '-1') { $nom_complet_matiere = my_ereg_replace("&", "&", $nom_complet_matiere); $tbs_statut[] = array("classe" => "", "texte" => "Professeur de : " . $nom_complet_matiere); } else { $tbs_statut[] = array("classe" => "", "texte" => "Invité"); } } elseif ($_SESSION['statut'] == "scolarite") { $tbs_statut[] = array("classe" => "", "texte" => "Scolarité"); } elseif ($_SESSION['statut'] == "cpe") { $tbs_statut[] = array("classe" => "", "texte" => "CPE"); } elseif ($_SESSION['statut'] == "eleve") { $tab_tmp_info_classes = get_noms_classes_from_ele_login($_SESSION['login']); $tbs_statut[] = array("classe" => "", "texte" => "Élève de " . $tab_tmp_info_classes[count($tab_tmp_info_classes) - 1]); } elseif ($_SESSION['statut'] == "responsable") { if (getSettingAOui('GepiMemesDroitsRespNonLegaux')) { $tab_tmp_ele = get_enfants_from_resp_login($_SESSION['login'], "simple", "yy"); } else {
//======================= //=== Initialisation des variables === //======================= $titre_page = "Fiches Brevet"; // Récupération des variables: // Tableau des classes: $id_classe = isset($_POST['id_classe']) ? $_POST['id_classe'] : (isset($_GET['id_classe']) ? $_GET['id_classe'] : NULL); $type_brevet = isset($_POST['type_brevet']) ? $_POST['type_brevet'] : (isset($_GET['type_brevet']) ? $_GET['type_brevet'] : NULL); if(isset($type_brevet)) { if((!my_ereg("[0-9]",$type_brevet))||(mb_strlen(my_ereg_replace("[0-9]","",$type_brevet))!=0)) { $type_brevet=NULL; } } $avec_app=isset($_POST['avec_app']) ? $_POST['avec_app'] : "n"; //===================================== //=== PARAMÉTRAGE GENERAL DES FICHES BREVETS === //===================================== if (isset($_GET['parametrer'])) { //**************** EN-TETE *****************
$temoin_grp = 1; unset($tabtmp); $tabtmp = explode('"', strstr($ligne[$cpt], " CODE=")); $groupes[$i] = array(); $groupes[$i]["code"] = trim($tabtmp[1]); $j = 0; $m = 0; } if (strstr($ligne[$cpt], "</GROUPE>")) { $temoin_grp = 0; $i++; } if ($temoin_grp == 1) { if (strstr($ligne[$cpt], "<LIBELLE_LONG>")) { unset($tabtmp); $tabtmp = explode(">", my_ereg_replace("<", ">", $ligne[$cpt])); $groupes[$i]["libelle_long"] = trim($tabtmp[2]); } if (strstr($ligne[$cpt], "<DIVISIONS_APPARTENANCE>")) { $temoin_div_appart = 1; } if (strstr($ligne[$cpt], "</DIVISIONS_APPARTENANCE>")) { $temoin_div_appart = 0; } if ($temoin_div_appart == 1) { /* if(strstr($ligne[$cpt],"<DIVISION_APPARTENANCE CODE=")){ unset($tabtmp); $tabtmp=explode('"',$ligne[$cpt]); $groupes[$i]["divisions"][$j]["code"]=trim($tabtmp[1]); $j++;
$res_opt = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_opt) > 0) { while ($lig_opt = mysqli_fetch_object($res_opt)) { $tab_ele_opt[] = mb_strtoupper($lig_opt->id_matiere); } } } //=================================== //echo "<td>Profil</td>\n"; echo "<td>\n"; echo "<input type='hidden' name='profil[{$cpt}]' id='profil_{$cpt}' value='{$profil}' />\n"; echo "<div id='div_profil_{$cpt}' onclick=\"affiche_set_profil({$cpt});changement();return false;\">{$profil}</div>\n"; echo "</td>\n"; //=================================== echo "<td>\n"; if ($moy != "" && mb_strlen(my_ereg_replace("[0-9.,]", "", $moy)) == 0) { if ($num_per2 > 0) { echo "<a href=\"#\" onclick=\"afficher_div('div_bull_simp','y',-100,40); affiche_bull_simp('{$lig->login}','" . $id_classe_actuelle[$j] . "','1','{$num_per2}');return false;\" style='text-decoration:none;'>"; } if ($moy < 7) { echo "<span style='color:red;'>"; } elseif ($moy < 9) { echo "<span style='color:orange;'>"; } elseif ($moy < 12) { echo "<span style='color:gray;'>"; } elseif ($moy < 15) { echo "<span style='color:green;'>"; } else { echo "<span style='color:blue;'>"; } echo "{$moy}";
// PREPARATIFS boireaus 20080422 // Pour passer à no_anti_inject comme pour les autres saisies d'appréciations if ($mode_commentaire_20080422 != "no_anti_inject") { // Problème: les accents sont codés en HTML... $comment = $comment_eleve[$i]; // Cela fonctionne chez moi avec cette correction (accents, apostrophes et retours à la ligne): $comment = addslashes(my_ereg_replace('(\\\\r\\\\n)+', "\r\n", my_ereg_replace("'", "'", html_entity_decode($comment)))); } else { if (isset($NON_PROTECT["comment_eleve" . $i])) { $comment = traitement_magic_quotes(corriger_caracteres($NON_PROTECT["comment_eleve" . $i])); } else { $comment = ""; } //echo "$i: $comment<br />"; // Contrôle des saisies pour supprimer les sauts de lignes surnuméraires. $comment = my_ereg_replace('(\\\\r\\\\n)+', "\r\n", $comment); } //============================== //echo "$reg_eleve_login : $note <br />"; if ($note == 'disp' || $note == 'd') { $note = '0'; $elev_statut = 'disp'; } elseif ($note == 'abs' || $note == 'a') { $note = '0'; $elev_statut = 'abs'; } elseif ($note == '-' || $note == 'n') { $note = '0'; $elev_statut = '-'; } elseif (my_ereg("^[0-9\\.\\,]{1,}\$", $note)) { $note = str_replace(",", ".", "{$note}"); $appel_note_sur = mysqli_query($GLOBALS["mysqli"], "SELECT note_sur FROM cc_eval WHERE id='{$id_eval}'");
do { $note_import_sacoche[$_POST['log_eleve'][$i]] = round($_POST['note_eleve'][$i] * $note_sur_dev_choisi / 100); $i++; } while ($i < $_POST['indice_max_log_eleve']); } if (isset($_POST['appreciations'])) { check_token(); $temp = $_POST['appreciations'] . " 1"; // Sous Linux, on n'envoie que des \n if (preg_match("/\\\\r/", $temp)) { // Cas Window$ et Mac $temp = my_ereg_replace("\\\\r", "`", $temp); $temp = my_ereg_replace("\\\\n", "", $temp); } elseif (preg_match("/\\\\n/", $temp)) { // Cas Linux $temp = my_ereg_replace("\\\\n", "`", $temp); } $temp = unslashes($temp); $longueur = mb_strlen($temp); $i = 0; $fin_app = 'yes'; $indice = $_POST['debut_import'] - 2; $tempo = ""; while ($i < $longueur and $indice < $_POST['fin_import']) { $car = mb_substr($temp, $i, 1); if (!my_ereg("^[`]{1}\$", $car)) { if ($fin_app == 'yes' or $i == $longueur - 1) { $fin_app = 'no'; $appreciations_import[$indice] = $tempo; $indice++; $tempo = '';
<option value="lycée professionnel">Lycée professionnel</option> <option value="lycée général/professionnel">Lycée général/professionnel</option> <option value="école">Ecole</option> <option value="autre">Autre</option> </select></td></tr> <tr style="background-color: #EFF3FF;"><td><label for="pref21">Nom</label></td><td><input maxlength="200" size="15" name="pref21" id="pref21" class="input" onfocus="javascript:this.select()" value="<?php echo getSettingValue("gepiSchoolName"); ?>" /></td></tr> <tr style="background-color: #DFE8FF;"><td><label for="pref31">Code postal</label></td><td><input maxlength="4" size="2" name="pref31" id="pref31" class="input" onfocus="javascript:this.select()" /></td></tr> <tr style="background-color: #EFF3FF;"><td><label for="pref3">N° du département</label></td><td><input maxlength="4" size="2" name="pref3" id="pref3" class="input" onfocus="javascript:this.select()" <?php $num_dp=getSettingValue("gepiSchoolZipCode"); ?> value="<?php echo $num_dp{0}.$num_dp{1}; ?>" /></td></tr> <tr style="background-color: #DFE8FF;"><td><label for="pref4">RNE</label></td><td><input maxlength="20" size="15" name="pref4" id="pref4" class="input" onfocus="javascript:this.select()" /></td></tr> <?php /* <tr style="background-color: #EFF3FF;"><td><label for="pref5">Mon établissement (nom patronymique et ville seulement) peut figurer dans la liste des "établissements utilisateurs de Gepi" sur le site public de Gepi.</label></td><td style="text-align: center;"><input checked="checked" name="pref5" id="pref5" type="radio" /></td></tr> <tr style="background-color: #DFE8FF;"><td><label for="pref6">Seule l'équipe des développeurs peut avoir connaissance de l'utilisation de Gepi par mon établissement.</label></td><td style="text-align: center;"><input name="pref5" id="pref6" type="radio" /></td></tr> <tr style="background-color: #EFF3FF;"><td><label for="pref7">Ne pas enregistrer mon établissement.</label></td><td style="text-align: center;"><input name="pref5" id="pref7" type="radio" /></td></tr> */ ?> <tr style="background-color: #EFF3FF;"><td colspan="2"><input checked="checked" name="pref5" id="pref5" type="radio" /><label for="pref5">Mon établissement (nom patronymique et ville seulement) peut figurer dans la liste des "établissements utilisateurs de Gepi" sur le site public de Gepi.</label></td></tr> <tr style="background-color: #DFE8FF;"><td colspan="2"><input name="pref5" id="pref6" type="radio" /><label for="pref6">Seule l'équipe des développeurs peut avoir connaissance de l'utilisation de Gepi par mon établissement.</label></td></tr> <tr style="background-color: #EFF3FF;"><td colspan="2"><input name="pref5" id="pref7" type="radio" /><label for="pref7">Ne pas enregistrer mon établissement.</label></td></tr> <tr><td></td><td style="text-align: center;"> <input type="hidden" name="version" value="<?php echo getSettingValue("version"); ?>" /> <input type="hidden" name="uid_post" value="<?php echo my_ereg_replace(' ','%20',$uid); ?>" /> <input type="submit" value="Valider" /></td></tr></table> </fieldset> </form> </div> </div> <?php } ?> <a href="javascript:window.close();">Fermer la fenêtre</a> </center> </body> </html>
break; case 'F': echo 'Fiche élève'; break; default: echo ''; break; } ?> </td> <td style="text-align: center; padding: 2px;"><?php echo $donnee_alert_type['specifisite_alert_type']; ?></td> <td style="text-align: center; padding: 2px;"><?php echo date_fr($donnee_alert_type['date_debut_comptage']); ?></td> <td style="text-align: center; padding: 2px;"><?php echo $donnee_alert_type['nb_comptage_limit']; ?> fois</td> <?php if ( $editer_ce_groupe != 'non' ) { ?> <td style="text-align: center;"><a href="alert_suivi.php?action_page=<?php echo $action_page; ?>&id_alert_groupe=<?php echo $id_alert_groupe; ?>&action=modifier_alert_type&id_alert_type=<?php echo $donnee_alert_type['id_alert_type']; ?>&uid_post=<?php echo my_ereg_replace(' ','%20',$uid); ?>#eg"><img src="../images/modification.png" width="18" height="22" title="Modifier" border="0" alt="" /></a></td> <td style="text-align: center;"><a href="alert_suivi.php?action_sql=supprimer_alert_type&action_page=<?php echo $action_page; ?>&action=<?php echo $action; ?>&id_alert_groupe=<?php echo $id_alert_groupe; ?>&id_alert_type=<?php echo $donnee_alert_type['id_alert_type']; ?>&uid_post=<?php echo my_ereg_replace(' ','%20',$uid); ?>#eg" onClick="return confirm('Etes-vous sur de vouloire le supprimer...')"><img src="../images/x2.png" width="22" height="22" title="Supprimer" border="0" alt="" /></a></td> <?php } ?> </tr> <?php } ?> </table> </div> <?php } ?> </div> <?php } ?> <?php /* fin du div de centrage du tableau pour ie5 */ ?> </div> <?php require("../../lib/footer.inc.php"); ?>
function get_user_profile($_login) { $_login = my_ereg_replace("[^-@._[:space:][:alnum:]]", "", $_login); // securite $search_dn = $this->get_dn(); $search_filter = "(" . $this->champ_login . "=" . $_login . ")"; $sr = ldap_search($this->ds, $search_dn, $search_filter); $user = array(); $user = ldap_get_entries($this->ds, $sr); if (array_key_exists(0, $user)) { $infos = array(); $infos["dn"] = $user[0]["dn"]; if ($this->champ_prenom == '' || !array_key_exists($this->champ_prenom, $user[0])) { $user[0][$this->champ_prenom][0] = ''; } if ($this->champ_nom == '' || !array_key_exists($this->champ_nom, $user[0])) { $user[0][$this->champ_nom][0] = ''; } if ($this->champ_nom_complet == '' || !array_key_exists($this->champ_nom_complet, $user[0])) { $user[0][$this->champ_nom_complet][0] = ''; } $nom = $this->format_name($user[0][$this->champ_prenom][0], $user[0][$this->champ_nom][0], $user[0][$this->champ_nom_complet][0]); $infos["prenom"] = $nom['prenom']; $infos["nom"] = $nom['nom']; if (!array_key_exists($this->champ_email, $user[0])) { $user[0][$this->champ_email][0] = null; } $infos["email"] = $user[0][$this->champ_email][0]; if (!array_key_exists($this->champ_civilite, $user[0])) { $user[0][$this->champ_civilite][0] = $this->code_cilivite_madame; } switch ($user[0][$this->champ_civilite][0]) { case $this->code_civilite_madame: $infos["civilite"] = "Mme"; break; case $this->code_civilite_mademoiselle: $infos["civilite"] = "Mlle"; break; case $this->code_civilite_monsieur: $infos["civilite"] = "M."; break; default: $infos["civilite"] = "Mme"; break; } if ($this->champ_rne == '' || !array_key_exists($this->champ_rne, $user[0])) { $user[0][$this->champ_rne][0] = ""; $user[0][$this->champ_rne]['count'] = 0; } $nbre_rne = $user[0][$this->champ_rne]['count']; // S'il y a plusieurs RNE dans le ldap, on les renvoie tous $infos["rne"] = array(); for ($a = 0; $a < $nbre_rne; $a++) { $infos["rne"][$a] = $user[0][$this->champ_rne][$a]; } # La détermination du statut est la manipulation la plus délicate. # On dispose de deux moyens : un champ du LDAP (le plus simple...) # ou bien une chaîne à tester sur le DN. if ($this->champ_statut != null) { // Le champ statut est défini, alors on teste if (array_key_exists($this->champ_statut, $user[0])) { if (in_array($user[0][$this->champ_statut][0], array("administrateur", "professeur", "eleve", "responsable", "scolarite", "cpe"))) { $infos["statut"] = $user[0][$this->champ_statut][0]; } } } else { // Si on est là, ce qu'on va essayer de tester avec des chaînes de caractères sur le DN // En raison du risque d'erreur en cas de mauvaise configuration, on ne teste pas // le statut administrateur. if ($this->chaine_dn_statut_professeur != '' && strstr($infos["dn"], $this->chaine_dn_statut_professeur)) { $infos["statut"] = "professeur"; } else { if ($this->chaine_dn_statut_eleve != '' && strstr($infos["dn"], $this->chaine_dn_statut_eleve)) { $infos["statut"] = "eleve"; } else { if ($this->chaine_dn_statut_responsable != '' && strstr($infos["dn"], $this->chaine_dn_statut_responsable)) { $infos["statut"] = "responsable"; } else { if ($this->chaine_dn_statut_scolarite != '' && strstr($infos["dn"], $this->chaine_dn_statut_scolarite)) { $infos["statut"] = "scolarite"; } else { if ($this->chaine_dn_statut_cpe != '' && strstr($infos["dn"], $this->chaine_dn_statut_cpe)) { $infos["statut"] = "cpe"; } } } } } } if (!isset($info["statut"]) || !in_array($infos["statut"], array("administrateur", "professeur", "eleve", "responsable", "scolarite", "cpe"))) { $infos["statut"] = getSettingValue("statut_utilisateur_defaut"); } return $infos; } else { return false; } }
if (empty($classe[0]) and empty($periode[0]) and !empty($creer_pdf) and empty($selection_eleve)) { $message_erreur = 'attention n\'oubliez pas de sélectionner la ou les classe(s) et la ou les période(s) !'; } /* //debug_var(); for($i=0;$i<count($classe);$i++){ echo "\$classe[$i]=".$classe[$i]."<br />"; } for($i=0;$i<count($periode);$i++){ echo "\$periode[$i]=".$periode[$i]."<br />"; } */ if (!empty($classe[0]) and !empty($periode[0])) { for ($i = 0; $i < count($classe); $i++) { for ($j = 0; $j < count($periode); $j++) { $sql = "SELECT 1=1 FROM periodes WHERE id_classe='" . $classe[$i] . "' AND nom_periode LIKE '" . my_ereg_replace("[^.a-zA-Z0-9_-]+", "%", html_entity_decode($periode[$j])) . "' AND verouiller='N';"; $test_per = mysql_query($sql); if (mysql_num_rows($test_per) > 0) { if ($message_erreur != '') { $message_erreur .= '<br />'; } $message_erreur .= "La période {$periode[$j]} n'est pas close pour " . get_class_from_id($classe[$i]); } } } } if ($message_erreur == '') { $_SESSION['classe'] = $classe; $_SESSION['eleve'] = $eleve; $_SESSION['periode'] = $periode; $_SESSION['periode_ferme'] = $periode_ferme;
$sql = "DELETE FROM gc_affichages WHERE projet='{$projet}';"; $del = mysqli_query($GLOBALS["mysqli"], $sql); $sql = "DELETE FROM gc_ele_arriv_red WHERE projet='{$projet}';"; $del = mysqli_query($GLOBALS["mysqli"], $sql); $sql = "DELETE FROM gc_options_classes WHERE projet='{$projet}';"; $del = mysqli_query($GLOBALS["mysqli"], $sql); $msg = "Suppression du projet '{$projet}' effectuée.\n"; } else { $msg = "Les caractères du nom de projet '{$projet}' ne sont pas valides.\n"; } unset($projet); } elseif (isset($copie_projet)) { $projet_original = my_ereg_replace("[^A-Za-z0-9_]", "", $projet); $projet = $projet_new; if ($projet_original != "") { $projet = my_ereg_replace("[^A-Za-z0-9_]", "", $projet); if ($projet != "") { $sql = "SELECT 1=1 FROM gc_projets WHERE projet='{$projet}';"; $test = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test) == 0) { $sql = "INSERT INTO gc_projets SET projet='{$projet}', commentaire='';"; //echo "$sql<br />"; if ($insert = mysqli_query($GLOBALS["mysqli"], $sql)) { $msg = "Le projet {$projet} a été créé."; // On ne peut pas copier 'gc_noms_affichages' sur le même principe. // Les champs sont (id,nom,description) avec gc_noms_affichages.id=gc.affichage.id_aff $tab_table = array('gc_affichages', 'gc_divisions', 'gc_ele_arriv_red', 'gc_eleves_options', 'gc_options', 'gc_options_classes', 'gc_noms_affichages'); for ($j = 0; $j < count($tab_table); $j++) { $sql = "SELECT * FROM " . $tab_table[$j] . " WHERE projet='{$projet_original}';"; //echo "$sql<br />"; $res = mysqli_query($GLOBALS["mysqli"], $sql);
$multiclasses = false; } $nb_periode = $current_group['nb_periode']; $reg_eleves = array(); foreach ($current_group["periodes"] as $period) { if ($period["num_periode"] != "") { $reg_eleves[$period["num_periode"]] = $current_group["eleves"][$period["num_periode"]]["list"]; } } $tab_sig = array(); $sql = "SELECT * FROM j_signalement WHERE id_groupe='{$id_groupe}' AND nature='erreur_affect' ORDER BY periode, login;"; //echo "$sql<br />"; $res_sig = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_sig) > 0) { while ($lig_sig = mysqli_fetch_object($res_sig)) { $tab_sig[$lig_sig->periode][$lig_sig->login] = my_ereg_replace("_", " ", $lig_sig->valeur) . " selon " . civ_nom_prenom($lig_sig->declarant); } } $cpt = 0; $chaine_periode_ouverte = "<p>La période courante est"; foreach ($current_group['classes']['list'] as $current_id_classe) { if ($cpt > 0) { $chaine_periode_ouverte .= ", "; } $current_periode = cherche_periode_courante($current_id_classe); if ($current_periode == "") { $chaine_periode_ouverte .= " <span style='color:red' title=\"Période non trouvée ???\">???</span> (<em>" . get_nom_classe($current_id_classe) . "</em>)"; } else { $chaine_periode_ouverte .= " la <strong>période {$current_periode}</strong> (<em>" . get_nom_classe($current_id_classe) . "</em>)"; } $cpt++;
$firstname = $prenom_compose; } else { $firstname = $premier_prenom; } $temp1 = $firstname . "." . $affiche[0]; $temp1 = strtoupper($temp1); $temp1 = my_ereg_replace(" ", "", $temp1); $temp1 = my_ereg_replace("-", "_", $temp1); $temp1 = my_ereg_replace("'", "", $temp1); $temp1 = mb_substr($temp1, 0, 19); } elseif ($_POST['login_gen_type'] == "namef8") { $temp1 = mb_substr($affiche[0], 0, 7) . $affiche[1][0]; $temp1 = strtoupper($temp1); $temp1 = my_ereg_replace(" ", "", $temp1); $temp1 = my_ereg_replace("-", "_", $temp1); $temp1 = my_ereg_replace("'", "", $temp1); //$temp1 = mb_substr($temp1,0,8); } elseif ($_POST['login_gen_type'] == "lcs") { $nom = $affiche[0]; $nom = strtolower($nom); if (preg_match("/\\s/", $nom)) { $noms = preg_split("/\\s/", $nom); $nom1 = $noms[0]; if (mb_strlen($noms[0]) < 4) { $nom1 .= "_" . $noms[1]; $separator = " "; } else { $separator = "-"; } } else { $nom1 = $nom;
} //========================= $fp=fopen($csv_file['tmp_name'],"r"); // On lit une ligne pour passer la ligne d'entête: $ligne = fgets($fp, 4096); //========================= $nb_reg_no3=0; $nb_record3=0; for($k = 1; ($k < $nblignes+1); $k++){ //$ligne = dbase_get_record($fp,$k); if(!feof($fp)){ //========================= // MODIF: boireaus 20071024 //$ligne = fgets($fp, 4096); $ligne = my_ereg_replace('"','',fgets($fp, 4096)); //========================= if(trim($ligne)!=""){ $tabligne=explode(";",$ligne); for($i = 0; $i < count($tabchamps); $i++) { //$ind = $tabindice[$i]; $affiche[$i] = traitement_magic_quotes(corriger_caracteres(dbase_filter(trim($tabligne[$tabindice[$i]])))); //echo "\$affiche[$i]=traitement_magic_quotes(corriger_caracteres(dbase_filter(trim(\$tabligne[\$tabindice[$i]]))))=traitement_magic_quotes(corriger_caracteres(dbase_filter(trim(\$tabligne[$tabindice[$i]]))))=traitement_magic_quotes(corriger_caracteres(dbase_filter(trim(".$tabligne[$tabindice[$i]]."))));<br />\n"; } // Stockage des données: $personne[$affiche[0]]=array(); for($i=1;$i<count($tabchamps);$i++) { $personne[$affiche[0]]["$tabchamps[$i]"]=$affiche[$i]; //echo "\$personne[$affiche[0]][\"$tabchamps[$i]\"]=\$affiche[$i]=".$affiche[$i]."<br />\n"; }
// première option il existe une lettre qui fait seulement référence à cette id donc suppression $cpt_lettre_suivi = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT count(*) FROM ".$prefix_base."lettres_suivis WHERE partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi = ',".$id_absence_eleve.",'"),0); if( $cpt_lettre_suivi == 1 ) { $requete = "DELETE FROM ".$prefix_base."lettres_suivis WHERE partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi = ',".$id_absence_eleve.",'"; mysqli_query($GLOBALS["mysqli"], $requete) or die('Erreur SQL !'.$requete.'<br />'.mysqli_error($GLOBALS["mysqli"])); } // deuxième option il existe une lettre qui fait référence à cette id mais à d'autre aussi donc modification $cpt_lettre_suivi = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT count(*) FROM ".$prefix_base."lettres_suivis WHERE partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi LIKE '%,".$id_absence_eleve.",%'"),0); if( $cpt_lettre_suivi == 1 ) { $requete = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM ".$prefix_base."lettres_suivis WHERE partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi LIKE '%,".$id_absence_eleve.",%'"); $donnee = mysqli_fetch_array($requete); $remplace_sa = ','.$id_absence_eleve.','; $modifier_par = my_ereg_replace($remplace_sa,',',$donnee['partdenum_lettre_suivi']); $requete = "UPDATE ".$prefix_base."lettres_suivis SET partdenum_lettre_suivi = '".$modifier_par."' WHERE partde_lettre_suivi = 'absences_eleves' AND type_lettre_suivi = '6' AND partdenum_lettre_suivi LIKE '%,".$id_absence_eleve.",%'"; mysqli_query($GLOBALS["mysqli"], $requete) or die('Erreur SQL !'.$requete.'<br />'.mysqli_error($GLOBALS["mysqli"])); } if($fiche === 'oui') { header("Location:gestion_absences.php?type=A&select_fiche_eleve=$login_eleve[0]&aff_fiche=abseleve#abseleve"); } else { header("Location:gestion_absences.php?type=A"); } } } else {
//echo "<input type='hidden' name='upload_scan' value='yes' />\n"; $correctif_vertical = 1; if (isset($_SESSION['trombi_decoupe_correctif_vertical'])) { $correctif_vertical = $_SESSION['trombi_decoupe_correctif_vertical']; } echo "<p> Il arrive qu'il y ait un décalage vertical s'amplifiant ligne après ligne sur les découpes.<br />Par défaut, on ne décale pas : \n<input type='text' id='correctif_vertical' name='correctif_vertical' value='{$correctif_vertical}' size='3' onkeydown=\"clavier_3(this.id,event,0.1,1.5,0.01);\" /><br />Si vos découpes sont un peu décalées vers le bas (<i>il manque le haut des cranes</i>), essayez de corriger avec 0.97<br />Aucun correctif n'est proposé pour la largeur.<br />Veillez à ce que vos images scannées aient les bords taillés à la largeur de la page.</p>\n"; echo "<p><input type='submit' value='Uploader' /></p>\n"; echo "<input type='hidden' name='fin_form_upload_scan' value='yes' />\n"; echo "</fieldset>\n"; echo "</form>\n"; echo "<br />\n"; echo "<p><em>Notes</em> :</p>\n"; echo "<ul>\n"; echo "<li><p>Les images uploadées doivent être de type JPEG.</p></li>\n"; $max_file_uploads = ini_get('max_file_uploads'); if ($max_file_uploads != "" && mb_strlen(my_ereg_replace("[^0-9]", "", $max_file_uploads)) == mb_strlen($max_file_uploads) && $max_file_uploads > 0) { echo "<li><p>L'upload des photos est limité à <strong>{$max_file_uploads} fichier(s)</strong> simultanément.</p></li>\n"; } echo "<li>\n"; echo "<p>Les paramètres suivants peuvent influer sur le nombre de photos que vous pourrez uploader d'un coup :<br />\n"; $post_max_size = ini_get('post_max_size'); $upload_max_filesize = ini_get('upload_max_filesize'); echo " <span style='color:blue'>\$post_max_size={$post_max_size}</span><br />\n"; echo " <span style='color:blue'>\$upload_max_filesize={$upload_max_filesize}</span><br />\n"; echo "</p>\n"; echo "<p>Si après avoir cliqué sur Uploader, vous revenez à la page d'accueil de découpe, c'est probablement que vous avez mis trop de photos ou pour un volume trop grand d'un coup.</p>"; echo "</li>\n"; echo "\n\t<li>\n\t\t<p>Deux conseils pour les opérations de scan :<br />\n\t\tVeiller à scanner toutes les pages de la même façon, bien alignées (<em>pas en biais</em>).<br />\n\t\tScanner sans rabattre le couvercle pour que les bords de la page ressortent sur fond noir.<br />\n\t\tVous découperez ensuite les images scannées pour faire disparaitre le bord noir.<br />\n\t\tDe cette façon, les paramètres par défaut sont en principe corrects pour les découpes.</p>\n\t</li>"; echo "</ul>\n"; } } elseif ($mode == 'suppr_grille') {
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, ''); } } } } }
if ( $action_affiche === 'statusgepi' ) { $requete_qui = 'SELECT statut FROM '.$prefix_base.'utilisateurs u WHERE u.statut = "'.$statusgepi.'" AND etat="actif";'; } $execute_qui = mysqli_query($GLOBALS["mysqli"], $requete_qui) or die('Erreur SQL !'.$requete_qui.'<br />'.mysqli_error($GLOBALS["mysqli"])); $donnees_qui = mysqli_fetch_array($execute_qui) or die('Erreur SQL !'.$execute_qui.'<br />'.mysqli_error($GLOBALS["mysqli"])); if ( $action_affiche === 'classe' ) { $entete = "Classe : ".$donnees_qui['nom_complet']." (".$donnees_qui['classe'].")";} if ( $action_affiche === 'groupe' ) { //$entete = "Groupe : ".$donnees_qui['name']; $current_group=get_group($groupe); $entete = "Groupe : ".$donnees_qui['name']." (".$current_group['classlist_string'].")"; } if ( $action_affiche === 'aid' ) {$entete = "AID : ".$donnees_qui['nom'];} if ( $action_affiche === 'equipepeda' ) { $entete = "Équipe pédagogique : ".$donnees_qui['nom_complet']." (".$donnees_qui['classe'].")"; } if ( $action_affiche === 'discipline' ) { $entete = "Discipline : ".$donnees_qui['nom_complet']." (".$donnees_qui['matiere'].")"; } if ( $action_affiche === 'statusgepi' ) { $entete = "Statut : ".my_ereg_replace("scolarite","scolarité",$statusgepi); } // choix du répertoire ou chercher les photos entre professeur ou élève if ( $action_affiche === 'classe' ) { $repertoire = 'eleves'; } if ( $action_affiche === 'groupe' ) { $repertoire = 'eleves'; } if ( $action_affiche === 'aid' ) { $repertoire = 'eleves'; } if ( $action_affiche === 'equipepeda' ) { $repertoire = 'personnels'; } if ( $action_affiche === 'discipline' ) { $repertoire = 'personnels'; } if ( $action_affiche === 'statusgepi' ) { $repertoire = 'personnels'; } //je recherche les personnes concernées pour la sélection effectuée // élève d'une classe if ( $action_affiche === 'classe' ) { $requete_trombi = "SELECT e.login, e.nom, e.prenom, e.elenoet, jec.login, jec.id_classe, jec.periode, c.classe, c.id, c.nom_complet FROM ".$prefix_base."eleves e, ".$prefix_base."j_eleves_classes jec, ".$prefix_base."classes c
/** * Clean cache */ function cleanCache() { if (ARTICHOW_CACHE) { $glob = glob(ARTICHOW . "/cache/*-time"); foreach ($glob as $file) { $type = awGraph::cleanGraphCache($file); if ($type === NULL) { $name = my_ereg_replace(".*/(.*)\\-time", "\\1", $file); awGraph::deleteFromCache($name); } } } }
function ajout_doc($doc_file, $id_ct, $doc_name, $cpt_doc) { global $max_size, $total_max_size, $edit_devoir, $multisite; /* Vérification du type de fichier */ //if (my_ereg("\.([^.]+)$", $doc_file['name'][$cpt_doc], $match)) { if (function_exists("mb_ereg") && mb_ereg("\\.([^.]+)\$", $doc_file['name'][$cpt_doc], $match) || function_exists("ereg") && ereg("\\.([^.]+)\$", $doc_file['name'][$cpt_doc], $match)) { $ext = corriger_caracteres(my_strtolower($match[1])); $ext = corriger_extension($ext); } else { $ext = ''; } $query = "SELECT id_type FROM ct_types_documents WHERE extension='{$ext}' AND upload='oui'"; $result = sql_query($query); if ($row = @sql_row($result, 0)) { $id_type = $row[0]; } else { return "Erreur : Ce type de fichier n'est pas autorisé en téléchargement.<br />\nSi vous trouvez cela regrettable, contactez l'administrateur.<br />\nIl pourra modifier ce paramétrage dans<br />\n*Gestion des modules/Cahiers de textes/Types de fichiers autorisés en téléchargement*."; die; } /* Vérification de la taille du fichier */ $sql = "select id_groupe from ct_entry where id_ct='{$id_ct}'"; $id_groupe = sql_query1($sql); $max_size_ko = $max_size / 1024; $taille = $doc_file['size'][$cpt_doc]; if ($taille > $max_size) { return "Téléchargement impossible : taille maximale autorisée : " . $max_size_ko . " Ko"; die; } if ($taille == 0) { return "Le fichier sélectionné semble vide : transfert impossible."; die; } $query = "SELECT DISTINCT sum(taille) somme FROM ct_documents d, ct_entry e WHERE (e.id_groupe='" . $id_groupe . "' and e.id_ct = d.id_ct)"; $total = sql_query1($query); if ($total + $taille > $total_max_size) { return "Téléchargement impossible : espace disque disponible (" . ($total_max_size - $total) / 1024 . " Ko) insuffisant."; die; } /* Recopier le fichier */ $dest = '../documents/'; $dossier = ''; $multi = isset($multisite) && $multisite == 'y' ? $_COOKIE['RNE'] . '/' : NULL; if (isset($multisite) && $multisite == 'y' && is_dir('../documents/' . $multi) === false) { @mkdir('../documents/' . $multi); $dest .= $multi; } elseif (isset($multisite) && $multisite == 'y') { $dest .= $multi; } if (isset($edit_devoir)) { $dossier = "cl_dev" . $_POST['id_groupe']; } else { $dossier = "cl" . $_POST['id_groupe']; } if (creer_repertoire($dest, $dossier)) { $dest .= $dossier . '/'; } else { return "Problème d'écriture sur le répertoire. Veuillez signaler ce problème à l'administrateur du site"; die; } $nom_sans_ext = mb_substr(basename($doc_file['name'][$cpt_doc]), 0, mb_strlen(basename($doc_file['name'][$cpt_doc])) - (mb_strlen($ext) + 1)); $nom_sans_ext = my_ereg_replace("[^.a-zA-Z0-9_=-]+", "_", $nom_sans_ext); if (strstr($nom_sans_ext, "..")) { return "Problème de transfert : le fichier n'a pas pu être transféré sur le répertoire. Veuillez signaler ce problème à l'administrateur du site"; die; } $n = 0; while (file_exists($newFile = $dest . $nom_sans_ext . ($n++ ? '-' . $n : '') . '.' . $ext)) { } $dest_path = $newFile; if (!deplacer_fichier_upload($doc_file['tmp_name'][$cpt_doc], $dest_path)) { return "Problème de transfert : le fichier n'a pas pu être transféré sur le répertoire. Veuillez signaler ce problème à l'administrateur du site"; die; } if ($doc_name[$cpt_doc] == '') { $doc_name[$cpt_doc] = basename($newFile); } $nouveau = false; if (!isset($id_document)) { if (isset($edit_devoir)) { $query = "INSERT INTO ct_devoirs_documents SET taille='{$taille}', emplacement='{$dest_path}', id_ct_devoir='{$id_ct}', titre='" . corriger_caracteres($doc_name[$cpt_doc]) . "'"; } else { $query = "INSERT INTO ct_documents SET taille='{$taille}', emplacement='{$dest_path}', id_ct='{$id_ct}', titre='" . corriger_caracteres($doc_name[$cpt_doc]) . "'"; } sql_query($query); $id_document = is_null($___mysqli_res = mysqli_insert_id($GLOBALS["mysqli"])) ? false : $___mysqli_res; $nouveau = true; } else { if (isset($edit_devoir)) { $query = "UPDATE ct_devoirs_documents SET taille='{$taille}', emplacement='{$dest_path}', id_ct_devoir='{$id_ct}', titre='{$titre}' WHERE id_document={$id_document}"; } else { $query = "UPDATE ct_documents SET taille='{$taille}', emplacement='{$dest_path}', id_ct='{$id_ct}', titre='{$titre}' WHERE id_document={$id_document}"; } sql_query($query); } return "Téléchargement réussi !"; }
} //=================================================== // On arrive ici avec un $_POST... donc ce n'est pas évalué. if (isset($_GET['experimental'])) { $largeur_photo = 100; $marge = 4; if (isset($_GET['largeur_photo']) && $_GET['largeur_photo'] != "") { $test = my_ereg_replace("[^0-9]", "", $_GET['largeur_photo']); if ($test != "") { if ($test > 0) { $largeur_photo = $test; } } } if (isset($_GET['marge']) && $_GET['marge'] != "") { $test = my_ereg_replace("[^0-9]", "", $_GET['marge']); if ($test != "") { if ($test > 0) { $marge = $test; } } } $largeur_div = $largeur_photo + 2 * $marge; $i = 1; while ($i < $total) { //echo "<tr align='center' valign='top'>\n"; //for($j=0;$j<3;$j++){ // echo "<td>\n"; echo "<div style='float:left; width: " . $largeur_div . "px; margin: " . $marge . "px; padding: " . $marge . "px; border: 1px solid black;'>\n"; if ($i < $total) { $nom_es = mb_strtoupper($nom_trombinoscope[$i]);
$sql = "SELECT 1=1 FROM matieres WHERE matiere='{$matiere_nouvel_enseignement}';"; $verif = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($verif) == 0) { $msg .= "<br />La matière {$matiere_nouvel_enseignement} n'existe pas."; } else { $coef_nouvel_enseignement = isset($_POST['coef_nouvel_enseignement']) ? $_POST['coef_nouvel_enseignement'] : 0; $coef_nouvel_enseignement = my_ereg_replace("[^0-9]", "", $_POST['coef_nouvel_enseignement']); $nouvel_enseignement_visibilite = isset($_POST['nouvel_enseignement_visibilite']) ? $_POST['nouvel_enseignement_visibilite'] : array(); $nouvel_enseignement_non_visible = array(); for ($loop = 0; $loop < count($tab_domaines); $loop++) { if (!in_array($tab_domaines[$loop], $nouvel_enseignement_visibilite)) { $nouvel_enseignement_non_visible[] = $tab_domaines[$loop]; } } $professeur_nouvel_enseignement = isset($_POST['professeur_nouvel_enseignement']) ? $_POST['professeur_nouvel_enseignement'] : NULL; $professeur_nouvel_enseignement = my_ereg_replace("[^A-Za-z0-9._-]", "", $professeur_nouvel_enseignement); if ($professeur_nouvel_enseignement != "") { $sql = "SELECT 1=1 FROM utilisateurs u WHERE u.login='******';"; $verif = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($verif) == 0) { $professeur_nouvel_enseignement = ""; } $sql = "SELECT 1=1 FROM j_professeurs_matieres jpm WHERE jpm.id_professeur='{$professeur_nouvel_enseignement}' AND jpm.id_matiere='{$matiere_nouvel_enseignement}'"; $verif = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($verif) == 0) { // Si JavaScript est inactif, on peut proposer un prof qui n'est pas professeur dans la matière. // Associons le alors à la matière. $sql = "SELECT ordre_matieres FROM j_professeurs_matieres jpm WHERE jpm.id_professeur='{$professeur_nouvel_enseignement}' ORDER BY ordre_matieres DESC LIMIT 1;"; $res_ordre_matieres = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_ordre_matieres) == 0) { $tmp_ordre_matieres = 1;
//$tabmatieres[$j]['fb_col'][1] //$SUR_TOTAL+=$tabmatieres[$j][-2]*20; //echo "<tr><td>".$tabmatieres[$j]['fb_col'][1]."</td></tr>"; //if(ctype_digit($tabmatieres[$j]['fb_col'][1])){$SUR_TOTAL[1]+=$tabmatieres[$j]['fb_col'][1];} //if(ctype_digit($tabmatieres[$j]['fb_col'][2])){$SUR_TOTAL[2]+=$tabmatieres[$j]['fb_col'][2];} // ************************************ // A REVOIR // PROBLEME AVEC CES TOTAUX: SI UN ELEVE EST AB, DI ou NN, IL NE FAUDRAIT PAS AUGMENTER???... if((mb_strlen(my_ereg_replace("[0-9]","",$tabmatieres[$j]['fb_col'][1]))==0)&&($tabmatieres[$j][-1]!='PTSUP')){ $SUR_TOTAL[1]+=$tabmatieres[$j]['fb_col'][1]; } if((mb_strlen(my_ereg_replace("[0-9]","",$tabmatieres[$j]['fb_col'][2]))==0)&&($tabmatieres[$j][-1]!='PTSUP')){ $SUR_TOTAL[2]+=$tabmatieres[$j]['fb_col'][2]; } // ************************************ //echo "<tr><td>$SUR_TOTAL[1]</td></tr>"; // Initialisation $lignes_opt_facultative_alternative=""; echo "<tr>\n";
//echo "<input type='hidden' name='id_grille' value='$id_grille' />\n"; //echo "<input type='hidden' name='upload_scan' value='yes' />\n"; echo "<p> Il arrive qu'il y ait un décalage vertical s'amplifiant ligne après ligne sur les découpes.<br />Par défaut, on ne décale pas : <input type='text' id='correctif_vertical' name='correctif_vertical' value='1' size='3' onkeydown=\"clavier_3(this.id,event,0.1,1.5,0.01);\" /><br />Si vos découpes sont un peu décalées vers le bas (<i>il manque le haut des cranes</i>), essayez de corriger avec 0.97<br />Aucun correctif n'est proposé pour la largeur.<br />Veillez à ce que vos images scannées aient les bords taillés à la largeur de la page.</p>\n"; echo "<p><input type='submit' value='Uploader' /></p>\n"; echo "<input type='hidden' name='fin_form_upload_scan' value='yes' />\n"; echo "</fieldset>\n"; echo "</form>\n"; echo "<br />\n"; echo "<p><em>Notes</em> :</p>\n"; echo "<ul>\n"; echo "<li><p>Les images uploadées doivent être de type JPEG.</p></li>\n"; $max_file_uploads=ini_get('max_file_uploads'); if(($max_file_uploads!="")&&(mb_strlen(my_ereg_replace("[^0-9]","",$max_file_uploads))==mb_strlen($max_file_uploads))&&($max_file_uploads>0)) { echo "<li><p>L'upload des photos est limité à <strong>$max_file_uploads fichier(s)</strong> simultanément.</p></li>\n"; } echo "<li><p>Les images uploadées doivent être de type JPEG.</p></li>\n"; echo "<li>\n"; echo "<p>Les paramètres suivants peuvent influer sur le nombre de photos que vous pourrez uploader d'un coup :<br />\n"; $post_max_size=ini_get('post_max_size'); $upload_max_filesize=ini_get('upload_max_filesize'); echo " <span style='color:blue'>\$post_max_size=$post_max_size</span><br />\n"; echo " <span style='color:blue'>\$upload_max_filesize=$upload_max_filesize</span><br />\n"; echo "</p>\n"; echo "</li>\n"; echo "</ul>\n"; }
if ($desinscription_classe) { 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 "</div>\n"; } echo "</div>\n"; } //========================================================= if(isset($id_aff)) { echo "<p class='bold'>Liste de requêtes pour l'affichage n°$id_aff</p>\n"; } //================================ // Formulaire d'ajout de requêtes: echo "<form method=\"post\" action=\"".$_SERVER['PHP_SELF']."\">\n"; if((isset($_GET['editer_requete']))&&(isset($_GET['id_req'])&&($_GET['id_req']!="")&&(mb_strlen(my_ereg_replace("[0-9]","",$_GET['id_req']))==0))) { $id_req=$_GET['id_req']; echo "<p class='bold'>Modification de la requête n°$id_req"; $tab_ed_req=array(); $sql="SELECT * FROM gc_affichages WHERE projet='$projet' AND id_aff='$id_aff' AND id_req='$id_req';"; //echo "$sql<br />\n"; $res_edit_req=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_edit_req)>0) { $tmp_tab_nom_requete=array(); while($lig_edit_req=mysqli_fetch_object($res_edit_req)) { $tab_ed_req[$lig_edit_req->type][]=$lig_edit_req->valeur; //echo "\$tab_ed_req[$lig_edit_req->type][]=$lig_edit_req->valeur<br />"; if($lig_edit_req->nom_requete!="") { if(!in_array($lig_edit_req->nom_requete, $tmp_tab_nom_requete)) {
public function get_user_profile($_login) { $_login = my_ereg_replace("[^-@._[:space:][:alnum:]]", "", $_login); // securite $search_filter = "(" . $this->champ_login . "=" . $_login . ")"; $sr = ldap_search($this->ds, 'ou=utilisateurs,' . $this->get_base_branch(), $search_filter); $user = array(); $user = ldap_get_entries($this->ds, $sr); if (array_key_exists(0, $user)) { // Les infos de base $infos = array(); $infos['raw'] = $user[0]; $infos['dn'] = $user[0]['dn']; $infos['nom'] = $user[0][$this->champ_nom][0]; $infos['prenom'] = $user[0][$this->champ_prenom][0]; $infos['civilite'] = $user[0]['personaltitle'][0]; $infos['email'] = $user[0][$this->champ_email][0]; switch ($user[0]['entpersonprofils'][0]) { case 'enseignant': $infos['statut'] = 'professeur'; break; default: $infos['statut'] = $user[0]['entpersonprofils'][0]; break; } } return $infos; }
header("Location: ../utilisateurs/mon_compte.php?change_mdp=yes"); die(); } else if ($resultat_session == '0') { header("Location: ../logout.php?auto=1"); die(); } if (!checkAccess()) { header("Location: ../logout.php?auto=1"); die(); } $mdp_INE=isset($_POST["mdp_INE"]) ? $_POST["mdp_INE"] : NULL; $ine_password=isset($_POST["ine_password"]) ? $_POST["ine_password"] : NULL; $ine_password=my_ereg_replace("[^A-Za-z0-9]","",$ine_password); if (isset($_POST['valid']) and ($_POST['valid'] == "yes")) { check_token(); $user_statut = sql_query1("SELECT statut FROM utilisateurs WHERE login='******'"); if (($user_statut == 'professeur') or ($user_statut == 'cpe') or ($user_statut == 'responsable')) { // Mot de passe comportant des lettres et des chiffres $flag = 0; } else { // Mot de passe comportant des lettres et des chiffres et au moins un caractère spécial $flag = 1; }