attach('bootstrap', 'bootstrap', array($this, 'initializeView'), 100); } public function getAutoloaderConfig() { return array( 'Zend\Loader\ClassMapAutoloader' => array( __DIR__ . '/autoload_classmap.php', ), 'Zend\Loader\StandardAutoloader' => array( 'namespaces' => array( __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__, ), ), ); } public function getConfig() { return include __DIR__ . '/config/module.config.php'; } public function initializeView($e) { $app = $e->getParam('application'); $locator = $app->getLocator(); $config = $e->getParam('config'); $view = $this->getView($app); $viewListener = $this->getViewListener($view, $config); $app->events()->attachAggregate($viewListener); $events = StaticEventManager::getInstance(); $viewListener->registerStaticListeners($events, $locator); } protected function getViewListener($view, $config) { if ($this->viewListener instanceof View\Listener) { return $this->viewListener; } $viewListener = new View\Listener($view, $config->layout); $viewListener->setDisplayExceptionsFlag($config->display_exceptions); $this->viewListener = $viewListener; return $viewListener; } protected function getView($app) { if ($this->view) { return $this->view; } $locator = $app->getLocator(); $view = $locator->get('view'); $url = $view->plugin('url'); $url->setRouter($app->getRouter()); $view->plugin('doctype')->setDoctype('HTML5'); $view->plugin('headTitle')->setSeparator(' - ') ->setAutoEscape(false) ->append('ZF2 Skeleton Application'); $basePath = $app->getRequest()->getBaseUrl(); $view->plugin('headLink')->appendStylesheet($basePath . '/css/bootstrap.min.css'); $html5js = ''; $view->plugin('placeHolder')->__invoke('html5js')->set($html5js); $favicon = ''; $view->plugin('placeHolder')->__invoke('favicon')->set($favicon); $this->view = $view; return $view; } }