(Yaf >=1.0.0)
Yaf_Plugin_Abstract::preDispatch — Hook before each dispatch
$request, Yaf_Response_Abstract $response): voidThis hook is triggered before each dispatch iteration in the dispatch loop. A dispatch loop may run several iterations, so this hook may be called more than once per request.
requestThe Yaf_Request_Abstract instance being dispatched.
responseThe Yaf_Response_Abstract instance.
No value is returned.
Example #1 Yaf_Plugin_Abstract::preDispatch() example
<?php
class LayoutPlugin extends Yaf_Plugin_Abstract
{
public function preDispatch(Yaf_Request_Abstract $request, Yaf_Response_Abstract $response)
{
/* pick the template directory based on the module, right
* before the action is dispatched */
$view = Yaf_Dispatcher::getInstance()->getView();
if ($request->getModuleName() == "Admin") {
$view->setScriptPath(APPLICATION_PATH . "/modules/admin/views");
}
}
}
/* plugins are registered in the bootstrap */
class Bootstrap extends Yaf_Bootstrap_Abstract
{
public function _initPlugin(Yaf_Dispatcher $dispatcher)
{
$dispatcher->registerPlugin(new LayoutPlugin());
}
}
?>