FOS\UserBundle\Controller\UserController::createAction PHP Метод

createAction() публичный Метод

Create a user and send a confirmation email
public createAction ( )
    public function createAction()
    {
        $form = $this->container->get('fos_user.form.user');
        $process = $form->process(null, $this->container->getParameter('fos_user.email.confirmation.enabled'));
        if ($process) {
            $user = $form->getData();
            if ($this->container->getParameter('fos_user.email.confirmation.enabled')) {
                $this->container->get('fos_user.util.mailer')->sendConfirmationEmailMessage($user, $this->getEngine());
                $this->container->get('session')->set('fos_user_send_confirmation_email/email', $user->getEmail());
                $route = 'fos_user_user_check_confirmation_email';
            } else {
                $this->authenticateUser($user);
                $route = 'fos_user_user_confirmed';
            }
            if ($this->container->has('security.acl.provider')) {
                $provider = $this->container->get('security.acl.provider');
                $acl = $provider->createAcl(ObjectIdentity::fromDomainObject($user));
                $acl->insertObjectAce(UserSecurityIdentity::fromAccount($user), MaskBuilder::MASK_OWNER);
                $provider->updateAcl($acl);
            }
            $this->setFlash('fos_user_user_create', 'success');
            $url = $this->container->get('router')->generate($route);
            return new RedirectResponse($url);
        }
        return $this->container->get('templating')->renderResponse('FOSUserBundle:User:new.html.' . $this->getEngine(), array('form' => $form));
    }