Subversion Repositories Applications.annuaire

Compare Revisions

Ignore whitespace Rev 97 → Rev 98

/trunk/controleurs/AnnuaireControleur.php
101,21 → 101,44
* @param $id int l'identifiant de l'annuaire
* @return string la vue contenant les inscrits à l'annuaire
*/
public function chargerAnnuaireListeInscrits($id, $numero_page = 1, $taille_page = 50) {
public function chargerAnnuaireListeInscrits($id_annuaire, $numero_page = 1, $taille_page = 50) {
 
$this->chargerModele('AnnuaireModele');
$annuaire = $this->AnnuaireModele->chargerAnnuaire($id_annuaire);
$data['erreurs'] = array();
$data['champs'] = $this->obtenirChampsMappageAnnuaire($id);
$total_inscrits = $this->AnnuaireModele->chargerNombreAnnuaireListeInscrits($id);
$data['annuaire'] = $this->AnnuaireModele->chargerAnnuaireListeInscrits($id, $data['champs'][0], $numero_page, $taille_page);
$tableau_mappage = $this->obtenirChampsMappageAnnuaire($id_annuaire);
$champ_id_annuaire = $tableau_mappage[0]['champ_id'];
 
$resultat_recherche = $this->AnnuaireModele->chargerAnnuaireListeInscrits($id_annuaire, $numero_page, $taille_page);
$nb_resultats = $resultat_recherche['total'];
$resultat_recherche = $resultat_recherche['resultat'];
$resultats = array();
foreach($resultat_recherche as $resultat) {
$id_utilisateur = $resultat[$champ_id_annuaire];
$resultats[$id_utilisateur] = $this->obtenirValeursUtilisateur($id_annuaire, $id_utilisateur);
}
 
// on renvoie une liste identique à celle de la liste des inscrits
$donnees['resultats_recherche'] = $resultats;
$donnees['tableau_mappage'] = $tableau_mappage[1];
$donnees['id_annuaire'] = $id_annuaire;
$donnees['nb_resultats'] = $nb_resultats;
$url_pagination = new URL(Registre::getInstance()->get('base_url_application'));
$url_pagination->setVariableRequete('m','annuaire_inscrits');
$url_pagination->setVariableRequete('id_annuaire',$id);
 
$data['pagination'] = $this->paginer($numero_page,$taille_page,$total_inscrits,$url_pagination);
$data['pagination'] = $this->paginer($numero_page,$taille_page,$nb_resultats,$url_pagination);
 
$annuaires_inscrits = $this->getVue(Config::get('dossier_squelettes_annuaires').'annuaire_inscrits', $data);
// S'il existe une page de résultats spécifique à l'annuaire pour la recherche
if($this->templateExiste($annuaire['informations']['aa_code'].'_resultat_recherche', Config::get('dossier_squelettes_annuaires'))) {
// on l'affiche
$annuaires_inscrits = $this->getVue(Config::get('dossier_squelettes_annuaires').$annuaire['informations']['aa_code'].'_resultat_recherche', $donnees);
} else {
// sinon on prend celle par défaut
$annuaires_inscrits = $this->getVue(Config::get('dossier_squelettes_annuaires').'resultat_recherche', $donnees);
}
 
return $annuaires_inscrits;
}