/** * Metodo que muestra los modulos vista al usuario. */ public function render() { global $urlSite; $view = \VIEWS; if ($this->request->isAdminPanel()) { $view = \VIEWS_ADMIN; } elseif ($this->request->isTheme()) { $this->nameTheme = Option::selectByName('optionTheme')->getOptionValue(); $view = \THEMES . $this->nameTheme . \DIRECTORY_SEPARATOR; } $view .= $this->nameView . '.php'; //En caso de error. if (!\is_readable($view)) { \header("Location: {$urlSite}"); exit; } //Se obtiene los datos enviados a la vista. if (\is_array($this->data)) { \extract($this->data, EXTR_PREFIX_INVALID, 'softn'); } //Array con la ruta de los modulos vista a incluir. $viewsRequire = \call_user_func([$this, $this->nameMethodViews], $view); foreach ($viewsRequire as $value) { require $value; } }
/** * Metodo que obtiene los datos configurables de la aplicación. * @global string $urlSite */ private function optionData() { global $urlSite; $this->data['data']['siteTitle'] = Option::selectByName('optionTitle')->getOptionValue(); $this->data['data']['siteUrl'] = Option::selectByName('optionSiteUrl')->getOptionValue(); $urlSite = $this->data['data']['siteUrl']; }