OK, so i have my have my event listeners working now.

I was attempting to fire the event from a controller in a different plugin, 
and had not understood that you need to use the global event manager, and 
need to register the listeners in the bootstrap of the plugin that contains 
the listener.



On Friday, 22 August 2014 09:55:17 UTC+1, Rob Cowie wrote:
>
> I have read the chapter, but my populateUserPrefs function does not fire.
>
> Is any one able to flesh out the example, or tell me that actually I 
> cannot have a Table Model class implement EventListener?
>
>
>
> On Friday, 22 August 2014 04:36:03 UTC+1, Dr. Tarique Sani wrote:
>>
>> Event listeners are implementations of Cake\Event\EventListener interface
>>
>> also then you have to attach your event - something like
>>
>> // Attach the UserStatistic object to the Order's event manager
>> $statistics = new UserStatistic();
>> $this->Orders->eventManager()->attach($statistics);
>>
>> See 
>> http://book.cakephp.org/3.0/en/core-libraries/events.html#registering-listeners
>>  
>>
>> T
>>
>>
>>
>> On Thu, Aug 21, 2014 at 9:26 PM, Rob Cowie <[email protected]> wrote:
>>
>>> Hi all. I have read the cakephp book on events in version 3, and I 
>>> cannot seem to get it to work. I am missing a piece of comprehension. 
>>>
>>> I have the event dispatch code in a controller:
>>>
>>> $event = new Event('Controller.User.login', $this);
>>> $this->eventManager()->dispatch($event);
>>>
>>> and I have a model with the following code:
>>>
>>> public function implementedEvents() {
>>>     return [
>>>         'Controller.User.login' => 'populateUserPrefs',
>>>     ];
>>> }
>>>
>>> public function populateUserPrefs(Event $event, $user){
>>>     Log::write(
>>>         'info',
>>>         'Prefs User Login: '
>>>     );
>>> }
>>>
>>> But I am not hitting the populateUserPrefs function. I guess I need to 
>>> add some code somewhere to register the model as a listener, but I cannot 
>>> figure out how.
>>>
>>>
>>>  -- 
>>> Like Us on FaceBook https://www.facebook.com/CakePHP
>>> Find us on Twitter http://twitter.com/CakePHP
>>>
>>> --- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "CakePHP" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at http://groups.google.com/group/cake-php.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>>
>> -- 
>> =============================================================
>> The Conference Schedule Creator : http://shdlr.com
>>
>> PHP for E-Biz : http://sanisoft.com
>> ============================================================= 
>>
>

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.

Reply via email to