/** * @return \Nette\Forms\Form */ protected function createComponentAccountForm() { $user = $this->userRepository->find($this->getUser()->getIdentity()->getId()); $formService = $this->securityManager->getUserTypeByClass($user->getClass())->getFrontFormService(); $form = $formService->getFormFactory($user->getId())->create(); $form->onSuccess[] = function () { $this->flashMessage($this->translator->translate('Account settings has been updated.'), 'success'); $this->redirect('this'); $this->redrawControl('content'); }; return $form; }
/** * @return \Nette\Application\UI\Form */ public function createComponentForm() { $userType = $this->securityManager->getUserTypeByClass($this->userType); $this->currentUser = $this->createNewUser(); $userType->getRegistrationFormService()->getFormFactory(); $form = $userType->getRegistrationFormService()->getFormFactory()->create(); foreach ($this->securityManager->getLoginProviders() as $loginProvider) { $submit = $form->addSubmit('_submit_' . str_replace(' ', '_', $loginProvider), $loginProvider); $submit->setValidationScope(false); $submit->onClick[] = function () use($loginProvider) { $this->redirect('load!', array($loginProvider)); }; } $form->onSuccess[] = $this->formSuccess; return $form; }
/** * @return \Venne\Security\UserType */ private function getUserType() { return $this->securityManager->getUserTypeByClass($this->type); }