diff options
Diffstat (limited to 'src/Wallabag/CoreBundle/Controller/ConfigController.php')
-rw-r--r-- | src/Wallabag/CoreBundle/Controller/ConfigController.php | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/Wallabag/CoreBundle/Controller/ConfigController.php b/src/Wallabag/CoreBundle/Controller/ConfigController.php index 5affdee8..ecfecc66 100644 --- a/src/Wallabag/CoreBundle/Controller/ConfigController.php +++ b/src/Wallabag/CoreBundle/Controller/ConfigController.php | |||
@@ -7,7 +7,7 @@ use Symfony\Bundle\FrameworkBundle\Controller\Controller; | |||
7 | use Symfony\Component\HttpFoundation\Request; | 7 | use Symfony\Component\HttpFoundation\Request; |
8 | use Symfony\Component\HttpFoundation\JsonResponse; | 8 | use Symfony\Component\HttpFoundation\JsonResponse; |
9 | use Wallabag\CoreBundle\Entity\Config; | 9 | use Wallabag\CoreBundle\Entity\Config; |
10 | use Wallabag\CoreBundle\Entity\User; | 10 | use Wallabag\UserBundle\Entity\User; |
11 | use Wallabag\CoreBundle\Form\Type\ChangePasswordType; | 11 | use Wallabag\CoreBundle\Form\Type\ChangePasswordType; |
12 | use Wallabag\CoreBundle\Form\Type\UserInformationType; | 12 | use Wallabag\CoreBundle\Form\Type\UserInformationType; |
13 | use Wallabag\CoreBundle\Form\Type\NewUserType; | 13 | use Wallabag\CoreBundle\Form\Type\NewUserType; |
@@ -25,6 +25,7 @@ class ConfigController extends Controller | |||
25 | { | 25 | { |
26 | $em = $this->getDoctrine()->getManager(); | 26 | $em = $this->getDoctrine()->getManager(); |
27 | $config = $this->getConfig(); | 27 | $config = $this->getConfig(); |
28 | $userManager = $this->container->get('fos_user.user_manager'); | ||
28 | $user = $this->getUser(); | 29 | $user = $this->getUser(); |
29 | 30 | ||
30 | // handle basic config detail (this form is defined as a service) | 31 | // handle basic config detail (this form is defined as a service) |
@@ -52,9 +53,8 @@ class ConfigController extends Controller | |||
52 | $pwdForm->handleRequest($request); | 53 | $pwdForm->handleRequest($request); |
53 | 54 | ||
54 | if ($pwdForm->isValid()) { | 55 | if ($pwdForm->isValid()) { |
55 | $user->setPassword($pwdForm->get('new_password')->getData()); | 56 | $user->setPlainPassword($pwdForm->get('new_password')->getData()); |
56 | $em->persist($user); | 57 | $userManager->updateUser($user, true); |
57 | $em->flush(); | ||
58 | 58 | ||
59 | $this->get('session')->getFlashBag()->add( | 59 | $this->get('session')->getFlashBag()->add( |
60 | 'notice', | 60 | 'notice', |
@@ -69,8 +69,7 @@ class ConfigController extends Controller | |||
69 | $userForm->handleRequest($request); | 69 | $userForm->handleRequest($request); |
70 | 70 | ||
71 | if ($userForm->isValid()) { | 71 | if ($userForm->isValid()) { |
72 | $em->persist($user); | 72 | $userManager->updateUser($user, true); |
73 | $em->flush(); | ||
74 | 73 | ||
75 | $this->get('session')->getFlashBag()->add( | 74 | $this->get('session')->getFlashBag()->add( |
76 | 'notice', | 75 | 'notice', |
@@ -97,14 +96,14 @@ class ConfigController extends Controller | |||
97 | } | 96 | } |
98 | 97 | ||
99 | // handle adding new user | 98 | // handle adding new user |
100 | $newUser = new User(); | 99 | $newUser = $userManager->createUser(); |
101 | // enable created user by default | 100 | // enable created user by default |
102 | $newUser->setEnabled(true); | 101 | $newUser->setEnabled(true); |
103 | $newUserForm = $this->createForm(new NewUserType(), $newUser, array('validation_groups' => array('Profile'))); | 102 | $newUserForm = $this->createForm(new NewUserType(), $newUser, array('validation_groups' => array('Profile'))); |
104 | $newUserForm->handleRequest($request); | 103 | $newUserForm->handleRequest($request); |
105 | 104 | ||
106 | if ($newUserForm->isValid()) { | 105 | if ($newUserForm->isValid() && $this->get('security.authorization_checker')->isGranted('ROLE_SUPER_ADMIN')) { |
107 | $em->persist($newUser); | 106 | $userManager->updateUser($newUser, true); |
108 | 107 | ||
109 | $config = new Config($newUser); | 108 | $config = new Config($newUser); |
110 | $config->setTheme($this->container->getParameter('theme')); | 109 | $config->setTheme($this->container->getParameter('theme')); |