Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ZF2 - Get controller name into layout/views
- public function postDispatch(Zend_Controller_Request_Abstract $request)
- {
- $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
- if (null === $viewRenderer->view) {
- $viewRenderer->initView();
- }
- $view = $viewRenderer->view;
- $view->module = $request->getModuleName();
- $view->controller = $request->getControllerName();
- $view->action = $request->getActionName();
- }
- public function renderView(MvcEvent $e)
- {
- $response = $e->getResponse();
- if (!$response->isSuccess()) {
- return;
- }
- $routeMatch = $e->getRouteMatch();
- $controller = $routeMatch->getParam('controller', 'index');
- $action = $routeMatch->getParam('action', 'index');
- $script = $controller . '/' . $action . '.phtml';
- // Assign these to the view
- $vars = $e->getResult();
- if (is_scalar($vars)) {
- $vars = array('content' => $vars);
- } elseif (is_object($vars) && !$vars instanceof ArrayAccess) {
- $vars = (array) $vars;
- }
- // Just before the layout is rendered... add the vars (already being passed)
- $vars['controller'] = $controller;
- $vars['action'] = $action;
- $content = $this->view->render($script, $vars);
- $e->setParam('content', $content);
- return $content;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement