->where('u.username = :username')
->andWhere('u.id <> :id')
->setParameters(array('username' => $user-
>getUsername(), 'id' => $user->getId()))
->getQuery()->getSingleScalarResult();
if ($sames > 0) {
$form->get('username')->addError(new
FormError('Пользователь с таким логином уже существует.'));
$valid = false;
}
if ($valid) {
if (!is_null($form->get('password')-
>getData())) {
/** @var UserPasswordEncoder $encoder
*/
$encoder = $this-
>get('security.password_encoder');
$user->setSalt(User::generateSalt())
->setPassword($encoder-
>encodePassword($user, $user->getPassword()));
} else {
$user->setPassword($password);
}
$this->manager->persist($user);
$this->manager->flush();
$this->addNotice('success',
'users.html.twig',
array('notice' => 'user_changed',
'username' => $user->getUsername())