joomlaEncore un article sur Joomla! 1.5 et son framework. Alors pourquoi autant d’articles sur ce CMS ? Tout simplement car je suis en train de développer un gros site basé sur ce dernier dans mon entreprise. Du coup j’ai pu me familiariser pus profondément avec cet outil puissant.

Nous allons aborder un thème très utile lorsque vous souhaitez créer des modules ou composants ou même plugins dans Joomla! 1.5. Il s’agit de travailler avec les données liées à la session de l’utilisateur connecté sur votre site. Ainsi vous pourrez effectuer des scripts en fonction du statut de l’utilisateur (registered,redactor etc…) ou encore affiché simplement son pseudo, son nom, son adresse mail etc.

Pour commencer vous devez créer une instance de la class JFactory en appelant la méthode getUser(), comme suit :

$UserInfo =& JFactory::getUser();

Ensuite vous n’avez plus qu’à utiliser cet objet pour ressortir chacune des informations qui vous intéressent :

echo $UserInfo->id; //Affichera l'id de l'utilisateur
echo $UserInfo->name; //Affichera le nom de l'utilisateur
echo $UserInfo->username; //Affichera le pseudo de
l'utilisateur
echo $UserInfo->email //Affichera son addresse e-mail
echo $UserInfo->password //Le mot de passe crypté de
l'utilisateur
echo $UserInfo->usertype //Permet de connaitre le
statut de l'utilisateur (registered, administrator etc.)
echo $UserInfo->gid //L'id du statut auquel il
appartient (si le statut Administrator est enregistré
avec l'id 1 dans la base de données, alors
echo $UserInfo->gid affichera 1)
echo $UserInfo->registerDate //Affiche la date a
laquelle l'utilisateur s'est enregistré sur le site
echo $UserInfo->lastvisitDate //Affiche la date
de dernière visite de l'utilisateur sur le site
echo $UserInfo->block //Affiche 1 si l'utilisateur
est bloqué (banni du site) ou 0 s'il ne l'est pas
echo $UserInfo->guest //Affiche 1 si l'utilisateur
est un simple visiteur sur le site, 0 s'il est membre.

A partir de la on pourrait imaginer un script qui testerait si l’utilisateur est enregistré sur le site et qui auquel cas afficherait son nom, son pseudo, la date à laquelle il s’est inscrit sur le site et la date de sa dernière visite (le script en entier):

//On créer l'objet $UserInfo
$UserInfo =& JFactory::getUser();
//Si l'utilisateur est enregistré on lui écrit ses informations
if(!$UserInfo->guest)
{
echo "Salut" . $UserInfo->name . " ou plutôt
 " . $UserInfo->username . "<br />";
echo "Tu es membre de ce site depuis le
 " . $UserInfo->registerDate . " et ta
dernière visite date du " . $UserInfo->lastvisitDate;
//Si c'est un simple visiteur on lui demande de s'inscrire
}else{
echo "Vous n'êtes pas autorisé a
voir cette page, veuillez vous inscrire, merci";
}

Et voilà, ce n’est qu’un exemple, vous pouvez faire preuve de plus d’imagination.

Pour toute questions ça se passe à la suite de l’article, merci.