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;
}
Example #2
0
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"]));

			}

		}
}
Example #3
0
     }
 }
 $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("&", "&amp;", $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 {
Example #4
0


//=======================
//=== 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 *****************
Example #5
0
     $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}";
Example #7
0
 // 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("&#039;", "'", 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}'");
Example #8
0
    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 = '';
Example #9
0
			<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&deg; du d&eacute;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>
Example #10
0
								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; ?>&amp;id_alert_groupe=<?php echo $id_alert_groupe; ?>&amp;action=modifier_alert_type&amp;id_alert_type=<?php echo $donnee_alert_type['id_alert_type']; ?>&amp;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&amp;action_page=<?php echo $action_page; ?>&amp;action=<?php echo $action; ?>&amp;id_alert_groupe=<?php echo $id_alert_groupe; ?>&amp;id_alert_type=<?php echo $donnee_alert_type['id_alert_type']; ?>&amp;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"); ?>
Example #11
0
 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;
     }
 }
Example #12
0
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;
Example #13
0
         $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++;
Example #15
0
         $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;
Example #16
0
					}

					//=========================
					$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";
								}
Example #17
0
			// 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 {
Example #18
0
        //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&nbsp;: \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>&nbsp;:</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&nbsp;:<br />\n";
        $post_max_size = ini_get('post_max_size');
        $upload_max_filesize = ini_get('upload_max_filesize');
        echo "&nbsp;&nbsp;&nbsp;<span style='color:blue'>\$post_max_size={$post_max_size}</span><br />\n";
        echo "&nbsp;&nbsp;&nbsp;<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&nbsp;:<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') {
Example #19
0
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, '');
                }
            }
        }
    }
}
Example #20
0
	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
Example #21
0
 /**
  * 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);
             }
         }
     }
 }
Example #22
0
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 !";
}
Example #23
0
 }
 //===================================================
 // 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]);
Example #24
0
 $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;
Example #25
0
				//$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";
Example #26
0
		//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&nbsp;: 
<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>&nbsp;:</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&nbsp;:<br />\n";
		$post_max_size=ini_get('post_max_size');
		$upload_max_filesize=ini_get('upload_max_filesize');
		echo "&nbsp;&nbsp;&nbsp;<span style='color:blue'>\$post_max_size=$post_max_size</span><br />\n";
		echo "&nbsp;&nbsp;&nbsp;<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 />";
                }
            }
        }
    }
}
Example #28
0
			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)) {
Example #29
0
 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;
 }
Example #30
0
	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;
	}