コード例 #1
0
ファイル: PasswordReset.php プロジェクト: spryker/Auth
 /**
  * @param string $token
  *
  * @return bool
  */
 public function isValidToken($token)
 {
     $resetPasswordEntity = $this->authQueryContainer->queryForActiveCode($token)->findOne();
     if (empty($resetPasswordEntity)) {
         return false;
     }
     $expiresInSeconds = $this->authConfig->getPasswordTokenExpirationInSeconds();
     $expiresAt = $resetPasswordEntity->getCreatedAt();
     $expiresAt->add(new \DateInterval('PT' . $expiresInSeconds . 'S'));
     $currentDateTime = new \DateTime();
     if ($currentDateTime > $expiresAt) {
         $resetPasswordEntity->setStatus(SpyResetPasswordTableMap::COL_STATUS_EXPIRED);
         $resetPasswordEntity->save();
         return false;
     }
     return true;
 }