Exemple #1
0
 public function initView()
 {
     if ($this->view === null || !$this->view instanceof View) {
         $module = $this->getRequest()->getModuleName();
         $paths = $this->getFrontController()->getControllerDirectory();
         $modulePath = dirname($paths[$module]);
         $viewBaseDir = $modulePath . DIRECTORY_SEPARATOR . 'views';
         $this->view = new View(array('basePath' => $viewBaseDir, 'encoding' => $this->defaultEncoding));
         $this->view->setTheme(Application::getTheme());
         $this->view->setModuleName($module);
     }
     return $this->view;
 }
Exemple #2
0
 /**
  * Serve the page
  * @return App
  */
 public function serve()
 {
     \View::initTwigEnv();
     \View::set('config', $this->getConfig());
     if (!defined('INSTALL')) {
         $menus = $this->getModel('Menu');
         \View::set('menu', $menus->getMenu());
         $player = \App::getModel('session');
         \View::set('loggedIn', $player->isLoggedIn());
         \Acl::setPlayer($player);
         $role = \Acl::getRoles();
         if (!empty($role)) {
             \View::set('playerRole', $role[0]->metadata['role_id']);
         }
     }
     if ($this->adminTheme) {
         \View::setTheme(\Config::get('site.adminTheme'));
     }
     if ($this->view->template == '') {
         \View::setTemplate($this->module . '.twig');
     }
     echo \View::render();
     return $this;
 }