getAuthToken(); return $token ? $this->getUser($token) : $this->getGuest(); } public function getLoggedUser() { $token = $this->getAuthToken(); $filter = new BaseFilter(); $filter->checkAuthToken($token); $user = $this->getUser($token); $filter->checkAuthUser($user); return $user; } private function getAuthToken() { $token = null; if ($this->cookies->has('token')) { $cookie = $this->cookies->get('token'); $token = $cookie->getValue(); } return $token; } private function getGuest() { $guest = new UserModel(); $guest->id = 0; $guest->name = 'guest'; return $guest; } private function getUser($token) { $userRepo = new UserRepo(); $user = $userRepo->findById($token); return $user; } }