示例#1
0
      echo'<td class="hc">'.$td_date_consult_parent.'</td>';
      echo'</tr>';
    }
  }
  exit();
}

// ////////////////////////////////////////////////////////////////////////////////////////////////////
// IMPRIMER ETAPE 2/4 - Le PDF complet est généré ; on archive individuellement les bilans anonymes (qui vont y rester une année scolaire)
// ////////////////////////////////////////////////////////////////////////////////////////////////////

if( ($ACTION=='imprimer') && ($etape==2) )
{
  Erreur500::prevention_et_gestion_erreurs_fatales( FALSE /*memory*/ , TRUE /*time*/ );
  // Récupérer les bilans déjà existants pour savoir s'il faut faire un INSERT ou un UPDATE (sinon, un REPLACE efface les dates de consultation)
  $DB_TAB = DB_STRUCTURE_OFFICIEL::DB_lister_bilan_officiel_fichiers( $BILAN_TYPE , $periode_id , array_keys($_SESSION['tmp']['tab_pages_decoupe_pdf']) );
  $tab_notif = array();
  foreach($_SESSION['tmp']['tab_pages_decoupe_pdf'] as $eleve_id => $tab_tirages)
  {
    list( $eleve_identite , $page_plage ) = $tab_tirages[0];
    if(!isset($DB_TAB[$eleve_id]))
    {
      DB_STRUCTURE_OFFICIEL::DB_ajouter_bilan_officiel_fichier( $eleve_id , $BILAN_TYPE , $periode_id );
      $tab_notif[$eleve_id] = $eleve_id;
    }
    else
    {
      DB_STRUCTURE_OFFICIEL::DB_modifier_bilan_officiel_fichier_date( $eleve_id , $BILAN_TYPE , $periode_id , 'generation' );
    }
    $fichier_extraction_chemin = CHEMIN_DOSSIER_OFFICIEL.$_SESSION['BASE'].DS.fabriquer_nom_fichier_bilan_officiel( $eleve_id , $BILAN_TYPE , $periode_id );
    unset($_SESSION['tmp']['tab_pages_decoupe_pdf'][$eleve_id][0]);
	if($_SESSION['USER_PROFIL']=='eleve')
	{
		$tab_eleve_id[] = $_SESSION['USER_ID'];
		$tab_tbody[$_SESSION['USER_ID']][0] = '';
	}
	else
	{
		foreach($_SESSION['OPT_PARENT_ENFANTS'] as $tab)
		{
			$tab_eleve_id[] = $tab['valeur'];
			$tab_tbody[$tab['valeur']][0] = '<th>'.html($tab['texte']).'</th>';
		}
	}

	// lister les bilans officiels archivés de l'année courante
	$DB_TAB = DB_STRUCTURE_OFFICIEL::DB_lister_bilan_officiel_fichiers( '' /*BILAN_TYPE*/ , 0 /*periode_id*/ , $tab_eleve_id );
	$_SESSION['tmp_droit_voir_archive'] = array(); // marqueur mis en session pour vérifier que c'est bien cet utilisateur qui veut voir (et à donc le droit de voir) le fichier, car il n'y a pas d'autre vérification de droit ensuite
	foreach($DB_TAB as $DB_ROW)
	{
		if(strpos($_SESSION['DROIT_OFFICIEL_'.$tab_types[$DB_ROW['officiel_type']]['droit'].'_VOIR_ARCHIVE'],$_SESSION['USER_PROFIL'])!==FALSE)
		{
			if(is_file(CHEMIN_DOSSIER_OFFICIEL.$_SESSION['BASE'].DS.fabriquer_nom_fichier_bilan_officiel( $DB_ROW['user_id'] , $DB_ROW['officiel_type'] , $DB_ROW['periode_id'] )))
			{
				$_SESSION['tmp_droit_voir_archive'][$DB_ROW['user_id'].$DB_ROW['officiel_type']] = TRUE; // marqueur mis en session pour vérifier que c'est bien cet utilisateur qui veut voir (et à donc le droit de voir) le fichier, car il n'y a pas d'autre vérification de droit ensuite
				$tab_tbody[$DB_ROW['user_id']][$DB_ROW['periode_id']][] = '<a href="releve_pdf.php?fichier='.$DB_ROW['user_id'].'_'.$DB_ROW['officiel_type'].'_'.$DB_ROW['periode_id'].'" class="lien_ext">'.$tab_types[$DB_ROW['officiel_type']]['titre'].'</a>' ;
			}
		}
	}

	// Assemblage et affichage du tableau.
示例#3
0
        // car droit commun pour tous les paliers
    }
    if ($droit_voir_archives_pdf) {
        // identifiants élèves concernés
        $tab_eleve_id = array();
        if ($_SESSION['USER_PROFIL_TYPE'] == 'eleve') {
            $tab_eleve_id[] = $_SESSION['USER_ID'];
        } else {
            foreach ($_SESSION['OPT_PARENT_ENFANTS'] as $tab) {
                $tab_eleve_id[] = $tab['valeur'];
            }
        }
        $tab_eleves = $_SESSION['USER_PROFIL_TYPE'] == 'eleve' ? array(0 => array('valeur' => $_SESSION['USER_ID'])) : $_SESSION['OPT_PARENT_ENFANTS'];
        $nb_eleves = count($tab_eleve_id);
        // lister les bilans officiels archivés de l'année courante
        $DB_TAB = DB_STRUCTURE_OFFICIEL::DB_lister_bilan_officiel_fichiers('', 0, $tab_eleve_id, TRUE, $_SESSION['USER_PROFIL_TYPE']);
        foreach ($DB_TAB as $DB_ROW) {
            if (test_user_droit_specifique($_SESSION['DROIT_' . $tab_types[$DB_ROW['officiel_type']]['droit'] . '_VOIR_ARCHIVE'])) {
                if (is_file(CHEMIN_DOSSIER_OFFICIEL . $_SESSION['BASE'] . DS . fabriquer_nom_fichier_bilan_officiel($DB_ROW['user_id'], $DB_ROW['officiel_type'], $DB_ROW['periode_id']))) {
                    $text_eleve_nom = $nb_eleves > 1 ? html($_SESSION['OPT_PARENT_ENFANTS'][array_search($DB_ROW['user_id'], $tab_eleve_id)]['texte']) . ' || ' : '';
                    $tab_accueil['officiel']['nombre'] += 1;
                    $tab_accueil['officiel']['contenu'] .= '<li>' . $text_eleve_nom . '<a href="./index.php?page=officiel_voir_archive">' . $tab_types[$DB_ROW['officiel_type']]['titre'] . ' || ' . html($DB_ROW['periode_nom']) . '</a></li>';
                }
            }
        }
        if ($tab_accueil['officiel']['nombre']) {
            $tab_accueil['officiel']['contenu'] = '<div class="b"><TG> ' . $tab_accueil['officiel']['masque'] . '</div>' . '<ul class="puce p">' . $tab_accueil['officiel']['contenu'] . '</ul>';
        }
    }
}
// ////////////////////////////////////////////////////////////////////////////////////////////////////
			$liste_eleve_id = implode(',',$tab_eleve_id);
		}
		else
		{
			$tab_eleve_id_tmp = array();
			$DB_TAB = DB_STRUCTURE_COMMUN::DB_lister_users_regroupement( 'eleve' , 1 /*statut*/ , 'classe' , $classe_id );
			foreach($DB_TAB as $DB_ROW)
			{
				$tab_eleve_id_tmp[] = $DB_ROW['user_id'];
			}
			$liste_eleve_id = implode(',',$tab_eleve_id_tmp);
		}
		calculer_et_enregistrer_moyennes_eleves_bulletin( $periode_id , $classe_id , $liste_eleve_id , '' /*liste_matiere_id*/ , $_SESSION['OFFICIEL']['BULLETIN_MOYENNE_CLASSE'] , $_SESSION['OFFICIEL']['BULLETIN_MOYENNE_GENERALE'] );
	}
	// lister les bilans officiels archivés de l'année courante, affichage du retour
	$DB_TAB = DB_STRUCTURE_OFFICIEL::DB_lister_bilan_officiel_fichiers( $BILAN_TYPE , $periode_id , $tab_eleve_id );
	$_SESSION['tmp_droit_voir_archive'] = array(); // marqueur mis en session pour vérifier que c'est bien cet utilisateur qui veut voir (et à donc le droit de voir) le fichier, car il n'y a pas d'autre vérification de droit ensuite
	foreach($tab_eleve_id as $eleve_id)
	{
		if($objet=='imprimer')
		{
			$checked    = (isset($DB_TAB[$eleve_id])) ? '' : ' checked' ;
			$archive_td = (isset($DB_TAB[$eleve_id])) ? 'Oui, le '.convert_date_mysql_to_french($DB_TAB[$eleve_id][0]['fichier_date']) : 'Non' ;
			echo'<tr id="id_'.$eleve_id.'">';
			echo'<td class="nu"><input type="checkbox" name="f_ids" value="'.$eleve_id.'"'.$checked.' /></td>';
			echo'<td class="label">'.$tab_eleve_td[$eleve_id].'</td>';
			echo'<td class="label">'.$archive_td.'</td>';
			echo'</tr>';
		}
		elseif($objet=='voir_archive')
		{
示例#5
0
 $tab_eleve_id = array();
 if($_SESSION['USER_PROFIL_TYPE']=='eleve')
 {
   $tab_eleve_id[] = $_SESSION['USER_ID'];
 }
 else
 {
   foreach($_SESSION['OPT_PARENT_ENFANTS'] as $tab)
   {
     $tab_eleve_id[] = $tab['valeur'];
   }
 }
 $tab_eleves = ($_SESSION['USER_PROFIL_TYPE']=='eleve') ? array(0=>array('valeur'=>$_SESSION['USER_ID'])) : $_SESSION['OPT_PARENT_ENFANTS'] ;
 $nb_eleves = count($tab_eleve_id);
 // lister les bilans officiels archivés de l'année courante
 $DB_TAB = DB_STRUCTURE_OFFICIEL::DB_lister_bilan_officiel_fichiers( '' /*BILAN_TYPE*/ , 0 /*periode_id*/ , $tab_eleve_id , TRUE /*with_periode_nom*/ , $_SESSION['USER_PROFIL_TYPE'] /*only_profil_non_vu*/ );
 foreach($DB_TAB as $DB_ROW)
 {
   if(test_user_droit_specifique($_SESSION['DROIT_'.$tab_types[$DB_ROW['officiel_type']]['droit'].'_VOIR_ARCHIVE']))
   {
     if(is_file(CHEMIN_DOSSIER_OFFICIEL.$_SESSION['BASE'].DS.fabriquer_nom_fichier_bilan_officiel( $DB_ROW['user_id'] , $DB_ROW['officiel_type'] , $DB_ROW['periode_id'] )))
     {
       $text_eleve_nom  = ($nb_eleves>1) ? html($_SESSION['OPT_PARENT_ENFANTS'][array_search($DB_ROW['user_id'],$tab_eleve_id)]['texte']).' || ' : '' ;
       $tab_accueil['officiel']['nombre'] += 1;
       $tab_accueil['officiel']['contenu'].= '<li>'.$text_eleve_nom.'<a href="./index.php?page=officiel_voir_archive">'.$tab_types[$DB_ROW['officiel_type']]['titre'].' || '.html($DB_ROW['periode_nom']).'</a></li>';
     }
   }
 }
 if($tab_accueil['officiel']['nombre'])
 {
   $tab_accueil['officiel']['contenu'] = '<div class="b"><TG> '.$tab_accueil['officiel']['masque'].'</div>'.'<ul class="puce p">'.$tab_accueil['officiel']['contenu'].'</ul>';
示例#6
0
    $tab_tbody[$_SESSION['USER_ID']][0] = '';
} else {
    if (!$_SESSION['NB_ENFANTS']) {
        echo '<p class="danger">' . $_SESSION['OPT_PARENT_ENFANTS'] . '</p>' . NL;
        return;
        // Ne pas exécuter la suite de ce fichier inclus.
    }
    foreach ($_SESSION['OPT_PARENT_ENFANTS'] as $tab) {
        $tab_eleve_id[] = $tab['valeur'];
        $tab_tbody[$tab['valeur']][0] = '<th>' . html($tab['texte']) . '</th>';
    }
}
// marqueur mis en session pour vérifier que c'est bien cet utilisateur qui veut voir (et à donc le droit de voir) le fichier, car il n'y a pas d'autre vérification de droit ensuite
$_SESSION['tmp_droit_voir_archive'] = array();
// lister les bilans officiels archivés de l'année courante
$DB_TAB = DB_STRUCTURE_OFFICIEL::DB_lister_bilan_officiel_fichiers('', 0, $tab_eleve_id);
foreach ($DB_TAB as $DB_ROW) {
    if (test_user_droit_specifique($_SESSION['DROIT_' . $tab_types[$DB_ROW['officiel_type']]['droit'] . '_VOIR_ARCHIVE'])) {
        if (is_file(CHEMIN_DOSSIER_OFFICIEL . $_SESSION['BASE'] . DS . fabriquer_nom_fichier_bilan_officiel($DB_ROW['user_id'], $DB_ROW['officiel_type'], $DB_ROW['periode_id']))) {
            $_SESSION['tmp_droit_voir_archive'][$DB_ROW['user_id'] . $DB_ROW['officiel_type']] = TRUE;
            // marqueur mis en session pour vérifier que c'est bien cet utilisateur qui veut voir (et à donc le droit de voir) le fichier, car il n'y a pas d'autre vérification de droit ensuite
            $tab_tbody[$DB_ROW['user_id']][$DB_ROW['periode_id']][] = '<a href="releve_pdf.php?fichier=' . $DB_ROW['user_id'] . '_' . $DB_ROW['officiel_type'] . '_' . $DB_ROW['periode_id'] . '" target="_blank">' . $tab_types[$DB_ROW['officiel_type']]['titre'] . '</a>';
        }
    }
}
// autre boucle pour les fiches brevet (ce n'est pas la même table)
if (test_user_droit_specifique($_SESSION['DROIT_' . $tab_types['brevet']['droit'] . '_VOIR_ARCHIVE'])) {
    $bilan_type = 'brevet';
    $DB_TAB = DB_STRUCTURE_BREVET::DB_lister_brevet_fichiers(implode(',', $tab_eleve_id));
    foreach ($DB_TAB as $user_id => $tab) {
        if (is_file(CHEMIN_DOSSIER_OFFICIEL . $_SESSION['BASE'] . DS . fabriquer_nom_fichier_bilan_officiel($user_id, $bilan_type, $annee_session_brevet))) {