/** * @return array|mixed|\Zend\Http\Response */ public function registerConfirmAction() { $codeRoute = $this->params()->fromRoute('code'); $userCode = $this->userCodes->getCode4Data($codeRoute, UserCodes::TYPE_REGISTER); if (!$userCode) { return $this->forward()->dispatch(AuthController::class, ['action' => 'wrong-code']); } $form = null; $passwordSame = $this->userService->isSamePasswordOption(); if (!$passwordSame) { $form = $this->userService->getPasswordForm(); } /** @var \Zend\Http\Request $request */ $request = $this->getRequest(); if ($request->isPost()) { if (!$passwordSame) { $user = $this->userService->registerGameWithOtherPw($this->params()->fromPost(), $userCode); } else { $user = $this->userService->registerGameForm($userCode); } if ($user) { //$this->getUserService()->doAuthentication($user); return $this->redirect()->toRoute($this->getLoggedInRoute()); } } return ['registerForm' => $form, 'passwordSame' => $passwordSame]; }