public function deleteAction($id)
 {
     $formProvider = new FormProvider();
     $url = $this->router->getUrlByRoute('admin_user_delete', array('id' => $id), false);
     $form = $formProvider->getUserDeleteForm($url);
     $form->writeFromRequest($this->request);
     $returnedValue = $this->createReturnedArray('delete');
     if ($form->isValid()) {
         $em = $this->dataProvider->getEntityManager();
         $entity = $em->getRepository('LW\\Model\\Entity\\User')->find($id);
         if (!$entity) {
             throw new \Exception('Unable to find User entity.');
         }
         $em->remove($entity);
         $em->flush();
     } else {
         $returnedValue['status'] = 'failed';
     }
     $this->response->prepareForJson();
     return $this->acceptSolutionFlushToResponse(json_encode($returnedValue));
 }
 public function updateUsersListAction($id)
 {
     $em = $this->dataProvider->getEntityManager();
     $entity = $em->getRepository('LW\\Model\\Entity\\Group')->find($id);
     if (!$entity) {
         throw new \Exception('Unable to find Group entity.');
     }
     $formProvider = new FormProvider();
     $url = $this->router->getUrlByRoute('admin_group_update_users_list', array('id' => $id), false);
     $form = $formProvider->getGroupUsersListForm($url);
     $form->writeFromRequest($this->request);
     $this->response->prepareForJson();
     $returnedValue = $this->createReturnedArray('update_users_list');
     $manager = new Manager($em, $this->router);
     if ($form->isValid()) {
         $users = json_decode($form->getField('users')->getValue());
         $manager->addUsersToGroup($id, $users);
         $branch = $manager->buildGroupTree($id);
         $returnedValue['view'] = json_encode($manager->prepareGroupTreeForJson($branch)[0]);
     } else {
         $entityMoved = $manager->getGroup($form->get('movedId')->getData());
         $returnedValue['status'] = 'failed';
         $returnedValue['view'] = sprintf('Редактирование списка подльзователей для группы <b>%s</b> не было сохранено', $entityMoved->getName());
     }
     return $this->acceptSolutionFlushToResponse(json_encode($returnedValue));
 }