public function __construct($options = array()) { parent::__construct($options); // Schedule: Update the users activity in the active users table Event::add("framework.router.beforehooks.after", function ($name, $parameters) { $session = Registry::get('session'); $user = $session->get('user'); $time = date("Y-m-d H:i:s"); if ($user) { // @todo REPLACE INTO very Mysql specific build merge method for alternate db Database::replace("REPLACE INTO user_active VALUES (:user, :time)", array(':user' => $user, ':time' => $time)); } }); }
public function __construct($options = array()) { parent::__construct($options); // Schedule: Load user from session Event::add("framework.router.beforehooks.before", function ($name, $parameters) { $session = Registry::get('session'); $controller = Registry::get('controller'); $user = $session->get('user'); if ($user) { $controller->user = \User::first(array(array('id', '=', $user))); $acl = new \Acl($user); $controller->user->userPerms = $acl->perms; } }); // Shedule: Save user to session Event::add("framework.router.afterhooks.after", function ($name, $parameters) { $session = Registry::get('session'); $controller = Registry::get('controller'); if ($controller->user) { $session->set('user', $controller->user->id); } }); }