API de la BdU du SdE
 Tout Classes Fonctions Variables Pages
Référence de la classe Bdu_Api

Classe d'accès aux données de la BdU. Plus de détails...

Fonctions membres publiques

 __construct (Bdu_Util_UnitOfWork $unitOfWork)
 Constructeur.
 
 searchStudentByLogin ($login, $catch=true)
 Rechercher un élève par login.
 
 searchStudentsByName ($lastname, $firstname)
 Recherche par nom/prénom.
 
 searchStudentsByRoom ($roomname)
 Recherche par chambre.
 
 searchStudentsByNick ($nickname)
 Recherche par surnom.
 
 quickSearch ($search)
 Recherche "Rapide".
 
 getStudentPhotoUrl ($login)
 Retourne la photo de l'élève.
 
 batchRetrieveStudents (array $students)
 Récupère les données ldap des étudiants en une seule requête.
 
 isValidLogin ($login)
 Vérifie si un login est attribué
 
 searchAssociationsByName ($name, $exactMatch=false)
 Recherche les associations par nom.
 
 searchAssociationById ($id)
 Recherche une association par id.
 

Attributs protégés

 $unitOfWork
 

Description détaillée

Classe d'accès aux données de la BdU.

Auteur
Pierre Pattard
Christophe Coevoet

Documentation des constructeurs et destructeur

Bdu_Api::__construct ( Bdu_Util_UnitOfWork  $unitOfWork)

Constructeur.

Paramètres
Bdu_Util_UnitOfWork$unitOfWork

Documentation des fonctions membres

Bdu_Api::batchRetrieveStudents ( array  $students)

Récupère les données ldap des étudiants en une seule requête.

Cette méthode permet d'optimiser les performances en faisant une seule requête au lieu d'en faire une par étudiant. Ce mécanisme est utilisé par défaut lorsque les membres d'une association sont récupérés.

Paramètres
array$studentsUn tableau d'objets Bdu_Entity_Student
Renvoie
array Le tableau donné en entrée
Bdu_Api::getStudentPhotoUrl (   $login)

Retourne la photo de l'élève.

Une chaîne vide est retournée si l'élève n'existe pas.

Usage:

<img src="<?php echo $api->getStudentPhotoUrl($login); ?>" alt="" />
Voir également
http://en.wikipedia.org/wiki/Data_URI_scheme pour les explications sur le Data Scheme URI
Paramètres
string$loginLogin de l'élève
Renvoie
string Le Data URI Scheme pour la photo
Bdu_Api::isValidLogin (   $login)

Vérifie si un login est attribué

Paramètres
string$loginLogin
Renvoie
boolean
Bdu_Api::quickSearch (   $search)

Recherche "Rapide".

Recherche pas intelligente mais multicritère. Cette recherche réussit en général mieux que la recherche simple MAIS elle peut retourner un grand nombre de résultats.

Caractères génériques autorisés. Plusieurs mots (séparés par des espaces) autorisés. Il n'y aucune distinction entre nom, prénom, surnom, chambre, ...

Paramètres
string$searchPhrase de recherche
Renvoie
array Tableau des élèves trouvés
Bdu_Api::searchAssociationById (   $id)

Recherche une association par id.

Paramètres
integer$idNom de l'association
Renvoie
Bdu_Entity_Association
Exceptions
Bdu_Exception_WebserviceConnectionFailedsi le webservice n'est pas accessible
Bdu_Exception_AssociationNotFoundsi l'association n'est pas trouvée ou n'est pas unique
Bdu_Api::searchAssociationsByName (   $name,
  $exactMatch = false 
)

Recherche les associations par nom.

Paramètres
string$nameNom de l'association
boolean$exactMatchSi true, le nom exact est alors recherché
Renvoie
array Tableau d'objets Bdu_Entity_Association
Exceptions
Bdu_Exception_WebserviceConnectionFailedsi le webservice n'est pas accessible
Bdu_Exception_AssociationNotFoundsi l'association n'est pas trouvée
Bdu_Api::searchStudentByLogin (   $login,
  $catch = true 
)

Rechercher un élève par login.

Caractères génériques NON acceptés.

Paramètres
string$loginLogin EXACT de l'élève
boolean$catchSi true (défaut) renvoie null en cas d'erreur, sinon lève l'exception
Renvoie
Bdu_Entity_Student un objet représentant l'élève ou null si l'élève n'existe pas
Bdu_Api::searchStudentsByName (   $lastname,
  $firstname 
)

Recherche par nom/prénom.

Retourne autant d'élèves que de réponses. Recherche naïve: cette fonction ne gère pas les noms composés. Caractères génériques autorisés. Limite de recherche: environ 25 élèves.

Paramètres
string$lastnameNom de famille
string$firstnamePrénom
Renvoie
array Tableau des élèves trouvés (objets de type Bdu_Entity_Student)
Bdu_Api::searchStudentsByNick (   $nickname)

Recherche par surnom.

Caractères génériques autorisés

Paramètres
string$nicknameLe surnom à chercher
Renvoie
array Tableau des élèves trouvés
Bdu_Api::searchStudentsByRoom (   $roomname)

Recherche par chambre.

Les chambres ont pour format BYYY où

  • B est un batiment (A à L)
  • YYY est le numéro de la chambre (001 à 024, 101 à 124, etc).

Pour le batiment F on peut optionnellemet ajouter

  • d comme douche pour désigner l'habitant du côté de la douche
  • m comme mur pour désigner le côté opposé à la douche

Pour le F il est nécessaire d'ajouter m ou d pour obtenir une réponse unique.

Paramètres
string$roomname
Renvoie
array Tableau des élèves occupant la chambre (0, 1 ou 2 élèves)

Documentation des données membres

Bdu_Api::$unitOfWork
protected