示例#1
0
 /**
  * Save current user to online cache
  */
 public function online()
 {
     // Skip when signing in/out to avoid strange Fatal error
     if (strpos(URI::instance()->string(), 'sign') === 0) {
         return;
     }
     $user = Visitor::instance()->get_user();
     $online = new Online_User_Model($_SESSION['session_id']);
     if (!$online->loaded()) {
         $online->session_id = $_SESSION['session_id'];
     }
     $online->last_activity = $_SESSION['last_activity'];
     $online->user_id = $user ? $user->id : null;
     try {
         $online->save();
     } catch (ORM_Validation_Exception $e) {
     }
 }