function initialize() { CSR::addEvent(EVENT_APPLICATION_START, array('DevelopTools', 'applicationStartHandler')); }
function mvcActionPhase() { $dispatcher =& CSR::get('dispatcher'); $parsed = $dispatcher->getParsedParams(); list($targetController, $targetAction) = explode('/', $parsed['target']); CSR::set('controllerName', $targetController); CSR::set('actionName', $targetAction); $arguments = isset($parsed['arguments']) ? $parsed['arguments'] : null; if (!($controllerClassName = CSR_Controller::loadController($targetController))) { return CSR_Controller::_missingController(); } // Private action if ($targetAction[0] === '_') { return CSR_Controller::_privateAction(); } $view =& CSR::set('view', new CSR_View()); $controller =& CSR::set('controller', new $controllerClassName()); CSR::addEvent(EVENT_BEFORE_ACTION, array(&$controller, 'beforeAction')); CSR::addEvent(EVENT_AFTER_ACTION, array(&$controller, 'afterAction')); CSR::addEvent(EVENT_BEFORE_RENDER, array(&$controller, 'beforeRender')); CSR::addEvent(EVENT_AFTER_RENDER, array(&$controller, 'afterRender')); $controller->_beforeActionResults = CSR::triggerEvent(EVENT_BEFORE_ACTION); if ($controller->_isExecutable() && !$controller->_executeAction($targetAction, $arguments)) { return CSR_Controller::_undefinedAction(); } CSR::triggerEvent(EVENT_AFTER_ACTION); }