Détail du message 81561.2

Message numéro 2 dans le sujet Gestion des events (dispatchEvent).

  • 81561.2 en réponse à 81561.1 écrit par djoo_9

    05/11/2013 14:40


    Jean-Michel
    Titre : Community Manager
    Rang : Expert
    Bonjour djoo_9,

    Le fragment de code indiqué permet d'envoyer l'événement nommé par la constante self::USER_LOGIN_EVENT, pour $this avec le tableau de paramètres contenant la clé 'user'.

    La classe listener se situant dans un module, doit être déclarée dans le fichier "modules/<nomDuModule>/config/listeners.xml" (pour voir un exemple cf modules/order/config/listeners).
    La classe du listener doit impérativement contenir une méthode "public" nommée selon la nomenclature : on<nomEvenement> et prenant en paramètres, l'objet émetteur de l'événement et le tableau de paramètre.

    La classe de listener pointée dans le fichier en exemple se situe dans "modules/order/lib/listeners/UserLoginListener.class.php". Le but de ce listener est de persister le panier en base pour l'utilisateur et le merger avec un panier déjà en cours à sa connexion.

    Pour une meilleure réponse, pensez à indiquer la version sur laquelle vous rencontrez des difficultés, ainsi que son type (CMS ou eCommerce core).
    Pour tout problème d'installation indiquez le nom de l'hébergeur et s'il s'agit d'un serveur mutualisé ou dédié.
 
1471 membres
Aucun membre connecté