$tab_lignes_profs = array();
// Récupérer la liste des groupes
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_groupes_avec_niveaux();
if (empty($DB_TAB)) {
    echo '<p class="danger">Aucun groupe trouvé !</p>' . NL;
    return;
    // Ne pas exécuter la suite de ce fichier inclus.
}
foreach ($DB_TAB as $DB_ROW) {
    $tab_js .= 'tab_join[' . $DB_ROW['groupe_id'] . '] = new Array();';
    $tab_groupes[$DB_ROW['groupe_id']] = html($DB_ROW['groupe_nom']);
    $tab_profs_par_groupe[$DB_ROW['groupe_id']] = '';
    $tab_lignes_groupes[$DB_ROW['niveau_id']][] = $DB_ROW['groupe_id'];
}
// Récupérer la liste des professeurs
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users('professeur', 1, 'user_id,user_nom,user_prenom,user_profil_join_groupes', FALSE);
if (!empty($DB_TAB)) {
    $compteur = 0;
    foreach ($DB_TAB as $DB_ROW) {
        if ($DB_ROW['user_profil_join_groupes'] == 'config') {
            $tab_profs[$DB_ROW['user_id']] = html($DB_ROW['user_nom'] . ' ' . $DB_ROW['user_prenom']);
            $tab_groupes_par_prof[$DB_ROW['user_id']] = '';
            $tab_lignes_profs[floor($compteur / 8)][] = $DB_ROW['user_id'];
            $compteur++;
        }
    }
}
if (!count($tab_profs)) {
    echo '<p class="danger">Aucun compte professeur trouvé !</p>' . NL;
    return;
    // Ne pas exécuter la suite de ce fichier inclus.
  echo'<p class="danger">Aucune matière trouvée !</p>'.NL;
  return; // Ne pas exécuter la suite de ce fichier inclus.
}

$compteur = 0 ;
foreach($DB_TAB as $DB_ROW)
{
  $tab_js .= 'tab_join['.$DB_ROW['matiere_id'].'] = new Array();';
  $tab_matieres[$DB_ROW['matiere_id']] = html($DB_ROW['matiere_nom']);
  $tab_profs_par_matiere[$DB_ROW['matiere_id']] = '';
  $tab_lignes_matieres[floor($compteur/8)][] = $DB_ROW['matiere_id'];
  $compteur++;
}

// Récupérer la liste des personnels
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users( 'professeur' , 1 /*only_actuels*/ , 'user_id,user_nom,user_prenom' /*liste_champs*/ , FALSE /*with_classe*/ );
if(empty($DB_TAB))
{
  echo'<p class="danger">Aucun compte personnel trouvé !</p>'.NL;
  return; // Ne pas exécuter la suite de ce fichier inclus.
}

