public function __construct() { Hook::run("controller_construct_start", $this); $scriptDir = dirname($_SERVER["SCRIPT_FILENAME"]); $smarty = new \Smarty(); $smarty->setCompileDir($scriptDir . "/smarty/templates_c/"); $smarty->setConfigDir($scriptDir . "/smarty/configs/"); $smarty->setCacheDir($scriptDir . "/smarty/cache/"); $smarty->addPluginsDir($scriptDir . "/smarty/plugins/"); $smarty->addTemplateDir($scriptDir . "/app/views"); $this->smarty = $smarty; $this->errors = array(); $this->success = array(); $this->info = array(); $this->referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ""; $this->breadcrumbs = array(); $this->base_url = BASE_URL; $this->app_name = APP_NAME; $this->loadFlash(); Hook::run("controller_construct_end", $this); }
<?php use session\Session; View::addTemplatesDir(__DIR__ . "/views"); Controller::addControllersDir(__DIR__ . "/controllers"); Doctrine_Core::loadModels(dirname(__FILE__) . '/models'); \hook\Hook::add("controller_construct_end", function ($key, $controller) { session_name(COOKIE_PREFIX . "login"); session_save_path(__DIR__ . "/sessions"); session_start(); $usertable = Doctrine::getTable("User"); $user = Session::issetKey('id_user') ? $usertable->find(Session::get('id_user')) : false; if (!$user) { $user = new User(); } $controller->user = $user; User::$logged_user = $user; $controller->isLoggedIn = User::isLoggedIn(); $controller->isAdmin = User::isAdmin(); });