Loading module/Application/config/merged/application.config.php +103 −25 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ use Application\Provider\Privilege\ApplicationPrivileges; use Application\Service\Application\ApplicationGroupeService; use Application\Service\Application\ApplicationService; use Application\Service\Application\ApplicationServiceFactory; use Application\Service\Formation\ApplicationGroupeServiceFactory; use Application\Service\Application\ApplicationGroupeServiceFactory; use Application\View\Helper\ApplicationGroupeViewHelper; use UnicaenPrivilege\Guard\PrivilegeController; use Zend\Router\Http\Literal; Loading @@ -42,6 +42,7 @@ return [ 'controller' => ApplicationController::class, 'action' => [ 'afficher', 'afficher-groupe', ], 'privileges' => [ ApplicationPrivileges::APPLICATION_AFFICHER, Loading @@ -52,6 +53,9 @@ return [ 'action' => [ 'changer-status', 'editer', 'modifier-groupe', 'historiser-groupe', 'restaurer-groupe', ], 'privileges' => [ ApplicationPrivileges::APPLICATION_EDITER, Loading @@ -61,6 +65,7 @@ return [ 'controller' => ApplicationController::class, 'action' => [ 'creer', 'ajouter-groupe', ], 'privileges' => [ ApplicationPrivileges::APPLICATION_AJOUTER, Loading @@ -70,6 +75,7 @@ return [ 'controller' => ApplicationController::class, 'action' => [ 'effacer', 'detruire-groupe', ], 'privileges' => [ ApplicationPrivileges::APPLICATION_EFFACER, Loading Loading @@ -111,6 +117,78 @@ return [ ], 'may_terminate' => true, 'child_routes' => [ 'groupe' => [ 'type' => Literal::class, 'may_terminate' => false, 'options' => [ 'route' => '/groupe', 'defaults' => [ 'controller' => ApplicationController::class, ], ], 'child_routes' => [ 'afficher' => [ 'type' => Segment::class, 'options' => [ 'route' => '/afficher/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'afficher-groupe', ], ], ], 'ajouter' => [ 'type' => Literal::class, 'options' => [ 'route' => '/ajouter', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'ajouter-groupe', ], ], ], 'editer' => [ 'type' => Segment::class, 'options' => [ 'route' => '/modifier/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'modifier-groupe', ], ], ], 'historiser' => [ 'type' => Segment::class, 'options' => [ 'route' => '/historiser/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'historiser-groupe', ], ], ], 'restaurer' => [ 'type' => Segment::class, 'options' => [ 'route' => '/restaurer/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'restaurer-groupe', ], ], ], 'detruire' => [ 'type' => Segment::class, 'options' => [ 'route' => '/detruire/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'detruire-groupe', ], ], ], ], ], 'afficher' => [ 'type' => Segment::class, 'options' => [ Loading module/Application/src/Application/Controller/ApplicationController.php +115 −1 Original line number Diff line number Diff line Loading @@ -3,9 +3,12 @@ namespace Application\Controller; use Application\Entity\Db\Application; use Application\Entity\Db\ApplicationGroupe; use Application\Form\Application\ApplicationForm; use Application\Form\Application\ApplicationFormAwareTrait; use Application\Form\ApplicationGroupe\ApplicationGroupeFormAwareTrait; use Application\Service\Application\ApplicationServiceAwareTrait; use Application\Service\Application\ApplicationGroupeServiceAwareTrait; use Zend\Http\Request; use Zend\Mvc\Controller\AbstractActionController; use Zend\View\Model\ViewModel; Loading @@ -13,16 +16,23 @@ use Zend\View\Model\ViewModel; class ApplicationController extends AbstractActionController { /** Trait utilisés pour les services */ use ApplicationServiceAwareTrait; use ApplicationGroupeServiceAwareTrait; /** Trait utilisées pour les formulaires */ use ApplicationFormAwareTrait; use ApplicationGroupeFormAwareTrait; public function indexAction() { /** @var Application[] $activites */ /** * @var Application[] $activites * @var ApplicationGroupe[] $groupes */ $applications = $this->getApplicationService()->getApplications('libelle'); $groupes = $this->getApplicationGroupeService()->getApplicationsGroupes('libelle'); return new ViewModel([ 'applications' => $applications, 'groupes' => $groupes, ]); } Loading Loading @@ -131,4 +141,108 @@ class ApplicationController extends AbstractActionController { 'application' => $application, ]); } /** GROUPE ********************************************************************************************************/ public function ajouterGroupeAction() { $groupe = new ApplicationGroupe(); $form = $this->getApplicationGroupeForm(); $form->setAttribute('action', $this->url()->fromRoute('application/groupe/ajouter',[],[], true)); $form->bind($groupe); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getApplicationGroupeService()->create($groupe); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => "Ajout d'un groupe d'application", 'form' => $form, ]); return $vm; } public function afficherGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); return new ViewModel([ 'title' => "Affichage du groupe d'application", 'groupe' => $groupe, ]); } public function modifierGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); $form = $this->getApplicationGroupeForm(); $form->setAttribute('action', $this->url()->fromRoute('application/groupe/editer',[],[], true)); $form->bind($groupe); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getApplicationGroupeService()->update($groupe); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => "Modification d'un groupe d'application", 'form' => $form, ]); return $vm; } public function historiserGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); $this->getApplicationGroupeService()->historise($groupe); return $this->redirect()->toRoute('application', [], ['fragment' => 'groupe'], true); } public function restaurerGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); $this->getApplicationGroupeService()->restore($groupe); return $this->redirect()->toRoute('application', [], ['fragment' => 'groupe'], true); } public function detruireGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); if ($data["reponse"] === "oui") $this->getApplicationGroupeService()->delete($groupe); exit(); } $vm = new ViewModel(); if ($groupe !== null) { $vm->setTemplate('application/default/confirmation'); $vm->setVariables([ 'title' => "Suppression du groupe d'application [" . $groupe->getLibelle(). "]", 'text' => "La suppression est définitive êtes-vous sûr·e de vouloir continuer ?", 'action' => $this->url()->fromRoute('application/groupe/detruire', ["application-groupe" => $groupe->getId()], [], true), ]); } return $vm; } } No newline at end of file module/Application/src/Application/Controller/ApplicationControllerFactory.php +8 −0 Original line number Diff line number Diff line Loading @@ -3,6 +3,8 @@ namespace Application\Controller; use Application\Form\Application\ApplicationForm; use Application\Form\ApplicationGroupe\ApplicationGroupeForm; use Application\Service\Application\ApplicationGroupeService; use Application\Service\Application\ApplicationService; use Interop\Container\ContainerInterface; Loading @@ -12,18 +14,24 @@ class ApplicationControllerFactory { { /** * @var ApplicationService $applicationService * @var ApplicationGroupeService $applicationGroupeService */ $applicationService = $container->get(ApplicationService::class); $applicationGroupeService = $container->get(ApplicationGroupeService::class); /** * @var ApplicationForm $applicationForm * @var ApplicationGroupeForm $applicationGroupeForm */ $applicationForm = $container->get('FormElementManager')->get(ApplicationForm::class); $applicationGroupeForm = $container->get('FormElementManager')->get(ApplicationGroupeForm::class); /** @var ApplicationController $controller */ $controller = new ApplicationController(); $controller->setApplicationService($applicationService); $controller->setApplicationGroupeService($applicationGroupeService); $controller->setApplicationForm($applicationForm); $controller->setApplicationGroupeForm($applicationGroupeForm); return $controller; } } No newline at end of file module/Application/src/Application/Form/Application/ApplicationForm.php +20 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ namespace Application\Form\Application; use Application\Service\Application\ApplicationGroupeServiceAwareTrait; use Application\Service\Formation\FormationServiceAwareTrait; use Zend\Form\Element\Button; use Zend\Form\Element\Select; Loading @@ -11,6 +12,7 @@ use Zend\InputFilter\Factory; class ApplicationForm extends Form { use FormationServiceAwareTrait; use ApplicationGroupeServiceAwareTrait; public function init() { Loading @@ -25,6 +27,23 @@ class ApplicationForm extends Form { 'id' => 'libelle', ], ]); //groupe $this->add([ 'name' => 'groupe', 'type' => Select::class, 'options' => [ 'label' => "Groupe de l'application : ", 'label_attributes' => [ 'class' => 'control-label', ], 'empty_option' => 'Sélectionner un groupe ...', 'value_options' => $this->getApplicationGroupeService()->getApplicationsGroupesAsOption(), ], 'attributes' => [ 'class' => 'description form-control', 'style' => 'height:300px;', ] ]); // description $this->add([ 'name' => 'description', Loading Loading @@ -85,6 +104,7 @@ class ApplicationForm extends Form { //filter $this->setInputFilter((new Factory())->createInputFilter([ 'libelle' => [ 'required' => true, ], 'groupe' => [ 'required' => false, ], 'description' => [ 'required' => false, ], 'url' => [ 'required' => false, ], 'formations' => [ 'required' => false, ], Loading module/Application/src/Application/Form/Application/ApplicationFormFactory.php +8 −1 Original line number Diff line number Diff line Loading @@ -2,6 +2,8 @@ namespace Application\Form\Application; use Application\Entity\Db\ApplicationGroupe; use Application\Service\Application\ApplicationGroupeService; use Application\Service\Formation\FormationService; use Interop\Container\ContainerInterface; use Zend\Form\FormElementManager; Loading @@ -10,13 +12,18 @@ class ApplicationFormFactory { public function __invoke(ContainerInterface $container) { /** @var FormationService $formationService */ /** * @var ApplicationGroupe $applicationGroupeService * @var FormationService $formationService */ $applicationGroupeService = $container->get(ApplicationGroupeService::class); $formationService = $container->get(FormationService::class); /** @var ApplicationHydrator $hydrator */ $hydrator = $container->get('HydratorManager')->get(ApplicationHydrator::class); $form = new ApplicationForm(); $form->setApplicationGroupeService($applicationGroupeService); $form->setFormationService($formationService); $form->init(); $form->setHydrator($hydrator); Loading Loading
module/Application/config/merged/application.config.php +103 −25 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ use Application\Provider\Privilege\ApplicationPrivileges; use Application\Service\Application\ApplicationGroupeService; use Application\Service\Application\ApplicationService; use Application\Service\Application\ApplicationServiceFactory; use Application\Service\Formation\ApplicationGroupeServiceFactory; use Application\Service\Application\ApplicationGroupeServiceFactory; use Application\View\Helper\ApplicationGroupeViewHelper; use UnicaenPrivilege\Guard\PrivilegeController; use Zend\Router\Http\Literal; Loading @@ -42,6 +42,7 @@ return [ 'controller' => ApplicationController::class, 'action' => [ 'afficher', 'afficher-groupe', ], 'privileges' => [ ApplicationPrivileges::APPLICATION_AFFICHER, Loading @@ -52,6 +53,9 @@ return [ 'action' => [ 'changer-status', 'editer', 'modifier-groupe', 'historiser-groupe', 'restaurer-groupe', ], 'privileges' => [ ApplicationPrivileges::APPLICATION_EDITER, Loading @@ -61,6 +65,7 @@ return [ 'controller' => ApplicationController::class, 'action' => [ 'creer', 'ajouter-groupe', ], 'privileges' => [ ApplicationPrivileges::APPLICATION_AJOUTER, Loading @@ -70,6 +75,7 @@ return [ 'controller' => ApplicationController::class, 'action' => [ 'effacer', 'detruire-groupe', ], 'privileges' => [ ApplicationPrivileges::APPLICATION_EFFACER, Loading Loading @@ -111,6 +117,78 @@ return [ ], 'may_terminate' => true, 'child_routes' => [ 'groupe' => [ 'type' => Literal::class, 'may_terminate' => false, 'options' => [ 'route' => '/groupe', 'defaults' => [ 'controller' => ApplicationController::class, ], ], 'child_routes' => [ 'afficher' => [ 'type' => Segment::class, 'options' => [ 'route' => '/afficher/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'afficher-groupe', ], ], ], 'ajouter' => [ 'type' => Literal::class, 'options' => [ 'route' => '/ajouter', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'ajouter-groupe', ], ], ], 'editer' => [ 'type' => Segment::class, 'options' => [ 'route' => '/modifier/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'modifier-groupe', ], ], ], 'historiser' => [ 'type' => Segment::class, 'options' => [ 'route' => '/historiser/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'historiser-groupe', ], ], ], 'restaurer' => [ 'type' => Segment::class, 'options' => [ 'route' => '/restaurer/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'restaurer-groupe', ], ], ], 'detruire' => [ 'type' => Segment::class, 'options' => [ 'route' => '/detruire/:application-groupe', 'defaults' => [ 'controller' => ApplicationController::class, 'action' => 'detruire-groupe', ], ], ], ], ], 'afficher' => [ 'type' => Segment::class, 'options' => [ Loading
module/Application/src/Application/Controller/ApplicationController.php +115 −1 Original line number Diff line number Diff line Loading @@ -3,9 +3,12 @@ namespace Application\Controller; use Application\Entity\Db\Application; use Application\Entity\Db\ApplicationGroupe; use Application\Form\Application\ApplicationForm; use Application\Form\Application\ApplicationFormAwareTrait; use Application\Form\ApplicationGroupe\ApplicationGroupeFormAwareTrait; use Application\Service\Application\ApplicationServiceAwareTrait; use Application\Service\Application\ApplicationGroupeServiceAwareTrait; use Zend\Http\Request; use Zend\Mvc\Controller\AbstractActionController; use Zend\View\Model\ViewModel; Loading @@ -13,16 +16,23 @@ use Zend\View\Model\ViewModel; class ApplicationController extends AbstractActionController { /** Trait utilisés pour les services */ use ApplicationServiceAwareTrait; use ApplicationGroupeServiceAwareTrait; /** Trait utilisées pour les formulaires */ use ApplicationFormAwareTrait; use ApplicationGroupeFormAwareTrait; public function indexAction() { /** @var Application[] $activites */ /** * @var Application[] $activites * @var ApplicationGroupe[] $groupes */ $applications = $this->getApplicationService()->getApplications('libelle'); $groupes = $this->getApplicationGroupeService()->getApplicationsGroupes('libelle'); return new ViewModel([ 'applications' => $applications, 'groupes' => $groupes, ]); } Loading Loading @@ -131,4 +141,108 @@ class ApplicationController extends AbstractActionController { 'application' => $application, ]); } /** GROUPE ********************************************************************************************************/ public function ajouterGroupeAction() { $groupe = new ApplicationGroupe(); $form = $this->getApplicationGroupeForm(); $form->setAttribute('action', $this->url()->fromRoute('application/groupe/ajouter',[],[], true)); $form->bind($groupe); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getApplicationGroupeService()->create($groupe); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => "Ajout d'un groupe d'application", 'form' => $form, ]); return $vm; } public function afficherGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); return new ViewModel([ 'title' => "Affichage du groupe d'application", 'groupe' => $groupe, ]); } public function modifierGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); $form = $this->getApplicationGroupeForm(); $form->setAttribute('action', $this->url()->fromRoute('application/groupe/editer',[],[], true)); $form->bind($groupe); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getApplicationGroupeService()->update($groupe); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => "Modification d'un groupe d'application", 'form' => $form, ]); return $vm; } public function historiserGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); $this->getApplicationGroupeService()->historise($groupe); return $this->redirect()->toRoute('application', [], ['fragment' => 'groupe'], true); } public function restaurerGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); $this->getApplicationGroupeService()->restore($groupe); return $this->redirect()->toRoute('application', [], ['fragment' => 'groupe'], true); } public function detruireGroupeAction() { $groupe = $this->getApplicationGroupeService()->getRequestedApplicationGroupe($this); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); if ($data["reponse"] === "oui") $this->getApplicationGroupeService()->delete($groupe); exit(); } $vm = new ViewModel(); if ($groupe !== null) { $vm->setTemplate('application/default/confirmation'); $vm->setVariables([ 'title' => "Suppression du groupe d'application [" . $groupe->getLibelle(). "]", 'text' => "La suppression est définitive êtes-vous sûr·e de vouloir continuer ?", 'action' => $this->url()->fromRoute('application/groupe/detruire', ["application-groupe" => $groupe->getId()], [], true), ]); } return $vm; } } No newline at end of file
module/Application/src/Application/Controller/ApplicationControllerFactory.php +8 −0 Original line number Diff line number Diff line Loading @@ -3,6 +3,8 @@ namespace Application\Controller; use Application\Form\Application\ApplicationForm; use Application\Form\ApplicationGroupe\ApplicationGroupeForm; use Application\Service\Application\ApplicationGroupeService; use Application\Service\Application\ApplicationService; use Interop\Container\ContainerInterface; Loading @@ -12,18 +14,24 @@ class ApplicationControllerFactory { { /** * @var ApplicationService $applicationService * @var ApplicationGroupeService $applicationGroupeService */ $applicationService = $container->get(ApplicationService::class); $applicationGroupeService = $container->get(ApplicationGroupeService::class); /** * @var ApplicationForm $applicationForm * @var ApplicationGroupeForm $applicationGroupeForm */ $applicationForm = $container->get('FormElementManager')->get(ApplicationForm::class); $applicationGroupeForm = $container->get('FormElementManager')->get(ApplicationGroupeForm::class); /** @var ApplicationController $controller */ $controller = new ApplicationController(); $controller->setApplicationService($applicationService); $controller->setApplicationGroupeService($applicationGroupeService); $controller->setApplicationForm($applicationForm); $controller->setApplicationGroupeForm($applicationGroupeForm); return $controller; } } No newline at end of file
module/Application/src/Application/Form/Application/ApplicationForm.php +20 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ namespace Application\Form\Application; use Application\Service\Application\ApplicationGroupeServiceAwareTrait; use Application\Service\Formation\FormationServiceAwareTrait; use Zend\Form\Element\Button; use Zend\Form\Element\Select; Loading @@ -11,6 +12,7 @@ use Zend\InputFilter\Factory; class ApplicationForm extends Form { use FormationServiceAwareTrait; use ApplicationGroupeServiceAwareTrait; public function init() { Loading @@ -25,6 +27,23 @@ class ApplicationForm extends Form { 'id' => 'libelle', ], ]); //groupe $this->add([ 'name' => 'groupe', 'type' => Select::class, 'options' => [ 'label' => "Groupe de l'application : ", 'label_attributes' => [ 'class' => 'control-label', ], 'empty_option' => 'Sélectionner un groupe ...', 'value_options' => $this->getApplicationGroupeService()->getApplicationsGroupesAsOption(), ], 'attributes' => [ 'class' => 'description form-control', 'style' => 'height:300px;', ] ]); // description $this->add([ 'name' => 'description', Loading Loading @@ -85,6 +104,7 @@ class ApplicationForm extends Form { //filter $this->setInputFilter((new Factory())->createInputFilter([ 'libelle' => [ 'required' => true, ], 'groupe' => [ 'required' => false, ], 'description' => [ 'required' => false, ], 'url' => [ 'required' => false, ], 'formations' => [ 'required' => false, ], Loading
module/Application/src/Application/Form/Application/ApplicationFormFactory.php +8 −1 Original line number Diff line number Diff line Loading @@ -2,6 +2,8 @@ namespace Application\Form\Application; use Application\Entity\Db\ApplicationGroupe; use Application\Service\Application\ApplicationGroupeService; use Application\Service\Formation\FormationService; use Interop\Container\ContainerInterface; use Zend\Form\FormElementManager; Loading @@ -10,13 +12,18 @@ class ApplicationFormFactory { public function __invoke(ContainerInterface $container) { /** @var FormationService $formationService */ /** * @var ApplicationGroupe $applicationGroupeService * @var FormationService $formationService */ $applicationGroupeService = $container->get(ApplicationGroupeService::class); $formationService = $container->get(FormationService::class); /** @var ApplicationHydrator $hydrator */ $hydrator = $container->get('HydratorManager')->get(ApplicationHydrator::class); $form = new ApplicationForm(); $form->setApplicationGroupeService($applicationGroupeService); $form->setFormationService($formationService); $form->init(); $form->setHydrator($hydrator); Loading