$compteur = 0 ;
foreach($DB_TAB as $DB_ROW)
{
  $tab_principal[0][$DB_ROW['user_id']] = '<th id="th_'.$DB_ROW['user_id'].'"><img alt="'.html($DB_ROW['user_nom'].' '.$DB_ROW['user_prenom']).'" src="./_img/php/etiquette.php?dossier='.$_SESSION['BASE'].'&amp;nom='.urlencode($DB_ROW['user_nom']).'&amp;prenom='.urlencode($DB_ROW['user_prenom']).'" /></th>';
  $tab_profs[$DB_ROW['user_id']] = html($DB_ROW['user_nom'].' '.$DB_ROW['user_prenom']);
  $tab_matieres_par_prof[$DB_ROW['user_id']] = '';
  $tab_lignes_profs[floor($compteur/8)][] = $DB_ROW['user_id'];
  $compteur++;
}
 // Charge la fonction "recuperer_infos_Laclasse()"
 // Appelle l'annuaire ENT Laclasse.com et retourne un tableau [ ['profil'][i] , ['id_ent'][i]  , ['nom'][i] , ['prenom'][i] , ['id_sconet'][i] ]
 $tab_users_ENT = recuperer_infos_Laclasse('0693331W');
 // $tab_users_ENT = recuperer_infos_Laclasse($_SESSION['WEBMESTRE_UAI']);  // ****************************************************************************
 // On récupère le contenu de la base pour comparer
 $tab_users_base = array();
 $tab_users_base['id'] = array();
 $tab_users_base['ordre'] = array();
 $tab_users_base['profil'] = array();
 $tab_users_base['id_ent'] = array();
 $tab_users_base['nom'] = array();
 $tab_users_base['prenom'] = array();
 $tab_users_base['id_sconet'] = array();
 // Ne servira que pour les élèves
 $tab_profils_types = array('eleve', 'parent', 'professeur', 'directeur', 'inspecteur');
 $DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users($tab_profils_types, 1, 'user_id,user_id_ent,user_sconet_id,user_nom,user_prenom,user_profil_sigle', FALSE);
 $tab_ordre = array('DIR' => 1, 'ENS' => 1, 'DOC' => 1, 'EDU' => 1, 'ELV' => 2, 'TUT' => 3, 'AVS' => 4, 'IEX' => 4, 'AED' => 4, 'SUR' => 4, 'ORI' => 4, 'MDS' => 4, 'ADF' => 4);
 foreach ($DB_TAB as $DB_ROW) {
     $tab_users_base['id'][] = (int) $DB_ROW['user_id'];
     $tab_users_base['ordre'][] = $tab_ordre[$DB_ROW['user_profil_sigle']];
     $tab_users_base['profil'][] = $DB_ROW['user_profil_sigle'];
     $tab_users_base['id_ent'][] = $DB_ROW['user_id_ent'];
     $tab_users_base['nom'][] = $DB_ROW['user_nom'];
     $tab_users_base['prenom'][] = $DB_ROW['user_prenom'];
     $tab_users_base['id_sconet'][] = (int) $DB_ROW['user_sconet_id'];
 }
 // On trie
 array_multisort($tab_users_base['ordre'], SORT_ASC, SORT_NUMERIC, $tab_users_base['profil'], SORT_ASC, SORT_STRING, $tab_users_base['nom'], SORT_ASC, SORT_STRING, $tab_users_base['prenom'], SORT_ASC, SORT_STRING, $tab_users_base['id'], $tab_users_base['id_ent'], $tab_users_base['id_sconet']);
 // On retire l'ordre dont on n'a plus besoin
 unset($tab_users_base['ordre']);
 // Lister les profils ; ne peut être récupéré via la requête précédente à cause de profils présents dans l'ENT dont il n'y aurait aucun utilisateur dans la base SACoche
        }
    }
}
// Affichage du bilan des affectations des élèves dans les classes ; en deux requêtes pour récupérer les élèves sans classes et les classes sans élèves
$tab_niveau_groupe = array();
$tab_user = array();
$tab_niveau_groupe[0][0] = 'sans classe';
$tab_user[0] = '';
// Récupérer la liste des classes
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_classes_avec_niveaux();
foreach ($DB_TAB as $DB_ROW) {
    $tab_niveau_groupe[$DB_ROW['niveau_id']][$DB_ROW['groupe_id']] = html($DB_ROW['groupe_nom']);
    $tab_user[$DB_ROW['groupe_id']] = '';
}
// Récupérer la liste des élèves / classes
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users('eleve', 1, 'eleve_classe_id,user_nom,user_prenom', FALSE);
foreach ($DB_TAB as $DB_ROW) {
    $tab_user[$DB_ROW['eleve_classe_id']] .= html($DB_ROW['user_nom'] . ' ' . $DB_ROW['user_prenom']) . '<br />';
}
// Assemblage du tableau résultant
$TH = array();
$TB = array();
$TF = array();
foreach ($tab_niveau_groupe as $niveau_id => $tab_groupe) {
    $TH[$niveau_id] = '';
    $TB[$niveau_id] = '';
    $TF[$niveau_id] = '';
    foreach ($tab_groupe as $groupe_id => $groupe_nom) {
        $nb = mb_substr_count($tab_user[$groupe_id], '<br />', 'UTF-8');
        $s = $nb > 1 ? 's' : '';
        $TH[$niveau_id] .= '<th>' . $groupe_nom . '</th>';
$tab_users_base = array();
$tab_users_base['sconet_id'] = array();
$tab_users_base['sconet_num'] = array();
$tab_users_base['reference'] = array();
$tab_users_base['profil_sigle'] = array();
$tab_users_base['genre'] = array();
$tab_users_base['nom'] = array();
$tab_users_base['prenom'] = array();
$tab_users_base['birth_date'] = array();
$tab_users_base['courriel'] = array();
$tab_users_base['sortie'] = array();
$tab_users_base['classe'] = array();
$tab_users_base['adresse'] = array();
$profil_type = $import_profil != 'professeur' ? $import_profil : array('professeur', 'directeur');
$with_classe = $import_profil == 'eleve' ? TRUE : FALSE;
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users($profil_type, 2, 'user_id,user_sconet_id,user_sconet_elenoet,user_reference,user_profil_sigle,user_genre,user_nom,user_prenom,user_naissance_date,user_email,user_email_origine,user_sortie_date', $with_classe, FALSE);
foreach ($DB_TAB as $DB_ROW) {
    $tab_users_base['sconet_id'][$DB_ROW['user_id']] = $DB_ROW['user_sconet_id'];
    $tab_users_base['sconet_num'][$DB_ROW['user_id']] = $DB_ROW['user_sconet_elenoet'];
    $tab_users_base['reference'][$DB_ROW['user_id']] = $DB_ROW['user_reference'];
    $tab_users_base['profil_sigle'][$DB_ROW['user_id']] = $DB_ROW['user_profil_sigle'];
    $tab_users_base['genre'][$DB_ROW['user_id']] = $DB_ROW['user_genre'];
    $tab_users_base['nom'][$DB_ROW['user_id']] = $DB_ROW['user_nom'];
    $tab_users_base['prenom'][$DB_ROW['user_id']] = $DB_ROW['user_prenom'];
    $tab_users_base['birth_date'][$DB_ROW['user_id']] = convert_date_mysql_to_french($DB_ROW['user_naissance_date']);
    $tab_users_base['courriel'][$DB_ROW['user_id']] = $DB_ROW['user_email'];
    $tab_users_base['email_origine'][$DB_ROW['user_id']] = $DB_ROW['user_email_origine'];
    $tab_users_base['sortie'][$DB_ROW['user_id']] = $DB_ROW['user_sortie_date'];
    $tab_users_base['classe'][$DB_ROW['user_id']] = $import_profil == 'eleve' ? $DB_ROW['groupe_ref'] : '';
}
// Pour préparer l'affichage
   <tr>
     <th>Id. ENT</th>
     <th>Id. GEPI</th>
     <th>Civ.</th>
     <th>Nom</th>
     <th>Prénom</th>
     <th>Login</th>
     <th>Mot de passe</th>
     <th>Courriel</th>
     <th class="nu"><q class="ajouter" title="Ajouter un administrateur."></q></th>
   </tr>
 </thead>
 <tbody>
   <?php
   // Lister les administrateurs
   $DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users( 'administrateur' , 1 /*only_actuels*/ , 'user_id,user_id_ent,user_id_gepi,user_genre,user_nom,user_prenom,user_login,user_email' /*liste_champs*/ , FALSE /*with_classe*/ );
   if(!empty($DB_TAB))
   {
     foreach($DB_TAB as $DB_ROW)
     {
       // Afficher une ligne du tableau
       echo'<tr id="id_'.$DB_ROW['user_id'].'">';
       echo  '<td>'.html($DB_ROW['user_id_ent']).'</td>';
       echo  '<td>'.html($DB_ROW['user_id_gepi']).'</td>';
       echo  '<td>'.Html::$tab_genre['adulte'][$DB_ROW['user_genre']].'</td>';
       echo  '<td>'.html($DB_ROW['user_nom']).'</td>';
       echo  '<td>'.html($DB_ROW['user_prenom']).'</td>';
       echo  '<td>'.html($DB_ROW['user_login']).'</td>';
       echo  '<td class="i">champ crypté</td>';
       echo  '<td>'.html($DB_ROW['user_email']).'</td>';
       echo  '<td class="nu">';
Esempio n. 7
0
//

$tab_niveau_groupe = array();
$tab_user          = array();
$tab_niveau_groupe[0][0] = 'sans classe';
$tab_user[0]             = '';

// Récupérer la liste des classes
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_classes_avec_niveaux($niveau_ordre='DESC');
foreach($DB_TAB as $DB_ROW)
{
  $tab_niveau_groupe[$DB_ROW['niveau_id']][$DB_ROW['groupe_id']] = html($DB_ROW['groupe_nom']);
  $tab_user[$DB_ROW['groupe_id']] = '';
}
// Récupérer la liste des élèves / classes
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users( 'eleve' , 1 /*only_actuels*/ , 'eleve_classe_id,eleve_brevet_serie,user_nom,user_prenom' /*liste_champs*/ , FALSE /*with_classe*/ );
foreach($DB_TAB as $DB_ROW)
{
  $tab_user[$DB_ROW['eleve_classe_id']] .= '<img src="./_img/brevet/'.$DB_ROW['eleve_brevet_serie'].'.png" alt="" title="'.$tab_brevet_series[$DB_ROW['eleve_brevet_serie']].'" /> '.html($DB_ROW['user_nom'].' '.$DB_ROW['user_prenom']).'<br />';
}
// Assemblage du tableau résultant
$TH = array();
$TB = array();
$TF = array();
foreach($tab_niveau_groupe as $niveau_id => $tab_groupe)
{
  $TH[$niveau_id] = '';
  $TB[$niveau_id] = '';
  $TF[$niveau_id] = '';
  foreach($tab_groupe as $groupe_id => $groupe_nom)
  {
Esempio n. 8
0
 {
   exit('Erreur : le fichier '.CHEMIN_DOSSIER_IMPORT.$fichier_memo.' contenant les données à traiter est introuvable !');
 }
 $contenu = file_get_contents(CHEMIN_DOSSIER_IMPORT.$fichier_memo);
 $tab_users_fichier = @unserialize($contenu);
 if($tab_users_fichier===FALSE)
 {
   exit('Erreur : le fichier contenant les données à traiter est syntaxiquement incorrect !');
 }
 // Récupération des données de la base
 $tab_users_base                   = array();
 $tab_users_base['sconet_id'     ] = array();
 $tab_users_base['sconet_elenoet'] = array();
 $tab_users_base['nom'           ] = array();
 $tab_users_base['prenom'        ] = array();
 $DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users( 'eleve' , 2 /*actuels_et_anciens*/ , 'user_id,user_sconet_id,user_sconet_elenoet,user_nom,user_prenom' /*liste_champs*/ , FALSE /*with_classe*/ , FALSE /*tri_statut*/ );
 foreach($DB_TAB as $DB_ROW)
 {
   $tab_users_base['sconet_id'     ][$DB_ROW['user_id']] = $DB_ROW['user_sconet_id'];
   $tab_users_base['sconet_elenoet'][$DB_ROW['user_id']] = $DB_ROW['user_sconet_elenoet'];
   $tab_users_base['nom'           ][$DB_ROW['user_id']] = $DB_ROW['user_nom'];
   $tab_users_base['prenom'        ][$DB_ROW['user_id']] = $DB_ROW['user_prenom'];
 }
 // Analyse et maj du contenu de la base
 $lignes_ok = '';
 $lignes_ko = '';
 foreach ($tab_users_fichier as $tab_donnees_eleve)
 {
   list($eleve_sconet_id,$eleve_sconet_elenoet,$eleve_nom,$eleve_prenom,$nb_absence,$nb_absence_nj,$nb_retard,$nb_retard_nj) = $tab_donnees_eleve;
   $user_id = FALSE;
   // Recherche sur sconet_id
      <th>Référence</th>
      <th>Profil</th>
      <th>Civ.</th>
      <th>Nom</th>
      <th>Prénom</th>
      <th>Login</th>
      <th>Mot de passe</th>
      <th>Courriel</th>
      <th>Date sortie</th>
      <th class="nu"><q class="ajouter" title="Ajouter un personnel."></q></th>
    </tr>
  </thead>
  <tbody>
    <?php 
// Lister les personnels (professeurs, directeurs, etc.)
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users(array('professeur', 'directeur'), $statut, 'user_id,user_id_ent,user_id_gepi,user_sconet_id,user_reference,user_profil_sigle,user_profil_nom_long_singulier,user_genre,user_nom,user_prenom,user_login,user_email,user_sortie_date', FALSE);
if (!empty($DB_TAB)) {
    foreach ($DB_TAB as $DB_ROW) {
        // Formater la date
        $date_mysql = $DB_ROW['user_sortie_date'];
        $date_affich = $date_mysql != SORTIE_DEFAUT_MYSQL ? convert_date_mysql_to_french($date_mysql) : '-';
        // Afficher une ligne du tableau
        echo '<tr id="id_' . $DB_ROW['user_id'] . '">';
        echo '<td class="nu"><input type="checkbox" name="f_ids" value="' . $DB_ROW['user_id'] . '" /></td>';
        echo '<td class="label">' . html($DB_ROW['user_id_ent']) . '</td>';
        echo '<td class="label">' . html($DB_ROW['user_id_gepi']) . '</td>';
        echo '<td class="label">' . html($DB_ROW['user_sconet_id']) . '</td>';
        echo '<td class="label">' . html($DB_ROW['user_reference']) . '</td>';
        echo '<td class="label">' . html($DB_ROW['user_profil_sigle']) . ' <img alt="" src="./_img/bulle_aide.png" width="16" height="16" title="' . html(html($DB_ROW['user_profil_nom_long_singulier'])) . '" /></td>';
        // Volontairement 2 html() pour le title sinon &lt;* est pris comme une balise html par l'infobulle.
        echo '<td class="label">' . Html::$tab_genre['adulte'][$DB_ROW['user_genre']] . '</td>';
 }
 require(CHEMIN_FICHIER_WS_LACLASSE); // Charge la fonction "recuperer_infos_Laclasse()"
 // Appelle l'annuaire ENT Laclasse.com et retourne un tableau [ ['profil'][i] , ['id_ent'][i]  , ['nom'][i] , ['prenom'][i] , ['id_sconet'][i] ]
 $tab_users_ENT = recuperer_infos_Laclasse('0693331W');
 // $tab_users_ENT = recuperer_infos_Laclasse($_SESSION['WEBMESTRE_UAI']);  // ****************************************************************************
 // On récupère le contenu de la base pour comparer
 $tab_users_base              = array();
 $tab_users_base['id']        = array();
 $tab_users_base['ordre']     = array();
 $tab_users_base['profil']    = array();
 $tab_users_base['id_ent']    = array();
 $tab_users_base['nom']       = array();
 $tab_users_base['prenom']    = array();
 $tab_users_base['id_sconet'] = array(); // Ne servira que pour les élèves
 $tab_profils_types = array('eleve','parent','professeur','directeur','inspecteur');
 $DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users( $tab_profils_types , 1 /*only_actuels*/ , 'user_id,user_id_ent,user_sconet_id,user_nom,user_prenom,user_profil_sigle' /*liste_champs*/ , FALSE /*with_classe*/ );
 $tab_ordre = array( 'DIR'=>1, 'ENS'=>1, 'DOC'=>1, 'EDU'=>1, 'ELV'=>2, 'TUT'=>3, 'AVS'=>4, 'IEX'=>4, 'AED'=>4, 'SUR'=>4, 'ORI'=>4, 'MDS'=>4, 'ADF'=>4 );
 foreach($DB_TAB as $DB_ROW)
 {
   $tab_users_base['id'       ][] = (int)$DB_ROW['user_id'];
   $tab_users_base['ordre'    ][] = $tab_ordre[$DB_ROW['user_profil_sigle']];
   $tab_users_base['profil'   ][] = $DB_ROW['user_profil_sigle'];
   $tab_users_base['id_ent'   ][] = $DB_ROW['user_id_ent'];
   $tab_users_base['nom'      ][] = $DB_ROW['user_nom'];
   $tab_users_base['prenom'   ][] = $DB_ROW['user_prenom'];
   $tab_users_base['id_sconet'][] = (int)$DB_ROW['user_sconet_id'];
 }
 // On trie
 array_multisort(
   $tab_users_base['ordre'] , SORT_ASC,SORT_NUMERIC,
   $tab_users_base['profil'], SORT_ASC,SORT_STRING,
Esempio n. 11
0
				<th>Id. ENT</th>
				<th>Id. GEPI</th>
				<th>Id Sconet</th>
				<th>Référence</th>
				<th>Nom</th>
				<th>Prénom</th>
				<th>Login</th>
				<th>Mot de passe</th>
				<th>Date sortie</th>
				<th class="nu"><q class="ajouter" title="Ajouter un directeur."></q></th>
			</tr>
		</thead>
		<tbody>
			<?php
			// Lister les directeurs
			$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users( 'directeur' , $statut , 'user_id,user_id_ent,user_id_gepi,user_sconet_id,user_reference,user_nom,user_prenom,user_login,user_sortie_date' /*liste_champs*/ , FALSE /*with_classe*/ );
			if(!empty($DB_TAB))
			{
				foreach($DB_TAB as $DB_ROW)
				{
					// Formater la date (dont on ne garde que le jour)
					$date_mysql  = $DB_ROW['user_sortie_date'];
					$date_affich = ($date_mysql!=SORTIE_DEFAUT_MYSQL) ? convert_date_mysql_to_french($date_mysql) : '-' ;
					// Afficher une ligne du tableau
					echo'<tr id="id_'.$DB_ROW['user_id'].'">';
					echo	'<td class="nu"><input type="checkbox" name="f_ids" value="'.$DB_ROW['user_id'].'" /></td>';
					echo	'<td class="label">'.html($DB_ROW['user_id_ent']).'</td>';
					echo	'<td class="label">'.html($DB_ROW['user_id_gepi']).'</td>';
					echo	'<td class="label">'.html($DB_ROW['user_sconet_id']).'</td>';
					echo	'<td class="label">'.html($DB_ROW['user_reference']).'</td>';
					echo	'<td class="label">'.html($DB_ROW['user_nom']).'</td>';
     case "Ville Resp2"                            : $tab_numero_colonne['commune_2']        = $numero; $numero_max = max($numero_max,$numero); break;
     case "Pays Resp2"                             : $tab_numero_colonne['pays_2']           = $numero; $numero_max = max($numero_max,$numero); break;
     // enfant
     case "Identifiant GEP"                        : $tab_numero_colonne['enfant_sconet']    = $numero; $numero_max = max($numero_max,$numero); break;
     case "Nom de l'élève"                         : $tab_numero_colonne['enfant_nom'   ]    = $numero; $numero_max = max($numero_max,$numero); break;
     case "Prénom élève"                           : $tab_numero_colonne['enfant_prenom']    = $numero; $numero_max = max($numero_max,$numero); break;
   }
 }
 if(array_sum($tab_numero_colonne)<0)
 {
   exit('Erreur : un ou plusieurs champs n\'ont pas pu être repérés ("'.implode(' ";" ',array_keys(array_filter($tab_numero_colonne,'filter_init_negatif'))).'") !');
 }
 unset($tab_lignes[0]); // Supprimer la 1e ligne
 // On récupère les élèves pour vérifier que ceux trouvé dans le fichier des parents sont bien dasn la base.
 $tab_eleves_actuels  = array();
 $DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users( 'eleve' /*profil_type*/ , 1 /*only_actuels*/ , 'user_id,user_sconet_elenoet' /*liste_champs*/ , FALSE /*with_classe*/ , FALSE /*tri_statut*/ );
 foreach($DB_TAB as $DB_ROW)
 {
   $tab_eleves_actuels[ $DB_ROW['user_sconet_elenoet']] = $DB_ROW['user_id'];
 }
 //
 // On passe les utilisateurs en revue : on mémorise leurs infos, les adresses trouvées, les enfants trouvés
 //
 $tab_genre = array( ''=>'I' , 'Non saisi'=>'I' , 'M.'=>'M' , 'M'=>'M' , 'MME'=>'F' , 'Mme'=>'F' , 'MLLE'=>'F' , 'Mlle'=>'F' );
 $tab_adresses_uniques = array();
 $nb_lien_responsabilite = 0;
 foreach ($tab_lignes as $ligne_contenu)
 {
   $tab_elements = str_getcsv($ligne_contenu,$separateur);
   if(count($tab_elements)>$numero_max)
   {
$tab_users_base                 = array();
$tab_users_base['sconet_id'   ] = array();
$tab_users_base['sconet_num'  ] = array();
$tab_users_base['reference'   ] = array();
$tab_users_base['profil_sigle'] = array();
$tab_users_base['genre'       ] = array();
$tab_users_base['nom'         ] = array();
$tab_users_base['prenom'      ] = array();
$tab_users_base['birth_date'  ] = array();
$tab_users_base['courriel'    ] = array();
$tab_users_base['sortie'      ] = array();
$tab_users_base['classe'      ] = array();
$tab_users_base['adresse'     ] = array();
$profil_type = ($import_profil!='professeur') ? $import_profil : array('professeur','directeur') ;
$with_classe = ($import_profil=='eleve') ? TRUE : FALSE ;
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users( $profil_type , 2 /*actuels_et_anciens*/ , 'user_id,user_sconet_id,user_sconet_elenoet,user_reference,user_profil_sigle,user_genre,user_nom,user_prenom,user_naissance_date,user_email,user_email_origine,user_sortie_date' /*liste_champs*/ , $with_classe , FALSE /*tri_statut*/ );
foreach($DB_TAB as $DB_ROW)
{
  $tab_users_base['sconet_id'    ][$DB_ROW['user_id']] = $DB_ROW['user_sconet_id'];
  $tab_users_base['sconet_num'   ][$DB_ROW['user_id']] = $DB_ROW['user_sconet_elenoet'];
  $tab_users_base['reference'    ][$DB_ROW['user_id']] = $DB_ROW['user_reference'];
  $tab_users_base['profil_sigle' ][$DB_ROW['user_id']] = $DB_ROW['user_profil_sigle'];
  $tab_users_base['genre'        ][$DB_ROW['user_id']] = $DB_ROW['user_genre'];
  $tab_users_base['nom'          ][$DB_ROW['user_id']] = $DB_ROW['user_nom'];
  $tab_users_base['prenom'       ][$DB_ROW['user_id']] = $DB_ROW['user_prenom'];
  $tab_users_base['birth_date'   ][$DB_ROW['user_id']] = convert_date_mysql_to_french($DB_ROW['user_naissance_date']);
  $tab_users_base['courriel'     ][$DB_ROW['user_id']] = $DB_ROW['user_email'] ;
  $tab_users_base['email_origine'][$DB_ROW['user_id']] = $DB_ROW['user_email_origine'] ;
  $tab_users_base['sortie'       ][$DB_ROW['user_id']] = $DB_ROW['user_sortie_date'] ;
  $tab_users_base['classe'       ][$DB_ROW['user_id']] = ($import_profil=='eleve') ? $DB_ROW['groupe_ref'] : '' ;
}
    <tr>
      <th>Id. ENT</th>
      <th>Id. GEPI</th>
      <th>Civ.</th>
      <th>Nom</th>
      <th>Prénom</th>
      <th>Login</th>
      <th>Mot de passe</th>
      <th>Courriel</th>
      <th class="nu"><q class="ajouter" title="Ajouter un administrateur."></q></th>
    </tr>
  </thead>
  <tbody>
    <?php 
// Lister les administrateurs
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users('administrateur', 1, 'user_id,user_id_ent,user_id_gepi,user_genre,user_nom,user_prenom,user_login,user_email', FALSE);
if (!empty($DB_TAB)) {
    foreach ($DB_TAB as $DB_ROW) {
        // Afficher une ligne du tableau
        echo '<tr id="id_' . $DB_ROW['user_id'] . '">';
        echo '<td>' . html($DB_ROW['user_id_ent']) . '</td>';
        echo '<td>' . html($DB_ROW['user_id_gepi']) . '</td>';
        echo '<td>' . Html::$tab_genre['adulte'][$DB_ROW['user_genre']] . '</td>';
        echo '<td>' . html($DB_ROW['user_nom']) . '</td>';
        echo '<td>' . html($DB_ROW['user_prenom']) . '</td>';
        echo '<td>' . html($DB_ROW['user_login']) . '</td>';
        echo '<td class="i">champ crypté</td>';
        echo '<td>' . html($DB_ROW['user_email']) . '</td>';
        echo '<td class="nu">';
        echo '<q class="modifier" title="Modifier cet administrateur."></q>';
        echo $DB_ROW['user_id'] != $_SESSION['USER_ID'] ? '<q class="supprimer" title="Retirer cet administrateur."></q>' : '<q class="supprimer_non" title="Un administrateur ne peut pas supprimer son propre compte."></q>';
        if (count($DB_VAR)) {
            DB_STRUCTURE_ADMINISTRATEUR::DB_modifier_user($id_base, $DB_VAR);
        }
        $nb_mod++;
    }
}
// On enregistre (tableau mis à jour)
$tab_liens_id_base = array('classes' => $tab_i_classe_TO_id_base, 'groupes' => $tab_i_groupe_TO_id_base, 'users' => $tab_i_fichier_TO_id_base);
FileSystem::ecrire_fichier(CHEMIN_DOSSIER_IMPORT . 'import_' . $import_origine . '_' . $import_profil . '_' . $_SESSION['BASE'] . '_' . session_id() . '_liens_id_base.txt', serialize($tab_liens_id_base));
// Afficher le bilan
$lignes = '';
$nb_fin_actuel = 0;
$nb_fin_ancien = 0;
$profil_type = $import_profil != 'professeur' ? $import_profil : array('professeur', 'directeur');
$with_classe = $import_profil == 'eleve' ? TRUE : FALSE;
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users($profil_type, 2, 'user_id,user_sconet_id,user_sconet_elenoet,user_reference,user_profil_nom_court_singulier,user_nom,user_prenom,user_prenom,user_login,user_sortie_date', $with_classe, TRUE);
foreach ($DB_TAB as $DB_ROW) {
    if (TODAY_MYSQL < $DB_ROW['user_sortie_date']) {
        $nb_fin_actuel++;
    } else {
        $nb_fin_ancien++;
    }
    if ($mode == 'complet') {
        $class = isset($tab_password[$DB_ROW['user_id']]) ? ' class="new"' : '';
        $td_password = isset($tab_password[$DB_ROW['user_id']]) ? '<td class="new">' . html($tab_password[$DB_ROW['user_id']]) . '</td>' : '<td class="i">champ crypté</td>';
        $champ = $import_profil == 'eleve' ? $DB_ROW['groupe_ref'] : $DB_ROW['user_profil_nom_court_singulier'];
        $date_affich = $DB_ROW['user_sortie_date'] != SORTIE_DEFAUT_MYSQL ? convert_date_mysql_to_french($DB_ROW['user_sortie_date']) : '-';
        $lignes .= '<tr' . $class . '><td>' . html($DB_ROW['user_sconet_id']) . '</td><td>' . html($DB_ROW['user_sconet_elenoet']) . '</td><td>' . html($DB_ROW['user_reference']) . '</td><td>' . html($champ) . '</td><td>' . html($DB_ROW['user_nom']) . '</td><td>' . html($DB_ROW['user_prenom']) . '</td><td' . $class . '>' . html($DB_ROW['user_login']) . '</td>' . $td_password . '<td>' . $date_affich . '</td></tr>' . NL;
    }
}
$s_debut_actuel = $nb_debut_actuel > 1 ? 's' : '';
Esempio n. 16
0
 // Récupération des données déjà extraites du fichier
 if (!is_file(CHEMIN_DOSSIER_IMPORT . $fichier_memo)) {
     exit('Erreur : le fichier ' . CHEMIN_DOSSIER_IMPORT . $fichier_memo . ' contenant les données à traiter est introuvable !');
 }
 $contenu = file_get_contents(CHEMIN_DOSSIER_IMPORT . $fichier_memo);
 $tab_users_fichier = @unserialize($contenu);
 if ($tab_users_fichier === FALSE) {
     exit('Erreur : le fichier contenant les données à traiter est syntaxiquement incorrect !');
 }
 // Récupération des données de la base
 $tab_users_base = array();
 $tab_users_base['sconet_id'] = array();
 $tab_users_base['sconet_elenoet'] = array();
 $tab_users_base['nom'] = array();
 $tab_users_base['prenom'] = array();
 $DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users('eleve', 2, 'user_id,user_sconet_id,user_sconet_elenoet,user_nom,user_prenom', FALSE, FALSE);
 foreach ($DB_TAB as $DB_ROW) {
     $tab_users_base['sconet_id'][$DB_ROW['user_id']] = $DB_ROW['user_sconet_id'];
     $tab_users_base['sconet_elenoet'][$DB_ROW['user_id']] = $DB_ROW['user_sconet_elenoet'];
     $tab_users_base['nom'][$DB_ROW['user_id']] = $DB_ROW['user_nom'];
     $tab_users_base['prenom'][$DB_ROW['user_id']] = $DB_ROW['user_prenom'];
 }
 // Analyse et maj du contenu de la base
 $lignes_ok = '';
 $lignes_ko = '';
 foreach ($tab_users_fichier as $tab_donnees_eleve) {
     list($eleve_sconet_id, $eleve_sconet_elenoet, $eleve_nom, $eleve_prenom, $nb_absence, $nb_absence_nj, $nb_retard, $nb_retard_nj) = $tab_donnees_eleve;
     $user_id = FALSE;
     // Recherche sur sconet_id
     if (!$user_id && $eleve_sconet_id) {
         $user_id = array_search($eleve_sconet_id, $tab_users_base['sconet_id']);
    {
      DB_STRUCTURE_ADMINISTRATEUR::DB_modifier_user( $id_base , $DB_VAR );
    }
    $nb_mod++;
  }
}
// On enregistre (tableau mis à jour)
$tab_liens_id_base = array('classes'=>$tab_i_classe_TO_id_base,'groupes'=>$tab_i_groupe_TO_id_base,'users'=>$tab_i_fichier_TO_id_base);
FileSystem::ecrire_fichier(CHEMIN_DOSSIER_IMPORT.'import_'.$import_origine.'_'.$import_profil.'_'.$_SESSION['BASE'].'_'.session_id().'_liens_id_base.txt',serialize($tab_liens_id_base));
// Afficher le bilan
$lignes        = '';
$nb_fin_actuel = 0;
$nb_fin_ancien = 0;
$profil_type = ($import_profil!='professeur') ? $import_profil : array('professeur','directeur') ;
$with_classe = ($import_profil=='eleve') ? TRUE : FALSE ;
$DB_TAB = DB_STRUCTURE_ADMINISTRATEUR::DB_lister_users( $profil_type , 2 /*actuels_et_anciens*/ , 'user_id,user_sconet_id,user_sconet_elenoet,user_reference,user_profil_nom_court_singulier,user_nom,user_prenom,user_prenom,user_login,user_sortie_date' /*liste_champs*/ , $with_classe , TRUE /*tri_statut*/ );
foreach($DB_TAB as $DB_ROW)
{
  if(TODAY_MYSQL<$DB_ROW['user_sortie_date']) {$nb_fin_actuel++;} else {$nb_fin_ancien++;}
  if($mode=='complet')
  {
    $class       = (isset($tab_password[$DB_ROW['user_id']])) ? ' class="new"' : '' ;
    $td_password = (isset($tab_password[$DB_ROW['user_id']])) ? '<td class="new">'.html($tab_password[$DB_ROW['user_id']]).'</td>' : '<td class="i">champ crypté</td>' ;
    $champ = ($import_profil=='eleve') ? $DB_ROW['groupe_ref'] : $DB_ROW['user_profil_nom_court_singulier'] ;
    $date_affich = ($DB_ROW['user_sortie_date']!=SORTIE_DEFAUT_MYSQL) ? convert_date_mysql_to_french($DB_ROW['user_sortie_date']) : '-' ;
    $lignes .= '<tr'.$class.'><td>'.html($DB_ROW['user_sconet_id']).'</td><td>'.html($DB_ROW['user_sconet_elenoet']).'</td><td>'.html($DB_ROW['user_reference']).'</td><td>'.html($champ).'</td><td>'.html($DB_ROW['user_nom']).'</td><td>'.html($DB_ROW['user_prenom']).'</td><td'.$class.'>'.html($DB_ROW['user_login']).'</td>'.$td_password.'<td>'.$date_affich.'</td></tr>'.NL;
  }
}
$s_debut_actuel = ($nb_debut_actuel>1) ? 's' : '';
$s_debut_ancien = ($nb_debut_ancien>1) ? 's' : '';
$s_fin_actuel   = ($nb_fin_actuel>1)   ? 's' : '';