Changeset View
Changeset View
Standalone View
Standalone View
src/applications/auth/factor/PhabricatorSMSAuthFactor.php
| Show First 20 Lines • Show All 134 Lines • ▼ Show 20 Lines | final class PhabricatorSMSAuthFactor | ||||
| } | } | ||||
| public function processAddFactorForm( | public function processAddFactorForm( | ||||
| PhabricatorAuthFactorProvider $provider, | PhabricatorAuthFactorProvider $provider, | ||||
| AphrontFormView $form, | AphrontFormView $form, | ||||
| AphrontRequest $request, | AphrontRequest $request, | ||||
| PhabricatorUser $user) { | PhabricatorUser $user) { | ||||
| $token = $this->loadMFASyncToken($request, $form, $user); | $token = $this->loadMFASyncToken($provider, $request, $form, $user); | ||||
| $code = $request->getStr('sms.code'); | $code = $request->getStr('sms.code'); | ||||
| $e_code = true; | $e_code = true; | ||||
| if (!$token->getIsNewTemporaryToken()) { | if (!$token->getIsNewTemporaryToken()) { | ||||
| $expect_code = $token->getTemporaryTokenProperty('code'); | $expect_code = $token->getTemporaryTokenProperty('code'); | ||||
| $okay = phutil_hashes_are_identical( | $okay = phutil_hashes_are_identical( | ||||
| $this->normalizeSMSCode($code), | $this->normalizeSMSCode($code), | ||||
| ▲ Show 20 Lines • Show All 207 Lines • ▼ Show 20 Lines | private function loadUserContactNumber(PhabricatorUser $user) { | ||||
| if (count($contact_numbers) !== 1) { | if (count($contact_numbers) !== 1) { | ||||
| return null; | return null; | ||||
| } | } | ||||
| return head($contact_numbers); | return head($contact_numbers); | ||||
| } | } | ||||
| protected function newMFASyncTokenProperties(PhabricatorUser $user) { | protected function newMFASyncTokenProperties( | ||||
| PhabricatorAuthFactorProvider $providerr, | |||||
| PhabricatorUser $user) { | |||||
| $sms_code = $this->newSMSChallengeCode(); | $sms_code = $this->newSMSChallengeCode(); | ||||
| $envelope = new PhutilOpaqueEnvelope($sms_code); | $envelope = new PhutilOpaqueEnvelope($sms_code); | ||||
| $this->sendSMSCodeToUser($envelope, $user); | $this->sendSMSCodeToUser($envelope, $user); | ||||
| return array( | return array( | ||||
| 'code' => $sms_code, | 'code' => $sms_code, | ||||
| ); | ); | ||||
| Show All 23 Lines | |||||