コード例 #1
0
ファイル: UserModule.php プロジェクト: nicklos17/appserver
 /**
  * 编辑用户
  * @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;
     }
 }
コード例 #2
0
ファイル: OauthModule.php プロジェクト: nicklos17/appserver
 /**
  * [第三方注册]
  * @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);
 }