/** * 编辑用户 * @param [string] $userInfo [存在用户token中的信息,方便重新构造token] * @param [string] $newFile [新的用户图片] * @return [type] [description] */ public function userEdit($token, $userInfo, $newname, $newFile) { //对修改的名字 if ($newname != '' && $newname != $userInfo['uname']) { if (!UserHelper::nameCheck($newname)) { return self::ERROR_NAME; } $res = $this->swoole->checkUserName($newname, $userInfo['uid']); if ($res['data'] == '1') { return self::EXIST_NAME; } } else { $newname = $userInfo['uname']; } if (!empty($newFile)) { $picInfo = Common::makePath($this->di['sysconfig']['userPic'], $userInfo['mobi']); $pic = $picInfo['picUrl']; } else { $pic = $userInfo['pic']; } $res = $this->swoole->modifyUser($newname, $userInfo['uid'], $pic); if ($res['data'] == '1') { if (!empty($newFile)) { //上传图片 if ($this->swoole->uploadAvatar($newFile['tmp_name'], filesize($newFile['tmp_name']), $picInfo['rename'], $picInfo['path'])) { //更新用户的缓存头像 $userInfo['pic'] = $this->di['sysconfig']['userPicServer'] . $picInfo['picUrl']; } else { return self::FAILED_UPLOAD; } } $redisObj = new RedisLib($this->di); $redis = $redisObj->getRedis(); $redis->setex('token:' . $token, $this->di['sysconfig']['tokenTime'], $userInfo); return array('flag' => (string) self::SUCCESS, 'u_pic' => $userInfo['pic']); } else { return self::FAILED_UPDATE; } }
/** * [第三方注册] * @param [string] $session [用于证明来自第三方登录的session] * @param [string] $uTags [第三方uid] * @param [string] $deviceToken [用户手机的设备标签] * @param [string] $mobi [用户手机号] * @param [string] $name [用户名] * @param [string] $pass [密码] * @param [string] $pic [用户头像url] * @param [string] $file [图片二进制流] * @return [type] [description] */ public function reg($session, $uTags, $deviceToken, $mobi, $name, $pass, $pic, $file, $type) { //用户session,判断是否来自第三方登录 $session = $this->redis->get($session); if ($session == FALSE || $session != $uTags) { return self::ILLEGAL; } $row = $this->swoole->getUserInfoByMobi($mobi); if (!empty($row['data'])) { return self::EXIST_MOBILE; } //如果有图片流,则进行存储图片的操作 if (!empty($file['file'])) { $picInfo = Common::makePath($this->di['sysconfig']['userPic'], $mobi); $userInfo['pic'] = $picInfo['picUrl']; } else { //没有图片流,上传用户的第三方头像 $userInfo['pic'] = $pic; } //注册得到用户id $uid = $this->oauthFactory->register($this->plat, $mobi, Common::substrCut($name, 12), $pass, $uTags, $userInfo['pic'], $_SERVER['REQUEST_TIME']); //删除session $this->redis->del($session); //上传图片 if (!empty($file['file'])) { $this->swoole->uploadAvatar($file['file']['tmp_name'], filesize($file['file']['tmp_name']), $picInfo['rename'], $picInfo['path']); } //检查用户在注册之前是否被添加过亲人并进行操作 self::checkNewUser($uid['data'], $mobi); return $this->_showLoginData($mobi, $deviceToken, $type); }