diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index 79146eb5..1550fe42 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -60,24 +60,12 @@ parameters: count: 1 path: src/Model/Behavior/LinkSocialBehavior.php - - - message: '#^Access to an undefined property Cake\\Datasource\\EntityInterface\:\:\$activation_date\.$#' - identifier: property.notFound - count: 1 - path: src/Model/Behavior/RegisterBehavior.php - - message: '#^Access to an undefined property Cake\\Datasource\\EntityInterface\:\:\$active\.$#' identifier: property.notFound count: 1 path: src/Model/Behavior/RegisterBehavior.php - - - message: '#^Access to an undefined property Cake\\Datasource\\EntityInterface\:\:\$token_expires\.$#' - identifier: property.notFound - count: 1 - path: src/Model/Behavior/RegisterBehavior.php - - message: '#^Access to an undefined property Cake\\Datasource\\EntityInterface\:\:\$validated\.$#' identifier: property.notFound diff --git a/src/Model/Behavior/RegisterBehavior.php b/src/Model/Behavior/RegisterBehavior.php index a23453b4..f663e64a 100644 --- a/src/Model/Behavior/RegisterBehavior.php +++ b/src/Model/Behavior/RegisterBehavior.php @@ -128,9 +128,10 @@ public function activateUser(EntityInterface $user) if ($user->active) { throw new UserAlreadyActiveException(__d('cake_d_c/users', 'User account already validated')); } - $user->activation_date = new \DateTime(); - $user->token_expires = null; - $user->active = true; + $user->set('token', null); + $user->set('token_expires', null); + $user->set('activation_date', new \DateTime()); + $user->set('active', true); return $this->_table->save($user); } diff --git a/tests/TestCase/Controller/Traits/Integration/RegisterTraitIntegrationTest.php b/tests/TestCase/Controller/Traits/Integration/RegisterTraitIntegrationTest.php index 9c373979..2663f030 100644 --- a/tests/TestCase/Controller/Traits/Integration/RegisterTraitIntegrationTest.php +++ b/tests/TestCase/Controller/Traits/Integration/RegisterTraitIntegrationTest.php @@ -123,7 +123,7 @@ public function testRegisterPostOkay() //If access again get error $this->get($url); $this->assertRedirect('/login'); - $this->assertFlashMessage('Token already expired'); + $this->assertFlashMessage('Invalid token or user account already validated'); } /** diff --git a/tests/TestCase/Model/Behavior/RegisterBehaviorTest.php b/tests/TestCase/Model/Behavior/RegisterBehaviorTest.php index 7008c25c..54d5476c 100644 --- a/tests/TestCase/Model/Behavior/RegisterBehaviorTest.php +++ b/tests/TestCase/Model/Behavior/RegisterBehaviorTest.php @@ -304,6 +304,7 @@ public function testActiveUserRemoveValidationToken() $result = $this->Behavior->activateUser($user); $this->assertSame($result, $user); + $this->assertNull($user->token); $this->assertNull($user->token_expires); $this->assertTrue($user->active); $this->assertInstanceOf(\DateTime::class, $user->activation_date);