new controllerApiPersonne()
Controleurs de la route /api/personne/
- Source:
Methods
(static) checkPermission(permission, context, ressource, next)
Vérifie la permission pour l'utilisateur courant et cette ressource
Parameters:
Name | Type | Description |
---|---|---|
permission |
||
context |
Context | |
ressource |
Ressource | |
next |
errorCallback | appelé avec (error, ressource) où error est une string si y'a un pb de droit (rien sinon) |
- Source:
(static) getCurrentUser(context) → {Personne|undefined}
Retourne le user courant ou undefined
Parameters:
Name | Type | Description |
---|---|---|
context |
Context |
- Source:
Returns:
Le user
- Type
- Personne | undefined
(static) getCurrentUserGroupesMembre(context) → {Array.<string>}
Retourne les groupes (membre) du user courant ou undefined d'après la session
(à jour pour les modifs faites par l'utilisateur, mais pas celles faites par un externe,
peut donc contenir un groupe supprimé ou bien il peut manquer un groupe si son
admin a ajouté le user depuis le début de sa session
Parameters:
Name | Type | Description |
---|---|---|
context |
Context |
- Source:
- To Do:
-
- remplacer ça par un $groupesByUser qui maintienne une liste toujours à jour
Returns:
La liste des noms des groupes dont on est membre
- Type
- Array.<string>
(static) getCurrentUserGroupesSuivis(context) → {Array.<string>}
Retourne les groupes suivis par le user courant
Parameters:
Name | Type | Description |
---|---|---|
context |
Context |
- Source:
Returns:
La liste des noms des groupes que l'on suit (tableau vide si aucun ou pas identifié)
- Type
- Array.<string>
(static) getCurrentUserOid(context) → {string}
Retourne l'oid du user courant ou undefined
Parameters:
Name | Type | Description |
---|---|---|
context |
Context |
- Source:
Returns:
L'oid
- Type
- string
(static) getCurrentUserPid(context) → {string}
Retourne le pid du user courant ou undefined
Parameters:
Name | Type | Description |
---|---|---|
context |
Context |
- Source:
Returns:
Le pid
- Type
- string
(static) getDeniedMessage(permission, context, ressourceopt) → {string}
Retourne une chaîne vide si l'utilisateur courant a la permission demandée sur cette ressource
ou le message de rejet
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
permission |
string | create|read|update|delete |
|
context |
Context | ||
ressource |
Ressource |
<optional> |
- Source:
Returns:
Le message d'interdiction éventuel (string vide sinon)
- Type
- string
(static) hasAllRights(context)
Renvoie true si c'est du json (api) appelé par une ip locale
Parameters:
Name | Type | Description |
---|---|---|
context |
Context |
- Source:
- See:
(static) hasGenericPermission(context, permission) → {boolean}
Retourne true si le user en session a la permission générique demandée
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
permission |
string |
- Source:
Returns:
- Type
- boolean
(static) hasPermission(permission, context, ressourceopt) → {boolean}
Retourne true si l'utilisateur courant a la permission demandée sur cette ressource
(ou sur toutes les ressources si ressource n'est pas fournie)
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
permission |
string | create|read|update|delete |
|
context |
Context | ||
ressource |
Ressource |
<optional> |
- Source:
Returns:
- Type
- boolean
(static) hasReadPermission(context, ressource) → {boolean}
Renvoie true si cette ressource est visible par l'utilisateur courant
(helper de hasPermission qui peut s'utiliser directement)
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
ressource |
Ressource |
- Source:
Returns:
- Type
- boolean
(static) isAuthenticated(context) → {boolean}
Retourne true si on a un user en session
Parameters:
Name | Type | Description |
---|---|---|
context |
Context |
- Source:
Returns:
- Type
- boolean
(static) login(context, personne, next)
Connecte un user externe (regarde s'il existe et s'il faut le mettre à jour et le met en session)
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
personne |
Personne | |
next |
personneCallback |
- Source:
(static) loginFromSesalab(context, sesalabUser, baseId, next)
Connecte un user sesalab (regarde s'il existe et s'il faut le mettre à jour et le met en session)
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
sesalabUser |
object | Le user sesalab à son format |
baseId |
string | La baseId du sesalab concerné |
next |
personneCallback |
- Source:
(static) logout(context)
Déconnecte l'utilisateur courant
Parameters:
Name | Type | Description |
---|---|---|
context |
Context |
- Source:
(static) updateCurrentUser(context, personne) → {Personne|undefined}
Met à jour le user en session
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
personne |
Personne |
- Source:
Returns:
Le user mis à jour (ou l'ancien si les oid correspondait pas)
- Type
- Personne | undefined
(inner) addToken(context, tokenopt, valueopt) → {boolean|string}
Ajoute un token et des valeurs associées en session
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
context |
Context | |||
token |
string |
<optional> |
||
value |
* |
<optional> |
true | Une ou des valeurs à mettre en session associées au token |
- Source:
Returns:
false si y'avait pas de user connecté, le token sinon
- Type
- boolean | string
(inner) checkToken(context, token, valueopt) → {boolean}
Vérifie que le token en session correspond et le supprime
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
context |
Context | |||
token |
string | |||
value |
* |
<optional> |
true | La valeur qu'il doit avoir (celle qu'on avait passé à addToken précédemment) |
- Source:
Returns:
- Type
- boolean
(inner) getReadDeniedMessage(context, ressource) → {string|undefined}
Helper de checkAccess pour la permission read
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
ressource |
Ressource |
- Source:
Returns:
Le message d'interdiction éventuel (string vide sinon)
- Type
- string | undefined
(inner) getTokenValue(context, token) → {*}
Retourne la valeur du token en session et le supprime (donc faut choisir entre getToken et checkToken)
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
token |
string |
- Source:
Returns:
La valeur stockée ou undefined si le token n'était pas en session
- Type
- *
(inner) hasRole(role, context) → {*|data.roles|Object|settings.components.personne.roles|Object|Object}
Parameters:
Name | Type | Description |
---|---|---|
role |
||
context |
- Source:
Returns:
- Type
- * | data.roles | Object | settings.components.personne.roles | Object | Object
(inner) isAuteur(context, ressource) → {boolean|undefined}
Retourne true si l'utilisateur courant est auteur de la ressource
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
ressource |
Ressource |
- Source:
Returns:
- Type
- boolean | undefined
(inner) isContributeur(context, ressource) → {boolean|undefined}
Retourne true si l'utilisateur courant est contributeur de la ressource
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
ressource |
Ressource |
- Source:
Returns:
- Type
- boolean | undefined
(inner) isInGroupes(context, ressource) → {boolean}
Retourne true si l'utilisateur courant est membre d'un des groupes de la ressource
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
ressource |
Ressource |
- Source:
Returns:
- Type
- boolean
(inner) isInGroupesAuteurs(context, ressource) → {boolean}
Retourne true si l'utilisateur courant est membre d'un des groupes auteurs de la ressource
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
ressource |
Ressource |
- Source:
Returns:
- Type
- boolean
(inner) isLanClient(context) → {boolean}
Retourne true si le client a une ip locale ou privée
Parameters:
Name | Type | Description |
---|---|---|
context |
- Source:
Returns:
- Type
- boolean
(inner) isPublic(ressource) → {boolean}
Retourne true si la ressource est publique
Parameters:
Name | Type | Description |
---|---|---|
ressource |
Ressource | Ref |
- Source:
Returns:
- Type
- boolean
(inner) isSesamathClient(context, next)
Appelle next avec (error, isLocalOrSesamath), où isLocalOrSesamath vaut true si c'est un client
avec une ip locale ou dont le reverse est en (dev)sesamath.net
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
next |
function |
- Source:
(inner) refreshCurrentUser(context, next)
Rafraîchi la session d'après les données en cache ou en base
Parameters:
Name | Type | Description |
---|---|---|
context |
Context | |
next |
personneCallback |
- Source:
GET /api/personne/checkPid?pid=xxx&nom=yyy()
Vérifie qu'un pid correspond à un nom et retourne un user: {oid,pid,nom,prenom} ou un message d'erreur
GET /api/personne/current()
Renvoie le user courant et les liens pour le SSO
Retourne un objet
{
user: {pid, nom, prenom},
sso: {links: link[], name: string} // links peut être vide si le sso ne propose pas de liens (ça devrait pas arriver mais rien ne l'y oblige)
logoutUrl: string, // si on est authentifié
loginLinks: link[]
}
un link est de la forme {href: string, icon: string, value: string}
- Source:
GET /api/personne/me()
Affiche les infos du user courant, pour debug
- Source:
POST /api/personne/add()
Create / update une personne (poster un objet ayant les propriétés de Personne)
- Source: