Hi All,
I have been working since 5 months in Yii framework. I am quite confused how to do coding for event handling from controller, let me tell you how much i have understood about Event handling in Yii.
[size="2"]1. Events are like to be generated in between any action for example, if a user get registered after registration he must be notified by an email. method actionRegister() in the controller.[/size]
-
The event are written inside a component (e.g. Data) and the event methods are prefixed by "on" like onAfterRegiter()
-
CONFUSION : What does the code below means
class Data extends CComponent
{
public function onAfterRegister($event)
{
$this->raiseEvent('onAfterRegister', $event);
}
}
in the above code the "[size="2"]public function onAfterRegister($event)[/size][size="2"]" is itself an event handler and we are invoking it with the statement [/size]
[size=“2”]$this->raiseEvent(‘onAfterRegister’, $event); inside it![/size]
[size="2"]4. CONFUSION : In the actionRegister() from the controller we are writing like this [/size]
public function actionRegister()
{
$e = new CEvent($this); // creating an object of event
$data = new Data; // initiate component
[size="2"] [/size]
// what does it means
$data->onClicked = function ($event) {
echo "Hi";
};
// firing the event
$data->onClicked($e); // out put is "Hi"
[size="2"]i followed [/size]This wiki post
[size="2"]Any one help me with the correct procedure and understand how its working…[/size]