|
1 | | -<?php declare(strict_types=1); |
| 1 | +<?php |
| 2 | + |
| 3 | +declare(strict_types=1); |
2 | 4 |
|
3 | 5 | namespace SilverStripe\MFA\Authenticator; |
4 | 6 |
|
@@ -179,7 +181,9 @@ public function startRegistration(): HTTPResponse |
179 | 181 | $sessionMember = $store ? $store->getMember() : null; |
180 | 182 | $loggedInMember = Member::currentUser(); |
181 | 183 |
|
182 | | - if (($loggedInMember === null && $sessionMember === null) |
| 184 | + if ( |
| 185 | + ($loggedInMember === null |
| 186 | + && $sessionMember === null) |
183 | 187 | || !$this->getSudoModeService()->check($this->controller->getSession()) |
184 | 188 | ) { |
185 | 189 | return $this->jsonResponse( |
@@ -242,7 +246,9 @@ public function finishRegistration(): HTTPResponse |
242 | 246 | $sessionMember = $store ? $store->getMember() : null; |
243 | 247 | $loggedInMember = Member::currentUser(); |
244 | 248 |
|
245 | | - if (($loggedInMember === null && $sessionMember === null) |
| 249 | + if ( |
| 250 | + ($loggedInMember === null |
| 251 | + && $sessionMember === null) |
246 | 252 | || !$this->getSudoModeService()->check($this->controller->getSession() ?: new Session([])) |
247 | 253 | ) { |
248 | 254 | return $this->jsonResponse( |
@@ -275,7 +281,9 @@ public function finishRegistration(): HTTPResponse |
275 | 281 | // required to log in though. The "mustLogin" flag is set at the beginning of the MFA process if they have at |
276 | 282 | // least one method registered. They should always do that first. In that case we should assert |
277 | 283 | // "isLoginComplete" |
278 | | - if ((!$mustLogin || $this->isVerificationComplete($store)) |
| 284 | + if ( |
| 285 | + (!$mustLogin |
| 286 | + || $this->isVerificationComplete($store)) |
279 | 287 | && $enforcementManager->hasCompletedRegistration($sessionMember) |
280 | 288 | ) { |
281 | 289 | $this->doPerformLogin($sessionMember); |
@@ -323,8 +331,11 @@ public function startVerification(): HTTPResponse |
323 | 331 | $request = $this->getRequest(); |
324 | 332 | $store = $this->getStore(); |
325 | 333 | // If we don't have a valid member we shouldn't be here, or if sudo mode is not active yet. |
326 | | - if (!$store || !$store->getMember() || |
327 | | - !$this->getSudoModeService()->check($this->controller->getSession() ?: new Session([]))) { |
| 334 | + if ( |
| 335 | + !$store |
| 336 | + || !$store->getMember() |
| 337 | + || !$this->getSudoModeService()->check($this->controller->getSession() ?: new Session([])) |
| 338 | + ) { |
328 | 339 | return $this->jsonResponse(['message' => 'Forbidden'], 403); |
329 | 340 | } |
330 | 341 |
|
@@ -428,7 +439,8 @@ public function redirectAfterSuccessfulLogin() |
428 | 439 | // This is potentially redundant logic as the member should only be logged in if they've fully registered. |
429 | 440 | // They're allowed to login if they can skip - so only do assertions if they're not allowed to skip |
430 | 441 | // We'll also check that they've registered the required MFA details |
431 | | - if (!$enforcementManager->canSkipMFA($member) |
| 442 | + if ( |
| 443 | + !$enforcementManager->canSkipMFA($member) |
432 | 444 | && !$enforcementManager->hasCompletedRegistration($member) |
433 | 445 | ) { |
434 | 446 | $member->logOut(); |
|
0 commit comments