getRequest(); if(!self::checkClient($req->get("client_id"), $req->get("client_secret"))) die(json_encode(['error'=>'forbidden'])); $email = trim($req->getPost("email")); if(!check_email($email)) die(json_encode(['status'=>'error','message'=>'Некорректный Email'])); if(\CUser::GetList($b,$o,["=EMAIL"=>$email])->Fetch()) die(json_encode(['status'=>'error','message'=>'Email существует'])); $pass = $req->getPost("password"); $v = self::validatePassword($pass); if($v !== true) die(json_encode(['status'=>'error','message'=>$v])); $uid = (new \CUser)->Add(["LOGIN"=>$email,"EMAIL"=>$email,"NAME"=>$req->getPost("name"),"LAST_NAME"=>$req->getPost("last_name"),"PASSWORD"=>$pass,"CONFIRM_PASSWORD"=>$pass,"ACTIVE"=>"Y","GROUP_ID"=>[2,3,4]]); if($uid) { $code = bin2hex(random_bytes(16)); self::getHlEntity('sso_codes')::add(['UF_CODE'=>$code, 'UF_CLIENT_ID'=>$req->get("client_id"), 'UF_USER_ID'=>$uid, 'UF_EXPIRES'=>DateTime::createFromTimestamp(time()+60)]); self::audit("USER_REGISTERED", $req->get("client_id"), $uid); echo json_encode(['status'=>'success','code'=>$code]); } } }