| Line 227... |
Line 227... |
| 227 |
// TODO faire une interface de gestion des champs de mappage
|
227 |
// TODO faire une interface de gestion des champs de mappage
|
| Line 228... |
Line 228... |
| 228 |
|
228 |
|
| 229 |
return $tableau_mappage ;
|
229 |
return $tableau_mappage ;
|
| Line 230... |
Line -... |
| 230 |
}
|
- |
|
| 231 |
|
- |
|
| 232 |
/** Charge le nombre d'inscrits d'une table annuaire mappée
|
- |
|
| 233 |
* @param int $identifiant l'identifiant de l'annuaire mappé
|
- |
|
| 234 |
* @return int le nombre d'inscrits à un annuaire donné
|
- |
|
| 235 |
*
|
- |
|
| 236 |
*/
|
- |
|
| 237 |
public function chargerNombreAnnuaireListeInscrits($identifiant) {
|
- |
|
| 238 |
|
- |
|
| 239 |
$requete_informations_annuaire = 'SELECT aa_bdd, aa_table '.
|
- |
|
| 240 |
'FROM annu_annuaire '.
|
- |
|
| 241 |
'WHERE aa_id_annuaire = '.$identifiant.' ';
|
- |
|
| 242 |
$resultat_informations_annuaire = $this->requeteUn($requete_informations_annuaire);
|
- |
|
| 243 |
|
- |
|
| 244 |
if(!$resultat_informations_annuaire) {
|
- |
|
| 245 |
trigger_error('impossible de récupérer les informations de la table '.$identifiant);
|
- |
|
| 246 |
}
|
- |
|
| 247 |
|
- |
|
| 248 |
$requete_nombre_inscrits = 'SELECT COUNT(*) as nom_inscrits'.
|
- |
|
| 249 |
' FROM '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table'];
|
- |
|
| 250 |
|
- |
|
| 251 |
if(!$resultat_informations_annuaire) {
|
- |
|
| 252 |
trigger_error('impossible de récupérer le nombre d\'inscrits de la table '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table']);
|
- |
|
| 253 |
}
|
- |
|
| 254 |
|
- |
|
| 255 |
$resultat_nombre_inscrits = $this->requeteUn($requete_nombre_inscrits);
|
- |
|
| 256 |
return $resultat_nombre_inscrits['nom_inscrits'] ;
|
- |
|
| 257 |
}
|
230 |
}
|
| 258 |
|
231 |
|
| 259 |
/** Charge le nombre d'inscrits d'une table annuaire mappée en les groupant par départements
|
232 |
/** Charge le nombre d'inscrits d'une table annuaire mappée en les groupant par départements
|
| 260 |
* @param int $identifiant l'identifiant de l'annuaire mappé
|
233 |
* @param int $identifiant l'identifiant de l'annuaire mappé
|
| 261 |
* @return array un tableau indexé par les numéros de departement contenant le nombre d'inscrits à chacun
|
234 |
* @return array un tableau indexé par les numéros de departement contenant le nombre d'inscrits à chacun
|
| Line 385... |
Line 358... |
| 385 |
* @param Array $champs_mappage les champs de mappage à retenir
|
358 |
* @param Array $champs_mappage les champs de mappage à retenir
|
| 386 |
* @param int $numero_page le numéro de la page demandée
|
359 |
* @param int $numero_page le numéro de la page demandée
|
| 387 |
* @param int $taille_page la taille de la page demandée
|
360 |
* @param int $taille_page la taille de la page demandée
|
| 388 |
*
|
361 |
*
|
| 389 |
*/
|
362 |
*/
|
| 390 |
public function chargerAnnuaireListeInscrits($identifiant, $champs_mappage, $numero_page = 1, $taille_page = 50) {
|
363 |
public function chargerAnnuaireListeInscrits($id_annuaire, $numero_page = 1, $taille_page = 50) {
|
| Line 391... |
Line 364... |
| 391 |
|
364 |
|
| 392 |
$requete = 'SELECT * '.
|
365 |
$requete_informations_annuaire = 'SELECT aa_bdd, aa_table '.
|
| 393 |
'FROM annu_annuaire '.
|
366 |
'FROM annu_annuaire '.
|
| 394 |
'WHERE aa_id_annuaire = '.$identifiant.' ';
|
- |
|
| 395 |
$resultat = $this->requeteTous($requete);
|
- |
|
| 396 |
$annuaire = array();
|
- |
|
| 397 |
foreach ($resultat as $ligne) {
|
- |
|
| 398 |
$annuaire['informations'] = $ligne;
|
- |
|
| Line -... |
Line 367... |
| - |
|
367 |
'WHERE aa_id_annuaire = '.$id_annuaire.' ';
|
| - |
|
368 |
|
| - |
|
369 |
$resultat_informations_annuaire = $this->requeteUn($requete_informations_annuaire);
|
| - |
|
370 |
|
| - |
|
371 |
$champs_mappage = $this->obtenirChampsMappageAnnuaire($id_annuaire);
|
| - |
|
372 |
|
| - |
|
373 |
$requete_nb_inscrits = 'SELECT COUNT( * ) as nb '.' FROM '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table'];
|
| - |
|
374 |
|
| - |
|
375 |
$resultat_nb_inscrits = $this->requeteUn($requete_nb_inscrits);
|
| - |
|
376 |
|
| 399 |
}
|
377 |
$nb_inscrits = 0;
|
| - |
|
378 |
if($resultat_nb_inscrits) {
|
| Line -... |
Line 379... |
| - |
|
379 |
$nb_inscrits = $resultat_nb_inscrits['nb'];
|
| 400 |
|
380 |
}
|
| Line 401... |
Line -... |
| 401 |
$annuaire['colonnes'] = $champs_mappage;
|
- |
|
| 402 |
|
- |
|
| 403 |
$string_champs_mappage = implode(",", $champs_mappage);
|
- |
|
| 404 |
|
381 |
|
| Line 405... |
Line -... |
| 405 |
$requete = 'SELECT '.$champs_mappage['champ_id'].
|
- |
|
| 406 |
' FROM '.$annuaire['informations']['aa_bdd'].'.'.$annuaire['informations']['aa_table'].
|
382 |
$requete_recherche_inscrits = 'SELECT '.$champs_mappage[0]['champ_id'].' FROM '.$resultat_informations_annuaire['aa_bdd'].'.'.$resultat_informations_annuaire['aa_table'];
|
| 407 |
' ORDER BY '.$champs_mappage['champ_id'].
|
383 |
$requete_recherche_inscrits .= ' LIMIT '.(($numero_page-1)*$taille_page).','.($taille_page);
|
| 408 |
' LIMIT '.(($numero_page-1)*$taille_page).','.($taille_page);
|
384 |
|
| Line 409... |
Line 385... |
| 409 |
|
385 |
$resultat_recherche_inscrits = $this->requeteTous($requete_recherche_inscrits);
|
| 410 |
$resultat = $this->requeteTous($requete);
|
386 |
|
| Line 411... |
Line 387... |
| 411 |
foreach ($resultat as $colonne) {
|
387 |
if(!$resultat_recherche_inscrits) {
|
| 412 |
$annuaire['inscrits'][] = $colonne;
|
388 |
$resultat_recherche_inscrits = array();
|
| 413 |
}
|
389 |
}
|