« FAQ : Développement de modules » : différence entre les versions

De HackBBS
Aller à la navigation Aller à la recherche
Tortukitu (discussion | contributions)
Aucun résumé des modifications
Tortukitu (discussion | contributions)
Aucun résumé des modifications
Ligne 17 : Ligne 17 :
SessionService::getSessionVarForModule($instancedeIModule, "nomVariableDeSession");
SessionService::getSessionVarForModule($instancedeIModule, "nomVariableDeSession");
</code>
</code>
== Récupérer l'utilisateur actuellement identifié ==
SessionService::getAuthenticatedUsed();
Renvoie un objet du type User contenant les informations de l'utilisateur actuellement loggé.
== Vérifier si un utilisateur est connecté ==
UserService::getInstance()->isUserLoggedIn();
Renvoie true si un utilisateur est loggué, false sinon.

Version du 18 septembre 2013 à 08:36

Utiliser les sessions

Le noyau gère une pseudo isolation des variables de session. Ceci empèche un module d'écraser accidentellement une variable de session d'un autre module.

Il est donc prohibé d'utiliser directement le $_SESSION de php. Pour setter / getter des variables de session, vous devez passer le service SessionService.

Pour setter une variable de session, il vous faudra une instance de votre implémentation de IModule ou a défaut le nom de la classe qui implémente IModule dans votre module.


/*Sette une variable de session*/

SessionService::setSessionVarForModule($instancedeIModule, "nomVariableDeSession", $variableDeSession);

/*Recupere une variable de session*/

SessionService::getSessionVarForModule($instancedeIModule, "nomVariableDeSession");

Récupérer l'utilisateur actuellement identifié

SessionService::getAuthenticatedUsed();

Renvoie un objet du type User contenant les informations de l'utilisateur actuellement loggé.

Vérifier si un utilisateur est connecté

UserService::getInstance()->isUserLoggedIn();

Renvoie true si un utilisateur est loggué, false sinon.