Loading module/Application/config/others/substitution.config.php +4 −5 Original line number Diff line number Diff line <?php use Application\Controller\SubstitutionController; use Application\Controller\Factory\SubstitutionControllerFactory; use Application\Provider\Privilege\EcoleDoctoralePrivileges; use UnicaenAuth\Guard\PrivilegeController; use Zend\Mvc\Router\Http\Segment; Loading Loading @@ -70,10 +70,9 @@ return [ 'aliases' => [] ], 'controllers' => [ 'invokables' => [ 'Application\Controller\Substitution' => SubstitutionController::class, ], 'factories' => [], 'invokables' => [], 'factories' => [ 'Application\Controller\Substitution' => SubstitutionControllerFactory::class,], ], 'form_elements' => [ 'invokables' => [], Loading module/Application/src/Application/Controller/Factory/SubstitutionControllerFactory.php 0 → 100644 +34 −0 Original line number Diff line number Diff line <?php namespace Application\Controller\Factory; use Application\Controller\SubstitutionController; use Application\Service\Etablissement\EtablissementService; use Application\Service\Etablissement\EtablissementServiceAwareTrait; use Zend\Mvc\Controller\ControllerManager; class SubstitutionControllerFactory { use EtablissementServiceAwareTrait; /** * Create service * * @param ControllerManager $controllerManager * @return SubstitutionController */ public function __invoke(ControllerManager $controllerManager) { $sl = $controllerManager->getServiceLocator(); /** * @var EtablissementService $etablissementService */ $etablissementService = $sl->get('EtablissementService'); $controller = new SubstitutionController(); $controller->setEtablissementService($etablissementService); return $controller; } } No newline at end of file module/Application/src/Application/Controller/SubstitutionController.php +14 −1 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ use Zend\View\Model\ViewModel; class SubstitutionController extends AbstractController { use EtablissementServiceAwareTrait; public function indexAction() { return new ViewModel(); Loading @@ -24,6 +25,18 @@ class SubstitutionController extends AbstractController public function selectionAction() { return new ViewModel(); $etablissements = $this->etablissementService->getEtablissements(); $etablissement = $this->etablissementService->getEtablissementById(2); $selection = [ $this->etablissementService->getEtablissementById(2), $this->etablissementService->getEtablissementById(3), $this->etablissementService->getEtablissementById(4) ]; return new ViewModel([ 'nouvelEtablissement' => $etablissement, 'selectedEtablissements' => $selection, 'etablissements' => $etablissements, ]); } } No newline at end of file module/Application/view/application/substitution/selection.phtml +56 −1 Original line number Diff line number Diff line SUBSTITUTION SLECTION No newline at end of file <?php use Application\Entity\Db\Etablissement; /** * Variables remontant du controleur * @var Etablissement $nouvelEtablissement ==> l'etablissement qui va regrouper les établissements * @var Etablissement[] $selectedEtablissements ==> la liste des établissements sélectionnés * @var Etablissement[] $etablissements ==> la liste des établissements triés */ ?> <?php $this->headTitle($this->translate("Substitution d'établissements")) ?> <h1 class="page-header first"> <?php echo $this->translate("Substitution d'établissements"); ?> <span class="badge"><?php echo $nouvelEtablissement->getSigle(); ?></span> </h1> <div class="pull-left"> <?php foreach($selectedEtablissements as $selectedEtablissement) { echo generateDivEtablissement($selectedEtablissement); } ?> </div> <div class="pull-right"> <?php echo generateDivEtablissement($nouvelEtablissement); ?> </div> <?php function generateDivEtablissement(Etablissement $etablissement) { $texte = ""; $texte .= "<div class='etablissement bg-warning'>"; $texte .= $etablissement->getSigle(); $texte .= "<br/>"; $texte .= $etablissement->getLibelle(); $texte .= "<br/>"; $texte .= $etablissement->getCheminLogo(); $texte .= "<br/>"; $texte .= "</div>"; return $texte; } ?> <style> div.etablissement { margin: 5px; padding: 5px; border: 2px gray solid; border-radius: 5px; } </style> Loading
module/Application/config/others/substitution.config.php +4 −5 Original line number Diff line number Diff line <?php use Application\Controller\SubstitutionController; use Application\Controller\Factory\SubstitutionControllerFactory; use Application\Provider\Privilege\EcoleDoctoralePrivileges; use UnicaenAuth\Guard\PrivilegeController; use Zend\Mvc\Router\Http\Segment; Loading Loading @@ -70,10 +70,9 @@ return [ 'aliases' => [] ], 'controllers' => [ 'invokables' => [ 'Application\Controller\Substitution' => SubstitutionController::class, ], 'factories' => [], 'invokables' => [], 'factories' => [ 'Application\Controller\Substitution' => SubstitutionControllerFactory::class,], ], 'form_elements' => [ 'invokables' => [], Loading
module/Application/src/Application/Controller/Factory/SubstitutionControllerFactory.php 0 → 100644 +34 −0 Original line number Diff line number Diff line <?php namespace Application\Controller\Factory; use Application\Controller\SubstitutionController; use Application\Service\Etablissement\EtablissementService; use Application\Service\Etablissement\EtablissementServiceAwareTrait; use Zend\Mvc\Controller\ControllerManager; class SubstitutionControllerFactory { use EtablissementServiceAwareTrait; /** * Create service * * @param ControllerManager $controllerManager * @return SubstitutionController */ public function __invoke(ControllerManager $controllerManager) { $sl = $controllerManager->getServiceLocator(); /** * @var EtablissementService $etablissementService */ $etablissementService = $sl->get('EtablissementService'); $controller = new SubstitutionController(); $controller->setEtablissementService($etablissementService); return $controller; } } No newline at end of file
module/Application/src/Application/Controller/SubstitutionController.php +14 −1 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ use Zend\View\Model\ViewModel; class SubstitutionController extends AbstractController { use EtablissementServiceAwareTrait; public function indexAction() { return new ViewModel(); Loading @@ -24,6 +25,18 @@ class SubstitutionController extends AbstractController public function selectionAction() { return new ViewModel(); $etablissements = $this->etablissementService->getEtablissements(); $etablissement = $this->etablissementService->getEtablissementById(2); $selection = [ $this->etablissementService->getEtablissementById(2), $this->etablissementService->getEtablissementById(3), $this->etablissementService->getEtablissementById(4) ]; return new ViewModel([ 'nouvelEtablissement' => $etablissement, 'selectedEtablissements' => $selection, 'etablissements' => $etablissements, ]); } } No newline at end of file
module/Application/view/application/substitution/selection.phtml +56 −1 Original line number Diff line number Diff line SUBSTITUTION SLECTION No newline at end of file <?php use Application\Entity\Db\Etablissement; /** * Variables remontant du controleur * @var Etablissement $nouvelEtablissement ==> l'etablissement qui va regrouper les établissements * @var Etablissement[] $selectedEtablissements ==> la liste des établissements sélectionnés * @var Etablissement[] $etablissements ==> la liste des établissements triés */ ?> <?php $this->headTitle($this->translate("Substitution d'établissements")) ?> <h1 class="page-header first"> <?php echo $this->translate("Substitution d'établissements"); ?> <span class="badge"><?php echo $nouvelEtablissement->getSigle(); ?></span> </h1> <div class="pull-left"> <?php foreach($selectedEtablissements as $selectedEtablissement) { echo generateDivEtablissement($selectedEtablissement); } ?> </div> <div class="pull-right"> <?php echo generateDivEtablissement($nouvelEtablissement); ?> </div> <?php function generateDivEtablissement(Etablissement $etablissement) { $texte = ""; $texte .= "<div class='etablissement bg-warning'>"; $texte .= $etablissement->getSigle(); $texte .= "<br/>"; $texte .= $etablissement->getLibelle(); $texte .= "<br/>"; $texte .= $etablissement->getCheminLogo(); $texte .= "<br/>"; $texte .= "</div>"; return $texte; } ?> <style> div.etablissement { margin: 5px; padding: 5px; border: 2px gray solid; border-radius: 5px; } </style>