Account presentation
De Wiki.
Sommaire |
Principes
Le module Account permet de gérer des comptes utilisateurs sur le principe 'un compte, une adresse'.
Il propose en standard les fonctionnalités suivantes :
- Confirmation ou pas de la création du compte par retour d'email.
- Génération d'un nouveau mot de passe aléatoire en cas d'oubli.
- Renvoi possible vers une URL personnalisée au retour d'email de confirmation de création.
- Gestion automatisée du compte client si on ne veut pas qu'il y ait une zone "mon compte" où il pourrait le faire lui-même.
- Cryptage MD5 ou SHA1 des mots de passe avant stockage en BDD (le mot de passe est illisible après création, seule la version cryptée peut être comparée).
Fonctionnement
Le Contrôleur gère l'ensemble des action possibles autour de ce module au moyen de la variable <action> (GET ou POST).
Il effectue les créations, activations, vérifications, mises à jour et s'occupe d'informer les utilisateurs par email (au moyen d'un message préformaté si une vue personnalisée n'a pas été fournie pour le type de message concerné).
Une fois authentifié, la session de l'utilisateur est peuplée des valeurs suivantes :
- $_SESSION['account']['id']
- $_SESSION['account']['email']
Paramétrage
Les constantes suivantes permettent de paramétrer le module :
// MODULE ACCOUNT define("ACCOUNT_EDITABLE", true); // member handles his account data (my account pages) define("ACCOUNT_PWD_ENCRYPT", 'MD5'); // password encryption (<empty>/MD5/SHA1) define("ACCOUNT_ASYNC_ACTIVATE", true); // use account email activation procedure define("ACCOUNT_USE_ADDRESS", true); // use address extension to account data define("ACCOUNT_CHANGE_LOGIN", true); // member may edit his login email to change it define("ACCOUNT_ADMIN_EMAIL", 'webmaster@website.com'); // administrative email for account issues
Evolutions
Le module Account est à la base des services de gestion des comptes clients du module Webshop.
Il peut également bénéficier des possibilités d'héritage des classes pour développer des fonctionnalités plus personnalisées.