X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Fapiaccountregister.php;h=0d018007cdd5f1aec35d38bc58f241b3483ce759;hb=64ac344efab356ffc9debe2ace001ebeb91b7c6f;hp=be66710d80ef1d3fb60519612c1f2f004fa9b611;hpb=db7ef52d1352fa3fa49ddf85dcd2bb124c00d303;p=quix0rs-gnu-social.git diff --git a/actions/apiaccountregister.php b/actions/apiaccountregister.php index be66710d80..0d018007cd 100644 --- a/actions/apiaccountregister.php +++ b/actions/apiaccountregister.php @@ -1,5 +1,4 @@ code)) { - $this->invite = Invitation::staticGet('code', $this->code); + $this->invite = Invitation::getKV('code', $this->code); if (empty($this->invite)) { // TRANS: Client error displayed when trying to register to an invite-only site without a valid invitation. $this->clientError(_('Sorry, invalid invitation code.'), 401); @@ -152,34 +151,29 @@ class ApiAccountRegisterAction extends ApiAction // TRANS: Form validation error displayed when trying to register with non-matching passwords. $this->clientError(_('Passwords do not match.'), 400); } else { - - // annoy spammers - sleep(7); - - if ($user = User::register(array('nickname' => $nickname, - 'password' => $password, - 'email' => $email, - 'fullname' => $fullname, - 'homepage' => $homepage, - 'bio' => $bio, - 'location' => $location, - 'code' => $code))) { - if (!$user) { - // TRANS: Form validation error displayed when trying to register with an invalid username or password. - $this->clientError(_('Invalid username or password.'), 400); - } - - Event::handle('EndRegistrationTry', array($this)); - - $this->initDocument('json'); - $this->showJsonObjects($this->twitterUserArray($user->getProfile())); - $this->endDocument('json'); - - } else { - // TRANS: Form validation error displayed when trying to register with an invalid username or password. - $this->clientError(_('Invalid username or password.'), 400); - } - } + + // annoy spammers + sleep(7); + + try { + $user = User::register(array('nickname' => $nickname, + 'password' => $password, + 'email' => $email, + 'fullname' => $fullname, + 'homepage' => $homepage, + 'bio' => $bio, + 'location' => $location, + 'code' => $this->code)); + Event::handle('EndRegistrationTry', array($this)); + + $this->initDocument('json'); + $this->showJsonObjects($this->twitterUserArray($user->getProfile())); + $this->endDocument('json'); + + } catch (Exception $e) { + $this->clientError($e->getMessage(), 400); + } + } } /** @@ -197,7 +191,7 @@ class ApiAccountRegisterAction extends ApiAction if (!$email || strlen($email) == 0) { return false; } - $user = User::staticGet('email', $email); + $user = User::getKV('email', $email); return is_object($user); }