public function testDelete() { $testEntity = UserEmailVerificationTest::createTestEmailVerification(); self::$entityManager->persist($testEntity); self::$entityManager->flush(); $entities = self::$entityManager->createQuery('SELECT e FROM Rexmac\\Zyndax\\Entity\\UserEmailVerification e')->execute(); $this->assertEquals(1, count($entities)); UserEmailVerificationService::delete($testEntity); $entities = self::$entityManager->createQuery('SELECT e FROM Rexmac\\Zyndax\\Entity\\UserEmailVerification e')->execute(); $this->assertEquals(0, count($entities)); }
/** * Email verification action * * @return void */ public function verifyemailAction() { $verificationToken = $this->getRequest()->getParam('token', null); if (null === $verificationToken || '' == $verificationToken) { throw new UserControllerException('Invalid verification token'); } if (null == ($emailVerification = UserEmailVerificationService::findOneByToken($verificationToken))) { throw new UserControllerException('Unknown verification token'); } // Update user $user = $emailVerification->getUser(); $user->setActive(true); UserService::update(); // Track changes UserEditEventService::create(array('user' => $user, 'editor' => $user, 'ip' => $this->getRequest()->getServer('REMOTE_ADDR'), 'date' => new DateTime(), 'description' => 'Email verification: ' . $user->getEmail())); // Delete sender verification record UserEmailVerificationService::delete($emailVerification); // Redirect to login page $this->_helper->sessionMessenger('Email address verified successfully. You may now login.', 'success'); return $this->getHelper('Redirector')->gotoRoute(array(), 'login'); }