public function isOnline($user_id) { if (isset($this->_online_status_cached[$user_id])) { return $this->_online_status_cached[$user_id]; } // Check session for current user exists $sessions = new UsersSessionEntityRepository(); $sessions->setWhereUserId($user_id); $sessions->setLimit(1); $sessions->addWhereFieldIsHigher('ts', NOW - 600); // 10 minutes return $this->_online_status_cached[$user_id] = $sessions->hasAnyObjectInCollection(); }