/** * @param string $userName * * @return WiseChatUser */ private function createUserAndSave($userName) { WiseChatContainer::load('model/WiseChatUser'); // construct username and user object: $user = new WiseChatUser(); $user->setName($userName); $user->setSessionId($this->userSessionDAO->getSessionId()); $user->setIp($this->getRemoteAddress()); if ($this->options->isOptionEnabled('collect_user_stats', true)) { $this->fillWithGeoDetails($user); } // save user in DB and in the session: $this->usersDAO->save($user); $this->userSessionDAO->set(self::SESSION_KEY_USER_ID, $user->getId()); return $user; }
/** * Converts raw object into WiseChatUser object. * * @param stdClass $rawUserData * * @return WiseChatUser */ private function populateUserData($rawUserData) { $user = new WiseChatUser(); if (strlen($rawUserData->id) > 0) { $user->setId(intval($rawUserData->id)); } if (strlen($rawUserData->wp_id) > 0) { $user->setWordPressId(intval($rawUserData->wp_id)); } $user->setName($rawUserData->name); $user->setSessionId($rawUserData->session_id); $user->setIp($rawUserData->ip); $user->setData(json_decode($rawUserData->data, true)); return $user; }