API des utilisateurs et des annuaires

Un article de OviWiki.


Sommaire

Les comptes utilisateurs

bab_isUserAdministrator()

Retourne true si l'utilisateur est administrateur. Sinon false

function bab_isUserAdministrator()

bab_isUserGroupManager()

Retourne true si l'utilisateur est gestionnaire du groupe d'id $grpid. Sinon false

function bab_isUserGroupManager($grpid="")
  • $grpid :
    ID du groupe pour lequel on souhaite savoir si l'utilisateur est gestionnaire. Si vide la fonction retiourne true si l'utilisateur est gestionnaire d'au moins un groupe.


bab_getUserName()

Retourne le nom complet de l'utilisateur d'ID $id.Sinon une chaîne vide.

function bab_getUserName($id)
  • $id :
    ID de l'utilisateur

bab_getUserEmail()

Retourne l'adresse email de l'utilisateur d'ID $id.Sinon une chaîne vide.

function bab_getUserEmail($id)
  • $id :
    ID de l'utilisateur

bab_getUserNickname()

Retourne l'identifiant de l'utilisateur d'ID $id.Sinon une chaîne vide.

function bab_getUserNickname($id)
  • $id :
    ID de l'utilisateur

bab_getUserIdByEmail()

Retourne l'ID de l'utilisateur à partir de son adresse email. Retourne 0 si aucun utilisateur

function bab_getUserIdByEmail($email)
  • $email :
    Adresse email de l'utilisateur

bab_getUserIdByNickname()

Retourne l'ID de l'utilisateur à partir de son identifiant. Retourne 0 si aucun utilisateur

function bab_getUserIdByNickname($nickname)
  • $nickname :
    Identifiant de l'utilisateur

bab_getUserId()

Retourn l'ID de l'utilisateur à partir de son nom. Sinon 0.

function bab_getUserId( $name )
  • $name :
    Nom de l'utilisateur

bab_getUserGroups()

Retourne un tableau contenant les ID et les noms des groupes auxquels l'utilisateur appartient.

function bab_getUserGroups($id = "")
  • $id :
    ID de l'utilisateur. Si vide le système utilise celui de l'utilisateur courant

bab_composeUserName()

Retourne une chaîne contenant le nom complet de l'utilisateur selon les préférences du site ( nom/prénom ou prénom/nom )

function bab_composeUserName( $F, $L)
  • $F :
    Prénom de l'utilisateur
  • $L :
    Nom de l'utilisateur

bab_userIsloggedin()

Retourne true si l'utilisateur courant est authentifié. Sinon elle retourne false

function bab_userIsloggedin()

bab_registerUser()

Permet d'inscrire un utilisateur dans le portail. Retourne l'ID de l'utilisateur inscrit. Sinon false.

function bab_registerUser($firstname, $lastname, $middlename, $email, $nickname, $password1, $password2, $confirmed, &$error, $bgroup = true)
  • $firstname :
    Prénom de l'utilisateur à inscrire
  • $lastname :
    Nom de l'utilisateur à inscrire
  • $middlename :
    Deuxième prénom de l'utilisateur à inscrire
  • $email :
    Adresse email de l'utilisateur à inscrire
  • $nickname :
    Identifiant de l'utilisateur à inscrire
  • $password1 :
    Mot de passe de l'utilisateur à inscrire
  • $password2 :
    De nouveau le même mot de passe de l'utilisateur à inscrire
  • $confirmed :
    true si l'inscription de l'utilisateur sera confirmée. Sinon false
  • $error :
    Variable passée par référence. Si l'inscription échoue, elle sera initialisée avec le message d'erreur


bab_getUserInfos()

Obtenir les informations d'un utilisateur, la fonction retourne un tableau contenant la fiche annuaire de l'utilisateur et les champs spécifiques obligatoires. Les information obtenues peuvent être utilisées en entrée avec la fonction bab_updateUserById()

les champs retournés par la fonction qui sont toujours présents sont :

  • disabled : booléen 1 ou 0
  • password_md5 : mot de passe du compte Ovidentia
  • changepwd : booléen 1 ou 0
  • is_confirmed : booléen 1 ou 0
  • cn : surnom
  • sn : nom
  • mn : deuxième prénom
  • givenname : prénom
  • jpegphoto
  • email
  • btel
  • mobile : numéro de téléphone mobile
  • htel
  • bfax
  • title
  • departmentnumber
  • organisationname
  • bstreetaddress,
  • bcity
  • bpostalcode
  • bstate
  • bcountry
  • hstreetaddress
  • hcity
  • hpostalcode
  • hstate
  • hcountry
  • user1
  • user2
  • user3


Remarque : il peut y avoir des champ d'annuaire optionnels. Des champs comme jpegphoto (photo de l'utilisateur) peuvent être désactivés par l'administrateur du site. Dans ce cas le tableau retourné ne contiendra pas l'entrée jpegphoto.


function bab_getUserInfos($id_user)

bab_canCurrentUserUpdateUser()

Vérifie si l'utilisateur courant a les droits d'accès pour modifier le compte d'un utilisateur spécifié par son id. Retourne true ou false. True si l'utilisateur a les droits.

function bab_canCurrentUserUpdateUser($userId)
  • $userId :
    ID de l'utilisateur à modifier


bab_updateUserPasswordById()

Modification du mot de passe de connexion d'un utilisateur. Retourne true ou false. True si l'utilisateur a été modifié.

