public function deleteAction() { $entityManager = $this->getEntityManager(); $entityPui = $entityManager->getRepository('Indicateur\\Entity\\Pui'); $entityUsers = $entityManager->getRepository('Indicateur\\Entity\\Users'); $authService = new AuthenticationService(); $connectedUser = $authService->getStorage()->read(); $userpermission = new AuthUserPermissions(); $id = $this->params('id'); $alertmessages = $pui = null; if ($id > 0) { $pui = $entityPui->find($id); if ($pui) { if ($userpermission->canDeletePui($pui)) { if (count($entityUsers->findBy(array('pui' => $id))) > 0) { $alertmessages['error'] = 'Vous ne pouvez plus supprimer cette PUI car elle contient des utilisateurs'; } else { $entityPui->supprimerPui($id); return $this->redirect()->toUrl($this->getBaseUrl() . '/etablissement/pui/list'); } } return $this->redirect()->toUrl($this->getBaseUrl() . '/application/index/forbidden'); } else { $alertmessages['error'] = 'Pui inexistante ou supprimée'; } } else { return $this->redirect()->toUrl($this->getBaseUrl() . '/etablissement/pui/list'); } return new ViewModel(array('alertmessages' => $alertmessages, 'pui' => $pui)); }
public function deleteAction() { $entityManager = $this->getEntityManager(); $entityUsers = $entityManager->getRepository('Indicateur\\Entity\\Users'); $auth = $this->getAuthentification(); $userpermission = new AuthUserPermissions(); $id = (int) $this->params('id'); $user = $entityUsers->find($id); $alertmessages = array(); $succes = false; if ($user) { $userEtabId = $user->getEtabs() ? $user->getEtabs()->getEtCodePk() : null; if ($userpermission->canDeleteUser($user)) { $user->setAcces(4); $user->setEmail('\\DELETED_' . $user->getEmail()); $user->setLogin('\\DELETED_' . $user->getLogin()); $entityManager->persist($user); $entityManager->flush(); $succes = true; } else { $alertmessages['error'] = 'Vous n\'avez pas le droit de supprimer cet utilisateur'; } } else { $alertmessages['error'] = 'Utilisateur inexistant'; } return new ViewModel(array('succes' => $succes, 'alertmessages' => $alertmessages)); }
public function editAction() { $entityManager = $this->getEntityManager(); $entityEtabs = $entityManager->getRepository('Indicateur\\Entity\\Etabs'); $entityCategorie = $entityManager->getRepository('Indicateur\\Entity\\Categorie'); $entityEtabstatut = $entityManager->getRepository('Indicateur\\Entity\\Etabstatut'); $authService = new AuthenticationService(); $connectedUser = $authService->getStorage()->read(); $userpermission = new AuthUserPermissions(); $id = $this->params('id'); if ($id > 0) { $etab = $entityEtabs->find($id); if ($userpermission->canEditEtabs($etab)) { $request = $this->getRequest(); $form = new EtabsForm($entityManager); $alertmessages = array(); $success = false; if ($request->isPost()) { $form->setData($request->getPost()); if ($form->isValid()) { // Applique le filtre et récupère les données filtrées $formData = $form->getData(); $form->populateValues($formData); // MAJ BDD $etab = $entityEtabs->find($id); $etab->setEtLibelle($formData['libelle']); $etab->setEtRue($formData['adresse']); $etab->setEtVille($formData['ville']); $etab->setEtCp($formData['cp']); $etab->setEtPays($formData['pays']); $etab->setEtnbsellers($formData['nb_sellers']); $etab->setCaCodeFk($entityCategorie->find($formData['categorie'])); $etab->setEtStatut($entityEtabstatut->find($formData['statut'])); $etab->setEtMaj(new \DateTime(date('Y-m-d H:i:s'))); $entityManager->persist($etab); $entityManager->flush(); $alertmessages['success'] = 'Enregistrement terminé'; } else { $alertmessages['error'] = 'Veuillez corriger la saisie'; } } else { $form->populateValues(array('id' => $id, 'libelle' => $etab->getEtLibelle(), 'adresse' => $etab->getEtRue(), 'ville' => $etab->getEtVille(), 'cp' => $etab->getEtCp(), 'pays' => $etab->getEtPays(), 'nb_sellers' => $etab->getEtNbsellers(), 'categorie' => $etab->getCaCodeFk(), 'statut' => $etab->getEtStatut())); } } else { return $this->redirect()->toUrl($this->getBaseUrl() . '/application/index/forbidden'); } } elseif ($connectedUser->et_code_fk > 0) { return $this->redirect()->toUrl($this->getBaseUrl() . '/etablissement/etablissement/edit/' . $connectedUser->et_code_fk); } return new ViewModel(array('form' => $form, 'alertmessages' => $alertmessages)); }