Subversion Repositories Applications.annuaire

Rev

Rev 519 | Rev 541 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 519 Rev 525
Line 772... Line 772...
772
		
772
		
773
		return $infos;
773
		return $infos;
Line 774... Line 774...
774
	}
774
	}
775
 
775
 
776
	/**
776
	/**
777
	 * Renvoie les infos pour un utilisateur et un annuaire donné
777
	 * Renvoie les infos pour un ou plusieurs utilisateurs, et un annuaire donné
778
	 * @param int $id_annuaire l'identifiant de l'annuaire
778
	 * @param int $id_annuaire l'identifiant de l'annuaire
779
	 * @param array $id identifiant d'utilisateur
779
	 * @param mixed $ids_utilisateurs String un identifiant d'utilisateur ou Array un tableau d'identifiants
780
	 * @return array un tableau.
780
	 * @return array un tableau.
-
 
781
	 */
-
 
782
	public function obtenirInfosUtilisateurParId($id_annuaire, $ids_utilisateurs) {
-
 
783
		$plusieurs = false;
-
 
784
		if (is_array($ids_utilisateurs)) {
-
 
785
			$plusieurs = true;
781
	 */
786
			$ids_utilisateurs = implode(',', $ids_utilisateurs);
782
	public function obtenirInfosUtilisateurParId($id_annuaire, $id_utilisateur) {
787
		}
783
		$requete = 	'SELECT * '.
788
		$requete = 	'SELECT * '.
Line 784... Line 789...
784
			'FROM annu_annuaire '.
789
			'FROM annu_annuaire '.
785
			'WHERE aa_id_annuaire = '.$id_annuaire.' ';
790
			'WHERE aa_id_annuaire = '.$id_annuaire;
786
 
791
 
787
		$annuaire = $this->requeteUn($requete);
792
		$annuaire = $this->requeteUn($requete);
Line 788... Line 793...
788
		if (!$annuaire) {
793
		if (!$annuaire) {
789
			return false;
794
			return false;
790
		}
795
		}
791
 
796
 
792
		$mappageInfos = $this->obtenirChampsMappageAnnuaire($id_annuaire, $id_utilisateur);
797
		$mappageInfos = $this->obtenirChampsMappageAnnuaire($id_annuaire);
793
		// on ne garde que les champs de mappage correspondant au champ de l'annuaire principal
798
		// on ne garde que les champs de mappage correspondant au champ de l'annuaire principal
-
 
799
		$mappage = $mappageInfos[0];
-
 
800
		$requete = 	'SELECT '.$mappage['champ_id'].', '.$mappage['champ_mail'].', '.$mappage['champ_prenom'].', '.$mappage['champ_nom'].' '.
-
 
801
			'FROM '.$annuaire['aa_bdd'].'.'.$annuaire['aa_table'].' '.
-
 
802
			'WHERE '.$mappage['champ_id'];
-
 
803
		if ($plusieurs) {
794
		$mappage = $mappageInfos[0];
804
			$requete .= ' IN (' . $ids_utilisateurs . ')';
Line 795... Line 805...
795
		$requete = 	'SELECT '.$mappage['champ_id'].', '.$mappage['champ_mail'].', '.$mappage['champ_prenom'].', '.$mappage['champ_nom'].' '.
805
		} else {
796
			'FROM '.$annuaire['aa_bdd'].'.'.$annuaire['aa_table'].' '.
806
			$requete .= ' = ' . $ids_utilisateurs;
797
			'WHERE '.$mappage['champ_id'].' = '.$id_utilisateur.' ';
807
		}
798
		$resultat = $this->requeteUn($requete);
808
		$resultats = $this->requeteTous($requete);
799
 
809
 
800
		$infos = false;
810
		$infos = false;
Line 801... Line 811...
801
		if ($resultat) {
811
		foreach ($resultats as $resultat) {
802
			$id = $resultat[$mappage['champ_id']];
812
			$id = $resultat[$mappage['champ_id']];
803
			$prenom = AppControleur::formaterMotPremiereLettreChaqueMotEnMajuscule($resultat[$mappage['champ_prenom']]);
813
			$prenom = AppControleur::formaterMotPremiereLettreChaqueMotEnMajuscule($resultat[$mappage['champ_prenom']]);
804
			$nom = AppControleur::formaterMotEnMajuscule($resultat[$mappage['champ_nom']]);
814
			$nom = AppControleur::formaterMotEnMajuscule($resultat[$mappage['champ_nom']]);
Line 805... Line 815...
805
			$courriel = $resultat[$mappage['champ_mail']];
815
			$courriel = $resultat[$mappage['champ_mail']];