/**
  * Determines the frontend user, either if it's
  * already submitted, or by looking up the mail hash code.
  *
  * @param NULL|\Evoweb\SfRegister\Domain\Model\FrontendUser $user
  * @param NULL|string $hash
  * @return NULL|\Evoweb\SfRegister\Domain\Model\FrontendUser
  */
 protected function determineFrontendUser(\Evoweb\SfRegister\Domain\Model\FrontendUser $user = null, $hash = null)
 {
     $frontendUser = null;
     $requestArguments = $this->request->getArguments();
     if ($user !== null && $hash !== null) {
         $calculatedHash = \TYPO3\CMS\Core\Utility\GeneralUtility::hmac($requestArguments['action'] . '::' . $user->getUid());
         if ($hash === $calculatedHash) {
             $frontendUser = $user;
         }
         // @deprecated authCode is still there for backward compatibility
     } elseif (!empty($requestArguments['authCode'])) {
         $frontendUser = $this->userRepository->findByMailhash($requestArguments['authCode']);
     }
     return $frontendUser;
 }