public function updateAction($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();
     $editForm = $formProvider->getGroupEditForm();
     $editForm->writeFromRequest($this->request);
     $editForm->writeToEntity($entity);
     $this->response->prepareForJson();
     $returnedValue = $this->createReturnedArray('update');
     if ($editForm->isValid()) {
         $manager = new Manager($em, $this->router);
         $branch = $manager->buildGroupTree($id);
         $branch->setIsActive($entity->getIsActive());
         $branch->setName($entity->getName());
         $em->flush($branch->prepareForSaveInStore($em));
         $returnedValue['view'] = json_encode($manager->prepareGroupTreeForJson($branch)[0]);
     } else {
         $returnedValue['status'] = 'failed';
         $returnedValue['view'] = $this->viewer->render('user_manager::group::edit.html.twig', array('entity' => $entity, 'edit_form' => $editForm));
     }
     return $this->acceptSolutionFlushToResponse(json_encode($returnedValue));
 }