'civility_default' => $doctrine->getRepository($this->config['class']['civility'])->findOneByTitle($this->config['default']['civility']),
//Disable mail
'mail' => $this->isGranted('ROLE_ADMIN'),
- //Disable slug
- 'slug' => $this->isGranted('ROLE_ADMIN'),
//Disable password
'password' => false,
//Set method
'method' => 'POST'
- ]);
+ ]+$this->config['edit']['field']);
//With admin role
if ($this->isGranted('ROLE_ADMIN')) {
//Add reset view
$this->config['edit']['view']['context']['reset'] = $reset->createView();
- //Without admin role
- //XXX: prefer a reset on login to force user unspam action
- } else {
- //Add notice
- $this->addFlash('notice', $this->translator->trans('To change your password login with your mail and any password then follow the procedure'));
}
//With post method
//Set data
$data = $edit->getData();
- //Set slug
- $slug = null;
-
- //With admin
- if ($this->isGranted('ROLE_ADMIN')) {
- //With slug
- if (!empty($data->getSlug())) {
- //Set slug
- $slug = $slugger->slug($data->getPseudonym());
- }
-
- //Update slug
- $data->setSlug($slug);
- }
-
//Queue snippet save
$manager->persist($data);
//Catch double slug or mail
} catch (UniqueConstraintViolationException $e) {
//Add error message mail already exists
- $this->addFlash('error', $this->translator->trans('Account %mail% or with slug %slug% already exists', ['%mail%' => $data->getMail(), '%slug%' => $slug]));
+ $this->addFlash('error', $this->translator->trans('Account %mail% already exists', ['%mail%' => $data->getMail()]));
}
}
+ //Without admin role
+ //XXX: prefer a reset on login to force user unspam action
+ } elseif (!$this->isGranted('ROLE_ADMIN')) {
+ //Add notice
+ $this->addFlash('notice', $this->translator->trans('To change your password login with your mail and any password then follow the procedure'));
}
//Render view
$recoverMail['context']['recipient_mail'] = $user->getMail();
//Set recipient_name
- $recoverMail['context']['recipient_name'] = trim($user->getForename().' '.$user->getSurname().($user->getPseudonym()?' ('.$user->getPseudonym().')':''));
+ $recoverMail['context']['recipient_name'] = $user->getRecipientName();
//Init subject context
$subjectContext = $slugger->flatten(array_replace_recursive($this->config['recover']['view']['context'], $recoverMail['context']), null, '.', '%', '%');
//With disabled existing
if ($existing->isDisabled()) {
//Render view
- return $this->render(
+ $response = $this->render(
//Template
$this->config['register']['view']['name'],
//Context
- ['title' => $this->translator->trans('Access denied'), 'disabled' => 1]+$this->config['register']['view']['context'],
- //Set 403
- new Response('', 403)
+ ['title' => $this->translator->trans('Access denied'), 'disabled' => 1]+$this->config['register']['view']['context']
);
+
+ //Set 403
+ $response->setStatusCode(403);
+
+ //Return response
+ return $response;
//With unactivated existing
} elseif (!$existing->isActivated()) {
//Set mail shortcut
- //TODO: change for activate ???
$activateMail =& $this->config['register']['mail'];
//Generate each route route
$activateMail['context']['recipient_mail'] = $existing->getMail();
//Set recipient name
- $activateMail['context']['recipient_name'] = implode(' ', [$existing->getForename(), $existing->getSurname(), $existing->getPseudonym()?'('.$existing->getPseudonym().')':'']);
+ $activateMail['context']['recipient_name'] = $existing->getRecipientName();
//Init subject context
$subjectContext = $slugger->flatten(array_replace_recursive($this->config['register']['view']['context'], $activateMail['context']), null, '.', '%', '%');
$sfield = $field;
//Reset field
- $field = [
- //Without slug
- 'slug' => false
- ];
+ $field = [];
}
//Init reflection
'mail' => true,
//Set method
'method' => 'POST'
- ]);
+ ]+$this->config['register']['field']);
if ($request->isMethod('POST')) {
//Refill the fields in case the form is not valid.
//Set mail shortcut
$registerMail =& $this->config['register']['mail'];
- //Extract names and pseudonym from mail
- $names = explode(' ', $pseudonym = ucwords(trim(preg_replace('/[^a-zA-Z]+/', ' ', current(explode('@', $data->getMail()))))));
-
- //Set pseudonym
- $user->setPseudonym($user->getPseudonym()??$pseudonym);
-
- //Set forename
- $user->setForename($user->getForename()??$names[0]);
-
- //Set surname
- $user->setSurname($user->getSurname()??$names[1]??$names[0]);
-
//Set password
- $user->setPassword($encoder->encodePassword($user, $user->getPassword()??$data->getMail()));
-
- //Set created
- $user->setCreated(new \DateTime('now'));
-
- //Set updated
- $user->setUpdated(new \DateTime('now'));
+ $user->setPassword($encoder->encodePassword($user, $user->getPassword()));
//Persist user
$manager->persist($user);
}
}
- //XXX: DEBUG: remove me
- //die($registerMail['context']['confirm_url']);
-
//Set recipient_name
$registerMail['context']['recipient_mail'] = $data->getMail();
//Set recipient name
- $registerMail['context']['recipient_name'] = '';
-
- //Set recipient name
- $registerMail['context']['recipient_name'] = implode(' ', [$data->getForename(), $data->getSurname(), $data->getPseudonym()?'('.$data->getPseudonym().')':'']);
+ $registerMail['context']['recipient_name'] = $data->getRecipientName();
//Init subject context
$subjectContext = $slugger->flatten(array_replace_recursive($this->config['register']['view']['context'], $registerMail['context']), null, '.', '%', '%');