« 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
Aucun résumé des modifications
Ligne 35 : Ligne 35 :


Renvoie true si l'utilisateur actuellement loggué dispose de la permission envoyée en argument. False sinon.
Renvoie true si l'utilisateur actuellement loggué dispose de la permission envoyée en argument. False sinon.
== Documentation des modules pour les utilisateurs ==
Certaines commandes doivent être expliquées aux utilisateurs les plus débutants. La documentation de ces commandes peut être hébergée sur ce wiki, ce qui facilite la mise à jour du contenu. Pour accéder au contenu du wiki, Reloaded peut utiliser l'API de MediaWiki. Voici un exemple de page :
[py]

Version du 30 novembre 2023 à 21:56

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.

Vérifier les permissions d'un utilisateur

UserService::getInstance()->isUserAllowed($permission);

Renvoie true si l'utilisateur actuellement loggué dispose de la permission envoyée en argument. False sinon.

Documentation des modules pour les utilisateurs

Certaines commandes doivent être expliquées aux utilisateurs les plus débutants. La documentation de ces commandes peut être hébergée sur ce wiki, ce qui facilite la mise à jour du contenu. Pour accéder au contenu du wiki, Reloaded peut utiliser l'API de MediaWiki. Voici un exemple de page : [py]