function bab_updateUserPasswordById($userId, $newPassword, $newPassword2, $ignoreAccessRights=false, $ignoreSixCharactersMinimum=false, &$error)
  • $userId :
    ID de l'utilisateur à modifier
  • $newPassword :
    nouveau mot de passe de connexion
  • $newPassword2 :
    copie du nouveau mot de passe de connexion (utilisé lorsqu'on demande 2 fois le mot de passe dans un formulaire pour valider la saisie)
  • $ignoreAccessRights :
    booléen. Si true, on ignore les droits d'accès de l'utilisateur courant quant à sa possibilité de modifier le compte utilisateur
  • $ignoreSixCharactersMinimum :
    booléen. Si true, on ignore la restriction sur le minimum de 6 caractères
    En cas d'erreurs, retourne le message Ovidentia traduit

bab_updateUserNicknameById()

Modification de l'identifiant de connexion d'un utilisateur. Retourne true ou false. True si l'utilisateur a été modifié.

function bab_updateUserNicknameById($userId, $newNickname, $ignoreAccessRights=false, &$error)
  • $userId :
    ID de l'utilisateur à modifier
  • $newNickname :
    nouvel identifiant de connexion
  • $ignoreAccessRights :
    booléen. Si true, on ignore les droits d'accès de l'utilisateur courant quant à sa possibilité de modifier le compte utilisateur
  • $error :
    En cas d'erreurs, retourne le message Ovidentia traduit

bab_updateUserById()

Modification d'un utilisateur

function bab_updateUserById($id, $info, &$error)


  • $id :
    ID de l'utilisateur à modifier
  • $info :
    $info est une variable tableau contenant les nouvelles valeurs à enregistrées, le format du tableau correspond au format retourné par la fonction bab_getUserInfos()
  • &$error :
    En cas d'erreur, cette variable sera renseignée avec un message d'erreur

bab_updateUserByNickname()

Modifier les informations d'un utilisateur a partir de l'identifiant

function bab_updateUserByNickname($nickname, $info, &$error)
  • $nickname :
    Identifiant de l'utilisateur à modifier
  • $info :
    $info est une variable tableau contenant les nouvelles valeurs à enregistrées, le format du tableau correspond au format retourné par la fonction bab_getUserInfos()
  • &$error :
    En cas d'erreur, cette variable sera renseignée avec un message d'erreur



Les fiches d'annuaires

bab_getUserDirEntryId()

Retourne l'identifiant de la fiche fiche d'annuaire depuis un identifiant utilisateur.

function bab_getUserDirEntryId($userId)
  • $userId :
    Ce paramètre est obligatoire, doit contenir l'identifiant utilisateur

bab_getDirEntry()

Retourne une fiche d'annuaire ou une liste de fiches d'annuaires.

retourne false si il y a une erreur dans les paramètres

retourne un tableau vide si l'utilisateur n'a pas accès aux informations

function bab_getDirEntry($id = false, $type = BAB_DIR_ENTRY_ID_USER, $id_directory = NULL )


  • $id :
    Ce paramètre est optionnel, les valeurs possibles sont :
    false : si le type est BAB_DIR_ENTRY_ID_USER, l'id de l'utilisateur connecté sera utilisé.
    un nombre entier : utilisable pour tout les types
    un tableau de nombre entiers : une liste d'id peut être utilisée pour les types BAB_DIR_ENTRY_ID_USER et BAB_DIR_ENTRY_ID dans ce cas la fonction retournera plusieurs fiches d'annuaire dans un tableau.
  • type :
    Ce paramètre est optionnel, il correspond au type d'information fourni dans le premier paramètre de la fonction, les valeurs possibles sont
    BAB_DIR_ENTRY_ID_USER : $id est un id d'utilisateur
    BAB_DIR_ENTRY_ID : $id est un id de fiche d'annuaire
    BAB_DIR_ENTRY_ID_DIRECTORY : $id est un id d'annuaire, dans ce cas seul la liste des champs de l'annuaire est retournée
    BAB_DIR_ENTRY_ID_GROUP : $id est un id de groupe d'utilisateur, dans ce cas seul la liste des champs de l'annuaire de groupe est retournée
    La valeur par défaut est BAB_DIR_ENTRY_ID_USER
  • $id_directory :
    Ce paramètre est optionnel, peut être spécifié si le type est BAB_DIR_ENTRY_ID

bab_getUserDirectories()

Retourne une liste d'annuaires visibles par l'utilisateur

function bab_getUserDirectories()

bab_getUserDirEntryLink()

Cette fonction permet d'obtenir un lien vers une fiche d'annuaire, pour un utilisateur ou un ID de fiche d'annuaire.

retourne false si la fiche n'est pas accessible

function bab_getUserDirEntryLink($id = false, $type = BAB_DIR_ENTRY_ID_USER, $id_directory = false)
  • $id :
    Ce paramètre est optionnel, les valeurs possibles sont :
    false : si le type est BAB_DIR_ENTRY_ID_USER, l'id de l'utilisateur connecté sera utilisé.
    un nombre entier : utilisable pour tout les types
  • type :
    Ce paramètre est optionnel, il correspond au type d'information fourni dans le premier paramètre de la fonction, les valeurs possibles sont
    BAB_DIR_ENTRY_ID_USER : $id est un id d'utilisateur
    BAB_DIR_ENTRY_ID : $id est un id de fiche d'annuaire
    La valeur par défaut est BAB_DIR_ENTRY_ID_USER
  • $id_directory :
    Ce paramètre est optionnel, peut être spécifié si le type est BAB_DIR_ENTRY_ID