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));
}