Example #1
0
 public function debug($request, $response, $args)
 {
     $server = ["headers" => $request->getHeaders(), "content_type" => $request->getContentType()];
     $res = ["server_info" => $server, "ip" => Http::getClientIP(), "version" => Config::get('version'), "reg_count" => Check::getIpRegCount(Http::getClientIP())];
     Logger::debug(json_encode($res));
     return $this->echoJson($response, $res);
 }
Example #2
0
 public function sendVerifyEmail($request, $response, $args)
 {
     $res = [];
     $email = $request->getParam('email');
     if (!Check::isEmailLegal($email)) {
         $res['ret'] = 0;
         $res['error_code'] = self::VerifyEmailWrongEmail;
         $res['msg'] = '邮箱无效';
         return $this->echoJson($response, $res);
     }
     // check email
     $user = User::where('email', $email)->first();
     if ($user != null) {
         $res['ret'] = 0;
         $res['error_code'] = self::VerifyEmailExist;
         $res['msg'] = "邮箱已经被注册了";
         return $this->echoJson($response, $res);
     }
     if (EmailVerify::sendVerification($email)) {
         $res['ret'] = 1;
         $res['msg'] = '验证代码已发送至您的邮箱,请在登录邮箱后将验证码填到相应位置.';
         return $this->echoJson($response, $res);
     }
     $res['ret'] = 0;
     $res['msg'] = '邮件发送失败,请联系管理员';
     return $this->echoJson($response, $res);
 }
 public function sendVerifyEmail($request, $response, $next)
 {
     $res = array();
     $email = $request->getParam('email');
     if (!Check::isEmailLegal($email)) {
         $res['ret'] = 0;
         $res['msg'] = '邮箱无效';
         return $this->echoJson($response, $res);
     }
     // check email
     $user = User::where('email', $email)->first();
     if ($user != null) {
         $res['ret'] = 0;
         $res['msg'] = "邮箱已经被注册了";
         return $this->echoJson($response, $res);
     }
     if (EmailVerify::sendVerification($email)) {
         $res['ret'] = 1;
         $res['msg'] = '验证代码已发送至您的邮箱,请在登录邮箱后将验证码填到相应位置.';
     } else {
         $res['ret'] = 0;
         $res['msg'] = '邮件发送失败,请联系管理员';
     }
     return $this->echoJson($response, $res);
 }
Example #4
0
 public function registerHandle($request, $response, $next)
 {
     $name = $request->getParam('name');
     $email = $request->getParam('email');
     $email = strtolower($email);
     $passwd = $request->getParam('passwd');
     $repasswd = $request->getParam('repasswd');
     $code = $request->getParam('code');
     // check code
     $c = InviteCode::where('code', $code)->first();
     if ($c == null) {
         $res['ret'] = 0;
         $res['msg'] = "邀请码无效";
         return $response->getBody()->write(json_encode($res));
     }
     // check email format
     if (!Check::isEmailLegal($email)) {
         $res['ret'] = 0;
         $res['msg'] = "邮箱无效";
         return $response->getBody()->write(json_encode($res));
     }
     // check pwd length
     if (strlen($passwd) < 8) {
         $res['ret'] = 0;
         $res['msg'] = "密码太短";
         return $response->getBody()->write(json_encode($res));
     }
     // check pwd re
     if ($passwd != $repasswd) {
         $res['ret'] = 0;
         $res['msg'] = "两次密码输入不符";
         return $response->getBody()->write(json_encode($res));
     }
     // check email
     $user = User::where('email', $email)->first();
     if ($user != null) {
         $res['ret'] = 0;
         $res['msg'] = "邮箱已经被注册了";
         return $response->getBody()->write(json_encode($res));
     }
     // do reg user
     $user = new User();
     $user->user_name = $name;
     $user->email = $email;
     $user->pass = Hash::passwordHash($passwd);
     $user->passwd = Tools::genRandomChar(6);
     $user->port = Tools::getLastPort() + 1;
     $user->t = 0;
     $user->u = 0;
     $user->d = 0;
     $user->transfer_enable = Tools::toGB(Config::get('defaultTraffic'));
     $user->invite_num = Config::get('inviteNum');
     $user->ref_by = $c->user_id;
     if ($user->save()) {
         $res['ret'] = 1;
         $res['msg'] = "注册成功";
         $c->delete();
         return $response->getBody()->write(json_encode($res));
     }
     $res['ret'] = 0;
     $res['msg'] = "未知错误";
     return $response->getBody()->write(json_encode($res));
 }
Example #5
0
 public function testGetRegIpLimit()
 {
     $count = Check::getIpRegCount('255.255.255.255');
     $this->assertEquals(0, $count);
 }