diff --git a/Module.php b/Module.php
index 5c864c9e10001942fbcb99b606ab3330cd9b9a56..6c1d4df38364d8390ab81c19111b922dc31fd88e 100755
--- a/Module.php
+++ b/Module.php
@@ -14,8 +14,6 @@ class Module
     {
         $e->getApplication()->getServiceManager()->get('translator');
         $eventManager        = $e->getApplication()->getEventManager();
-//        $moduleRouteListener = new ModuleRouteListener();
-//        $moduleRouteListener->attach($eventManager);
 
         /* Active un layout spécial si la requête est de type AJAX. Valable pour TOUS les modules de l'application. */
         $eventManager->getSharedManager()->attach('Laminas\Mvc\Controller\AbstractActionController', 'dispatch',
diff --git a/config/merged/index.config.php b/config/merged/index.config.php
index 91d097f9a36929b5fa158f6e8a96c06002d18df0..7865675e65b8f8b645c0ce749fd745595fd3b601 100755
--- a/config/merged/index.config.php
+++ b/config/merged/index.config.php
@@ -1,12 +1,12 @@
 <?php
 
+use Laminas\Router\Http\Literal;
+use UnicaenPrivilege\Guard\PrivilegeController;
 use UnicaenRenderer\Controller\IndexController;
 use UnicaenRenderer\Controller\IndexControllerFactory;
 use UnicaenRenderer\Provider\Privilege\DocumentcontenuPrivileges;
 use UnicaenRenderer\Provider\Privilege\DocumentmacroPrivileges;
 use UnicaenRenderer\Provider\Privilege\DocumenttemplatePrivileges;
-use UnicaenPrivilege\Guard\PrivilegeController;
-use Laminas\Router\Http\Literal;
 
 return [
     'bjyauthorize' => [
@@ -39,7 +39,7 @@ return [
                     ],
                 ],
                 'may_terminate' => true,
-                'child_routes' => [ ],
+                'child_routes' => [],
             ],
         ],
     ],
@@ -56,7 +56,7 @@ return [
         'factories' => [
         ],
     ],
-    'controllers'     => [
+    'controllers' => [
         'factories' => [
             IndexController::class => IndexControllerFactory::class,
         ]
diff --git a/config/merged/macro.config.php b/config/merged/macro.config.php
index b18f4e26004b7019bfb31118b012f24056d19db7..a5c7a94da5c2e5e9201d4cec21fc910d3f7fec40 100755
--- a/config/merged/macro.config.php
+++ b/config/merged/macro.config.php
@@ -1,5 +1,8 @@
 <?php
 
+use Laminas\Router\Http\Literal;
+use Laminas\Router\Http\Segment;
+use UnicaenPrivilege\Guard\PrivilegeController;
 use UnicaenRenderer\Controller\MacroController;
 use UnicaenRenderer\Controller\MacroControllerFactory;
 use UnicaenRenderer\Form\Macro\MacroForm;
@@ -9,9 +12,6 @@ use UnicaenRenderer\Form\Macro\MacroHydratorFactory;
 use UnicaenRenderer\Provider\Privilege\DocumentmacroPrivileges;
 use UnicaenRenderer\Service\Macro\MacroService;
 use UnicaenRenderer\Service\Macro\MacroServiceFactory;
-use UnicaenPrivilege\Guard\PrivilegeController;
-use Laminas\Router\Http\Literal;
-use Laminas\Router\Http\Segment;
 
 return [
     'bjyauthorize' => [
@@ -58,7 +58,7 @@ return [
         ],
     ],
 
-      'router' => [
+    'router' => [
         'routes' => [
             'contenu' => [
                 'child_routes' => [
@@ -135,7 +135,7 @@ return [
             MacroHydrator::class => MacroHydratorFactory::class,
         ],
     ],
-    'controllers'     => [
+    'controllers' => [
         'factories' => [
             MacroController::class => MacroControllerFactory::class,
         ]
diff --git a/config/merged/rendu.config.php b/config/merged/rendu.config.php
index 17f31d83a9f9169e81fb8172e2e8af25eb3777bb..fbdb68a47e457d3c2e9a561e9f71319069016671 100755
--- a/config/merged/rendu.config.php
+++ b/config/merged/rendu.config.php
@@ -2,15 +2,15 @@
 
 namespace UnicaenRenderer;
 
+use Laminas\Router\Http\Literal;
+use Laminas\Router\Http\Segment;
+use UnicaenPrivilege\Guard\PrivilegeController;
 use UnicaenRenderer\Controller\RenduController;
 use UnicaenRenderer\Controller\RenduControllerFactory;
+use UnicaenRenderer\Provider\Privilege\DocumentcontenuPrivileges;
 use UnicaenRenderer\Service\Rendu\RenduService;
 use UnicaenRenderer\Service\Rendu\RenduServiceFactory;
-use UnicaenRenderer\Provider\Privilege\DocumentcontenuPrivileges;
-use UnicaenPrivilege\Guard\PrivilegeController;
 use UnicaenRenderer\View\Helper\RenduViewHelper;
-use Laminas\Router\Http\Literal;
-use Laminas\Router\Http\Segment;
 
 return [
     'bjyauthorize' => [
@@ -100,7 +100,7 @@ return [
     'hydrators' => [
         'factories' => [],
     ],
-    'controllers'     => [
+    'controllers' => [
         'factories' => [
             RenduController::class => RenduControllerFactory::class,
         ]
diff --git a/config/merged/template.config.php b/config/merged/template.config.php
index 4c4ff989ce63bcba5d473a80bb57a09c8ce90f78..66fc7b21da2a79f4a9600c67285b1981a954cff9 100755
--- a/config/merged/template.config.php
+++ b/config/merged/template.config.php
@@ -1,5 +1,8 @@
 <?php
 
+use Laminas\Router\Http\Literal;
+use Laminas\Router\Http\Segment;
+use UnicaenPrivilege\Guard\PrivilegeController;
 use UnicaenRenderer\Controller\TemplateController;
 use UnicaenRenderer\Controller\TemplateControllerFactory;
 use UnicaenRenderer\Form\Template\TemplateForm;
@@ -9,9 +12,6 @@ use UnicaenRenderer\Form\Template\TemplateHydratorFactory;
 use UnicaenRenderer\Provider\Privilege\DocumenttemplatePrivileges;
 use UnicaenRenderer\Service\Template\TemplateService;
 use UnicaenRenderer\Service\Template\TemplateServiceFactory;
-use UnicaenPrivilege\Guard\PrivilegeController;
-use Laminas\Router\Http\Literal;
-use Laminas\Router\Http\Segment;
 
 return [
     'bjyauthorize' => [
@@ -143,7 +143,7 @@ return [
             TemplateHydrator::class => TemplateHydratorFactory::class,
         ],
     ],
-    'controllers'     => [
+    'controllers' => [
         'factories' => [
             TemplateController::class => TemplateControllerFactory::class,
         ]
diff --git a/config/module.config.php b/config/module.config.php
index 0622da979e703c792f4d4974c661ca91ed61e12b..8db85e15eef10f20a1303fb945732e43b0327c88 100755
--- a/config/module.config.php
+++ b/config/module.config.php
@@ -1,11 +1,7 @@
 <?php
 
-use Doctrine\Persistence\Mapping\Driver\MappingDriverChain;
 use Doctrine\ORM\Mapping\Driver\XmlDriver;
-use UnicaenPrivilege\Guard\PrivilegeController;
-use UnicaenRenderer\Controller\MacroController;
-use UnicaenRenderer\Controller\RenduController;
-use UnicaenRenderer\Controller\TemplateController;
+use Doctrine\Persistence\Mapping\Driver\MappingDriverChain;
 
 return [
     'doctrine' => [
@@ -31,13 +27,13 @@ return [
         ],
     ],
 
-    'view_manager'    => [
+    'view_manager' => [
         'template_path_stack' => [
             __DIR__ . '/../view',
         ],
     ],
 
-    'view_helpers'  => [
+    'view_helpers' => [
         'aliases' => [
         ],
         'factories' => [
diff --git a/src/UnicaenRenderer/Controller/IndexController.php b/src/UnicaenRenderer/Controller/IndexController.php
index 78918aa107a10ad5a17819c06985f9ffe3425dd3..5754b3f3088ab80905711da8a8cb7d322b3bb618 100755
--- a/src/UnicaenRenderer/Controller/IndexController.php
+++ b/src/UnicaenRenderer/Controller/IndexController.php
@@ -5,9 +5,10 @@ namespace UnicaenRenderer\Controller;
 use Laminas\Mvc\Controller\AbstractActionController;
 use Laminas\View\Model\ViewModel;
 
-class IndexController extends AbstractActionController {
+class IndexController extends AbstractActionController
+{
 
-    public function indexAction()
+    public function indexAction(): ViewModel
     {
         return new ViewModel(['title' => 'Gestion des contenus']);
     }
diff --git a/src/UnicaenRenderer/Controller/IndexControllerFactory.php b/src/UnicaenRenderer/Controller/IndexControllerFactory.php
index 51ed737d3e8958901bb82b2c2c4b104e273002c7..2da34675a57795cd5f914a73a0ea69bc8b02402a 100755
--- a/src/UnicaenRenderer/Controller/IndexControllerFactory.php
+++ b/src/UnicaenRenderer/Controller/IndexControllerFactory.php
@@ -4,13 +4,14 @@ namespace UnicaenRenderer\Controller;
 
 use Interop\Container\ContainerInterface;
 
-class IndexControllerFactory {
+class IndexControllerFactory
+{
 
     /**
      * @param ContainerInterface $container
      * @return IndexController
      */
-    public function __invoke(ContainerInterface $container)
+    public function __invoke(ContainerInterface $container): IndexController
     {
         $controller = new IndexController();
         return $controller;
diff --git a/src/UnicaenRenderer/Controller/MacroController.php b/src/UnicaenRenderer/Controller/MacroController.php
index d6f3f3b4f8eacc629fb542356b1642fce5658b18..da8bdba4a53f5d9898fab04cba0593cd1efaacb1 100755
--- a/src/UnicaenRenderer/Controller/MacroController.php
+++ b/src/UnicaenRenderer/Controller/MacroController.php
@@ -2,19 +2,20 @@
 
 namespace UnicaenRenderer\Controller;
 
-use Application\Service\Agent\AgentServiceAwareTrait;
-use UnicaenRenderer\Entity\Db\Macro;
-use UnicaenRenderer\Form\Macro\MacroFormAwareTrait;
-use UnicaenRenderer\Service\Macro\MacroServiceAwareTrait;
 use Laminas\Http\Request;
 use Laminas\Mvc\Controller\AbstractActionController;
 use Laminas\View\Model\ViewModel;
+use UnicaenRenderer\Entity\Db\Macro;
+use UnicaenRenderer\Form\Macro\MacroFormAwareTrait;
+use UnicaenRenderer\Service\Macro\MacroServiceAwareTrait;
 
-class MacroController extends AbstractActionController {
+class MacroController extends AbstractActionController
+{
     use MacroServiceAwareTrait;
     use MacroFormAwareTrait;
 
-    public function indexAction() {
+    public function indexAction(): ViewModel
+    {
         $macrosAll = $this->getMacroService()->getMacros();
         $variable = $this->params()->fromQuery('variable');
 
@@ -22,7 +23,7 @@ class MacroController extends AbstractActionController {
         $variables = [];
         foreach ($macrosAll as $macro) {
             $variables[$macro->getVariable()] = $macro->getVariable();
-            if ($variable === null OR $variable ==='' OR $macro->getVariable() === $variable) {
+            if ($variable === null or $variable === '' or $macro->getVariable() === $variable) {
                 $macros[] = $macro;
             }
         }
@@ -35,7 +36,8 @@ class MacroController extends AbstractActionController {
         ]);
     }
 
-    public function ajouterAction() {
+    public function ajouterAction(): ViewModel
+    {
         $macro = new Macro();
         $form = $this->getMacroForm();
         $form->setAttribute('action', $this->url()->fromRoute('contenu/macro/ajouter', [], [], true));
@@ -60,7 +62,8 @@ class MacroController extends AbstractActionController {
         return $vm;
     }
 
-    public function modifierAction() {
+    public function modifierAction(): ViewModel
+    {
         $macro = $this->getMacroService()->getRequestedMacro($this);
         $form = $this->getMacroForm();
         $form->setAttribute('action', $this->url()->fromRoute('contenu/macro/modifier', ['macro' => $macro->getId()], [], true));
@@ -86,7 +89,7 @@ class MacroController extends AbstractActionController {
         return $vm;
     }
 
-    public function supprimerAction()
+    public function supprimerAction(): ViewModel
     {
         $macro = $this->getMacroService()->getRequestedMacro($this);
 
@@ -110,7 +113,7 @@ class MacroController extends AbstractActionController {
         return $vm;
     }
 
-    public function genererJsonAction()
+    public function genererJsonAction(): ViewModel
     {
         $json = $this->getMacroService()->generateJSON();
 
diff --git a/src/UnicaenRenderer/Controller/MacroControllerFactory.php b/src/UnicaenRenderer/Controller/MacroControllerFactory.php
index 217da7fe83454674089a7c05cdc6a2c2dbe4ab33..645192afc0b67c1343cfa31fe4d4910e501ddb09 100755
--- a/src/UnicaenRenderer/Controller/MacroControllerFactory.php
+++ b/src/UnicaenRenderer/Controller/MacroControllerFactory.php
@@ -2,18 +2,22 @@
 
 namespace UnicaenRenderer\Controller;
 
-use Application\Service\Agent\AgentService;
 use Interop\Container\ContainerInterface;
+use Psr\Container\ContainerExceptionInterface;
+use Psr\Container\NotFoundExceptionInterface;
 use UnicaenRenderer\Form\Macro\MacroForm;
 use UnicaenRenderer\Service\Macro\MacroService;
 
-class MacroControllerFactory {
+class MacroControllerFactory
+{
 
     /**
      * @param ContainerInterface $container
      * @return MacroController
+     * @throws ContainerExceptionInterface
+     * @throws NotFoundExceptionInterface
      */
-    public function __invoke(ContainerInterface $container)
+    public function __invoke(ContainerInterface $container): MacroController
     {
         /**
          * @var MacroService $macroService
diff --git a/src/UnicaenRenderer/Controller/RenduController.php b/src/UnicaenRenderer/Controller/RenduController.php
index a8d2f60be57d7bbd0102101371dcad00b702ff30..d59accce2776bb58a8577ce4be71a09791599618 100644
--- a/src/UnicaenRenderer/Controller/RenduController.php
+++ b/src/UnicaenRenderer/Controller/RenduController.php
@@ -2,25 +2,26 @@
 
 namespace UnicaenRenderer\Controller;
 
-use UnicaenRenderer\Service\Rendu\RenduServiceAwareTrait;
 use Laminas\Http\Request;
 use Laminas\Mvc\Controller\AbstractActionController;
 use Laminas\View\Model\ViewModel;
+use UnicaenRenderer\Service\Rendu\RenduServiceAwareTrait;
 
-class RenduController extends AbstractActionController {
+class RenduController extends AbstractActionController
+{
     use RenduServiceAwareTrait;
 
-    public function indexAction()
+    public function indexAction(): ViewModel
     {
-       $rendus = $this->getRenduService()->getRendus();
+        $rendus = $this->getRenduService()->getRendus();
 
-       return new ViewModel([
-           'title' => 'Gestions des rendus',
-           'rendus' => $rendus,
-       ]);
+        return new ViewModel([
+            'title' => 'Gestions des rendus',
+            'rendus' => $rendus,
+        ]);
     }
 
-    public function afficherAction()
+    public function afficherAction(): ViewModel
     {
         $rendu = $this->getRenduService()->getRequestedRendu($this);
 
@@ -30,7 +31,7 @@ class RenduController extends AbstractActionController {
         ]);
     }
 
-    public function supprimerAction()
+    public function supprimerAction(): ViewModel
     {
         $rendu = $this->getRenduService()->getRequestedRendu($this);
 
diff --git a/src/UnicaenRenderer/Controller/RenduControllerFactory.php b/src/UnicaenRenderer/Controller/RenduControllerFactory.php
index f3472639fe13f2d9bf9697897007e8dde0126063..5f4533340f473d5de43a3cb83032a9c3fc95b04e 100644
--- a/src/UnicaenRenderer/Controller/RenduControllerFactory.php
+++ b/src/UnicaenRenderer/Controller/RenduControllerFactory.php
@@ -3,11 +3,20 @@
 namespace UnicaenRenderer\Controller;
 
 use Interop\Container\ContainerInterface;
+use Psr\Container\ContainerExceptionInterface;
+use Psr\Container\NotFoundExceptionInterface;
 use UnicaenRenderer\Service\Rendu\RenduService;
 
-class RenduControllerFactory {
+class RenduControllerFactory
+{
 
-    public function __invoke(ContainerInterface $container)
+    /**
+     * @param ContainerInterface $container
+     * @return RenduController
+     * @throws ContainerExceptionInterface
+     * @throws NotFoundExceptionInterface
+     */
+    public function __invoke(ContainerInterface $container): RenduController
     {
         /**
          * @var RenduService $contenuService
diff --git a/src/UnicaenRenderer/Controller/TemplateController.php b/src/UnicaenRenderer/Controller/TemplateController.php
index a69d0fea235f4e0599110596a8cfe7d6caee70b0..0737d206080a22621508131b758e788c37f39e9e 100755
--- a/src/UnicaenRenderer/Controller/TemplateController.php
+++ b/src/UnicaenRenderer/Controller/TemplateController.php
@@ -2,26 +2,26 @@
 
 namespace UnicaenRenderer\Controller;
 
-use UnicaenRenderer\Entity\Db\Template;
-use UnicaenRenderer\Form\Template\TemplateFormAwareTrait;
-use UnicaenRenderer\Service\Template\TemplateServiceAwareTrait;
-use UnicaenRenderer\Service\Macro\MacroServiceAwareTrait;
 use Laminas\Http\Request;
 use Laminas\Mvc\Controller\AbstractActionController;
 use Laminas\View\Model\ViewModel;
+use UnicaenRenderer\Entity\Db\Template;
+use UnicaenRenderer\Form\Template\TemplateFormAwareTrait;
+use UnicaenRenderer\Service\Macro\MacroServiceAwareTrait;
+use UnicaenRenderer\Service\Template\TemplateServiceAwareTrait;
 
-class TemplateController extends AbstractActionController {
+class TemplateController extends AbstractActionController
+{
     use TemplateServiceAwareTrait;
     use MacroServiceAwareTrait;
     use TemplateFormAwareTrait;
 
     const SANS_NAMESPACE = "Sans namespace";
 
-    public function indexAction() : ViewModel
+    public function indexAction(): ViewModel
     {
         $selected = $this->params()->fromQuery('namespace');
 
-        /** @var Template[] $allTemplates */
         $allTemplates = $this->getTemplateService()->getTemplates();
 
         $namespaces = [];
@@ -37,7 +37,7 @@ class TemplateController extends AbstractActionController {
             } else {
                 if ($selected === TemplateController::SANS_NAMESPACE) {
                     if ($template->getNamespace() === null) $templates[] = $template;
-                }  else {
+                } else {
                     if ($template->getNamespace() === $selected) $templates[] = $template;
                 }
             }
@@ -51,7 +51,7 @@ class TemplateController extends AbstractActionController {
         ]);
     }
 
-    public function afficherAction()
+    public function afficherAction(): ViewModel
     {
         $template = $this->getTemplateService()->getRequestedTemplate($this);
 
@@ -61,7 +61,7 @@ class TemplateController extends AbstractActionController {
         ]);
     }
 
-    public function ajouterAction()
+    public function ajouterAction(): ViewModel
     {
         $template = new Template();
 
@@ -87,7 +87,7 @@ class TemplateController extends AbstractActionController {
         return $vm;
     }
 
-    public function modifierAction()
+    public function modifierAction(): ViewModel
     {
         $template = $this->getTemplateService()->getRequestedTemplate($this);
 
@@ -111,7 +111,7 @@ class TemplateController extends AbstractActionController {
         ]);
     }
 
-    public function detruireAction()
+    public function detruireAction(): ViewModel
     {
         $template = $this->getTemplateService()->getRequestedTemplate($this);
 
diff --git a/src/UnicaenRenderer/Controller/TemplateControllerFactory.php b/src/UnicaenRenderer/Controller/TemplateControllerFactory.php
index 6835813ad60a6a877ea3857e65d5ed18089a757c..b5ffca9f924faf77aa095ded9d8d03c997600cfa 100755
--- a/src/UnicaenRenderer/Controller/TemplateControllerFactory.php
+++ b/src/UnicaenRenderer/Controller/TemplateControllerFactory.php
@@ -3,16 +3,21 @@
 namespace UnicaenRenderer\Controller;
 
 use Interop\Container\ContainerInterface;
+use Psr\Container\ContainerExceptionInterface;
+use Psr\Container\NotFoundExceptionInterface;
 use UnicaenRenderer\Form\Template\TemplateForm;
 use UnicaenRenderer\Service\Template\TemplateService;
 
-class TemplateControllerFactory {
+class TemplateControllerFactory
+{
 
     /**
      * @param ContainerInterface $container
      * @return TemplateController
+     * @throws ContainerExceptionInterface
+     * @throws NotFoundExceptionInterface
      */
-    public function __invoke(ContainerInterface $container)
+    public function __invoke(ContainerInterface $container): TemplateController
     {
         /**
          * @var TemplateService $templateService
diff --git a/src/UnicaenRenderer/Entity/Db/Macro.php b/src/UnicaenRenderer/Entity/Db/Macro.php
index 48acdd622eac8f0792e8969ca605354c1f438cb4..a2aca87638831d5a74490d0d0ee440ab14bd66ea 100755
--- a/src/UnicaenRenderer/Entity/Db/Macro.php
+++ b/src/UnicaenRenderer/Entity/Db/Macro.php
@@ -8,10 +8,7 @@ class Macro implements ResourceInterface
 {
     const RESOURCE_ID = 'Macro';
 
-    /**
-     * @return string
-     */
-    public function getResourceId()
+    public function getResourceId(): string
     {
         return self::RESOURCE_ID;
     }
diff --git a/src/UnicaenRenderer/Entity/Db/Rendu.php b/src/UnicaenRenderer/Entity/Db/Rendu.php
index 303073883422f25cdf390df7f0906145934e79eb..d65b99067e431f46baa7c499fc77c799e8706958 100644
--- a/src/UnicaenRenderer/Entity/Db/Rendu.php
+++ b/src/UnicaenRenderer/Entity/Db/Rendu.php
@@ -9,10 +9,7 @@ class Rendu implements ResourceInterface
 {
     const RESOURCE_ID = 'Rendu';
 
-    /**
-     * @return string
-     */
-    public function getResourceId()
+    public function getResourceId(): string
     {
         return self::RESOURCE_ID;
     }
diff --git a/src/UnicaenRenderer/Entity/Db/Template.php b/src/UnicaenRenderer/Entity/Db/Template.php
index 9f288bf1464cee333b965ad35e6167c60ee4b78c..1b060266410d8bd345148154e51b75a7a7ca7a79 100755
--- a/src/UnicaenRenderer/Entity/Db/Template.php
+++ b/src/UnicaenRenderer/Entity/Db/Template.php
@@ -13,10 +13,7 @@ class Template implements ResourceInterface
         return (implode('_', [$this->getResourceId(), $this->getCode()]));
     }
 
-    /**
-     * @return string
-     */
-    public function getResourceId()
+    public function getResourceId(): string
     {
         return self::RESOURCE_ID;
     }
diff --git a/src/UnicaenRenderer/Form/Macro/MacroForm.php b/src/UnicaenRenderer/Form/Macro/MacroForm.php
index a27b1faef3032faf40179a17b3c71196a958e70f..221882d42e37aa644e70743f80f93794944850e5 100755
--- a/src/UnicaenRenderer/Form/Macro/MacroForm.php
+++ b/src/UnicaenRenderer/Form/Macro/MacroForm.php
@@ -119,6 +119,4 @@ class MacroForm extends Form
         $this->get('old-code')->setValue($value);
     }
 
-}
-
-;
+}
\ No newline at end of file
diff --git a/src/UnicaenRenderer/Form/Macro/MacroFormFactory.php b/src/UnicaenRenderer/Form/Macro/MacroFormFactory.php
index 01aaaca29f2e274a44152a263c15899d7b059553..9d14a1ae16b8b3768d40c4cf7be0aa240f0eaaac 100755
--- a/src/UnicaenRenderer/Form/Macro/MacroFormFactory.php
+++ b/src/UnicaenRenderer/Form/Macro/MacroFormFactory.php
@@ -7,7 +7,8 @@ use Interop\Container\ContainerInterface;
 use Psr\Container\ContainerExceptionInterface;
 use Psr\Container\NotFoundExceptionInterface;
 
-class MacroFormFactory {
+class MacroFormFactory
+{
 
     /**
      * @param ContainerInterface $container
@@ -15,7 +16,7 @@ class MacroFormFactory {
      * @throws ContainerExceptionInterface
      * @throws NotFoundExceptionInterface
      */
-    public function __invoke(ContainerInterface $container) : MacroForm
+    public function __invoke(ContainerInterface $container): MacroForm
     {
         /**
          * @var EntityManager $entityManager
diff --git a/src/UnicaenRenderer/Form/Macro/MacroHydrator.php b/src/UnicaenRenderer/Form/Macro/MacroHydrator.php
index aa2cb84c180792e290fb97aa4dea5e0d3e9cad81..eeede7ee7a0ec7656f4433277bfab7ca354aa3ea 100755
--- a/src/UnicaenRenderer/Form/Macro/MacroHydrator.php
+++ b/src/UnicaenRenderer/Form/Macro/MacroHydrator.php
@@ -2,8 +2,8 @@
 
 namespace UnicaenRenderer\Form\Macro;
 
-use UnicaenRenderer\Entity\Db\Macro;
 use Laminas\Hydrator\HydratorInterface;
+use UnicaenRenderer\Entity\Db\Macro;
 
 class MacroHydrator implements HydratorInterface
 {
diff --git a/src/UnicaenRenderer/Form/Template/TemplateForm.php b/src/UnicaenRenderer/Form/Template/TemplateForm.php
index 88b6e9dee4cb132ca18fa0380c65aa82099d8928..54c7ab8eb16333b576682581c98b539b022e78bd 100755
--- a/src/UnicaenRenderer/Form/Template/TemplateForm.php
+++ b/src/UnicaenRenderer/Form/Template/TemplateForm.php
@@ -21,9 +21,9 @@ class TemplateForm extends Form
 {
     use MacroServiceAwareTrait;
     use ProvidesObjectManager;
-    
 
-    public function getMacros() : string
+
+    public function getMacros(): string
     {
         return $this->getMacroService()->generateJSON();
     }
diff --git a/src/UnicaenRenderer/Form/Template/TemplateFormFactory.php b/src/UnicaenRenderer/Form/Template/TemplateFormFactory.php
index 49079dc3b3d7677cade669085d77f22e208dee4c..89d60704f0ba17e4e99fd02b485656bb0fd98fe1 100755
--- a/src/UnicaenRenderer/Form/Template/TemplateFormFactory.php
+++ b/src/UnicaenRenderer/Form/Template/TemplateFormFactory.php
@@ -8,7 +8,8 @@ use Psr\Container\ContainerExceptionInterface;
 use Psr\Container\NotFoundExceptionInterface;
 use UnicaenRenderer\Service\Macro\MacroService;
 
-class TemplateFormFactory {
+class TemplateFormFactory
+{
 
     /**
      * @param ContainerInterface $container
@@ -16,7 +17,7 @@ class TemplateFormFactory {
      * @throws ContainerExceptionInterface
      * @throws NotFoundExceptionInterface
      */
-    public function __invoke(ContainerInterface $container) : TemplateForm
+    public function __invoke(ContainerInterface $container): TemplateForm
     {
         /**
          * @var EntityManager $entityManager
diff --git a/src/UnicaenRenderer/Form/Template/TemplateHydrator.php b/src/UnicaenRenderer/Form/Template/TemplateHydrator.php
index 80100613b2aeb98afe0f96bf427a15ea89faca60..c414248a79e9f669c7ad506d36e25318ceaa8b1d 100755
--- a/src/UnicaenRenderer/Form/Template/TemplateHydrator.php
+++ b/src/UnicaenRenderer/Form/Template/TemplateHydrator.php
@@ -2,8 +2,8 @@
 
 namespace UnicaenRenderer\Form\Template;
 
-use UnicaenRenderer\Entity\Db\Template;
 use Laminas\Hydrator\HydratorInterface;
+use UnicaenRenderer\Entity\Db\Template;
 
 class TemplateHydrator implements HydratorInterface
 {
@@ -32,7 +32,7 @@ class TemplateHydrator implements HydratorInterface
      * @param array $data
      * @return Template
      */
-    public function hydrate(array $data, object $object) : object
+    public function hydrate(array $data, object $object): object
     {
         $code = (isset($data['code']) and trim($data['code']) !== "") ? trim($data['code']) : null;
         $type = (isset($data['type']) and trim($data['type']) !== "") ? trim($data['type']) : null;
diff --git a/src/UnicaenRenderer/Form/Template/TemplateHydratorFactory.php b/src/UnicaenRenderer/Form/Template/TemplateHydratorFactory.php
index 2044d117f6eb2d9e92f6c1c17a561793f43195ab..70c1970ad1c61a23903269506f45ea1bc9f837d4 100755
--- a/src/UnicaenRenderer/Form/Template/TemplateHydratorFactory.php
+++ b/src/UnicaenRenderer/Form/Template/TemplateHydratorFactory.php
@@ -4,13 +4,14 @@ namespace UnicaenRenderer\Form\Template;
 
 use Interop\Container\ContainerInterface;
 
-class TemplateHydratorFactory {
+class TemplateHydratorFactory
+{
 
     /**
      * @param ContainerInterface $container
      * @return TemplateHydrator
      */
-    public function __invoke(ContainerInterface $container) : TemplateHydrator
+    public function __invoke(ContainerInterface $container): TemplateHydrator
     {
         $hydrator = new TemplateHydrator();
         return $hydrator;
diff --git a/src/UnicaenRenderer/Service/Macro/MacroService.php b/src/UnicaenRenderer/Service/Macro/MacroService.php
index a8102decc890f583093dfc46b7ae5252cffed761..8b9795ff5b8dfb0283deef969f28860fed20088d 100755
--- a/src/UnicaenRenderer/Service/Macro/MacroService.php
+++ b/src/UnicaenRenderer/Service/Macro/MacroService.php
@@ -3,8 +3,9 @@
 namespace UnicaenRenderer\Service\Macro;
 
 use Doctrine\ORM\EntityManager;
+use Doctrine\ORM\Exception\NotSupported;
+use Doctrine\ORM\Exception\ORMException;
 use Doctrine\ORM\NonUniqueResultException;
-use Doctrine\ORM\ORMException;
 use Doctrine\ORM\QueryBuilder;
 use DoctrineModule\Persistence\ProvidesObjectManager;
 use Laminas\Mvc\Controller\AbstractActionController;
@@ -74,13 +75,13 @@ class MacroService
 
     /** REQUETAGE *****************************************************************************************************/
 
-    /**
-     * @return QueryBuilder
-     */
     public function createQueryBuilder(): QueryBuilder
     {
-        $qb = $this->objectManager->getRepository(Macro::class)->createQueryBuilder('macro');
-
+        try {
+            $qb = $this->objectManager->getRepository(Macro::class)->createQueryBuilder('macro');
+        } catch (NotSupported $e) {
+            throw new RuntimeException("Un problème est survenu lors de la création du QueryBuilder",0,$e);
+        }
         return $qb;
     }
 
diff --git a/src/UnicaenRenderer/Service/Rendu/RenduService.php b/src/UnicaenRenderer/Service/Rendu/RenduService.php
index 57aefc505a00d911e07a34683f1ffe1ba8127da8..cb2e594d50efea7dbd99d359280cc2c5a1072dd5 100644
--- a/src/UnicaenRenderer/Service/Rendu/RenduService.php
+++ b/src/UnicaenRenderer/Service/Rendu/RenduService.php
@@ -4,8 +4,9 @@ namespace UnicaenRenderer\Service\Rendu;
 
 use DateTime;
 use Doctrine\ORM\EntityManager;
+use Doctrine\ORM\Exception\NotSupported;
 use Doctrine\ORM\NonUniqueResultException;
-use Doctrine\ORM\ORMException;
+use Doctrine\ORM\Exception\ORMException;
 use Doctrine\ORM\QueryBuilder;
 use DoctrineModule\Persistence\ProvidesObjectManager;
 use Laminas\Mvc\Controller\AbstractActionController;
@@ -65,8 +66,12 @@ class RenduService
 
     public function createQueryBuilder(): QueryBuilder
     {
-        $qb = $this->objectManager->getRepository(Rendu::class)->createQueryBuilder('contenu')
-            ->leftJoin('contenu.template', 'template')->addSelect('template');
+        try {
+            $qb = $this->objectManager->getRepository(Rendu::class)->createQueryBuilder('contenu')
+                ->leftJoin('contenu.template', 'template')->addSelect('template');
+        } catch (NotSupported $e) {
+            throw new RuntimeException("Un problème est survenu lors de la création du QueryBuilder",0,$e);
+        }
         return $qb;
     }
 
diff --git a/src/UnicaenRenderer/Service/Template/TemplateService.php b/src/UnicaenRenderer/Service/Template/TemplateService.php
index c40b9979bca7dc5ba4b9603b6e1faa8c9537a930..7243c82cea7e7bebfe4186ee8250a9dd89b7049d 100755
--- a/src/UnicaenRenderer/Service/Template/TemplateService.php
+++ b/src/UnicaenRenderer/Service/Template/TemplateService.php
@@ -3,8 +3,9 @@
 namespace UnicaenRenderer\Service\Template;
 
 use Doctrine\ORM\EntityManager;
+use Doctrine\ORM\Exception\NotSupported;
+use Doctrine\ORM\Exception\ORMException;
 use Doctrine\ORM\NonUniqueResultException;
-use Doctrine\ORM\ORMException;
 use Doctrine\ORM\QueryBuilder;
 use DoctrineModule\Persistence\ProvidesObjectManager;
 use RuntimeException;
@@ -59,8 +60,11 @@ class TemplateService {
 
     public function createQueryBuilder() : QueryBuilder
     {
-        $qb = $this->objectManager->getRepository(Template::class)->createQueryBuilder('template')
-        ;
+        try {
+            $qb = $this->objectManager->getRepository(Template::class)->createQueryBuilder('template');
+        } catch (NotSupported $e) {
+            throw new RuntimeException("Un problème est survenu lors de la création du QueryBuilder",0,$e);
+        }
 
         return $qb;
     }
@@ -80,6 +84,22 @@ class TemplateService {
         return $result;
     }
 
+    /** @return string[] */
+    public function getTemplatesAsOptions(string $champ = 'code', string $ordre = 'ASC', ?string $type = null) : array
+    {
+        $qb = $this->createQueryBuilder()->orderBy('template.' . $champ, $ordre);
+        if ($type !== null) {
+            $qb = $qb->andWhere('template.document_type = :type')
+                ->setParameter('type', $type);
+        }
+        $templates = $this->getTemplates($champ,$ordre);
+        $options = [];
+        foreach ($templates as $template) {
+            $options[$template->getId()] = $template->getCode();
+        }
+        return $options;
+    }
+
     public function getTemplate(?int $id) : ?Template
     {
         $qb = $this->createQueryBuilder()
diff --git a/src/UnicaenRenderer/View/Helper/partial/rendu.phtml b/src/UnicaenRenderer/View/Helper/partial/rendu.phtml
index 9e5aea17a885ce3673f809ba2a5bc3fdf5a965e4..0cf37bedd5c9fa6f6acda33f1cab4599575f092c 100644
--- a/src/UnicaenRenderer/View/Helper/partial/rendu.phtml
+++ b/src/UnicaenRenderer/View/Helper/partial/rendu.phtml
@@ -14,11 +14,11 @@ use UnicaenRenderer\Entity\Db\Rendu;
     <div class="col-md-4">
         <h2>Information sur le rendu </h2>
         <dl>
-            <dt> Identifiant </dt>
+            <dt> Identifiant</dt>
             <dd>
                 <?php echo $rendu->getId(); ?>
             </dd>
-            <dt> Template </dt>
+            <dt> Template</dt>
             <dd>
                 <?php if ($rendu->getTemplate()) : ?>
                     <?php echo $rendu->getTemplate()->getCode(); ?>
@@ -26,7 +26,7 @@ use UnicaenRenderer\Entity\Db\Rendu;
                     <i>Aucun template associé</i>
                 <?php endif; ?>
             </dd>
-            <dt> Date de génération </dt>
+            <dt> Date de génération</dt>
             <dd>
                 <?php echo $rendu->getDate()->format('d/m/Y'); ?>
             </dd>
diff --git a/view/unicaen-renderer/default/default-form.phtml b/view/unicaen-renderer/default/default-form.phtml
index f2ab168e454d4675fde027b630af574598cc0692..685510f3516aa6cb9bdc097b84e1e9f110635e04 100755
--- a/view/unicaen-renderer/default/default-form.phtml
+++ b/view/unicaen-renderer/default/default-form.phtml
@@ -11,17 +11,17 @@ use Laminas\Form\Form;
 <?php echo $this->form($form); ?>
 
 <script>
-    $(document).ready(function() {
+    $(document).ready(function () {
         tinymce.remove();
         tinymce.init({
             selector: '.type2',
             toolbar: 'newdocument undo redo | bold italic underline removeformat | bullist',
             resize: true,
             language: 'fr_FR',
-            entity_encoding : "raw",
+            entity_encoding: "raw",
             plugins: 'lists',
             statusbar: true,
-            browser_spellcheck : true,
+            browser_spellcheck: true,
             branding: false,
             menu: {},
             body_id: 'description',
diff --git a/view/unicaen-renderer/template/index.phtml b/view/unicaen-renderer/template/index.phtml
index 514f1c4dcddec7fdbc50863e861fbdb449e4016a..b420e5e02c44ce07d282324bc9e10040aa05aa1c 100755
--- a/view/unicaen-renderer/template/index.phtml
+++ b/view/unicaen-renderer/template/index.phtml
@@ -1,7 +1,7 @@
 <?php
 
 /**
- * @see \UnicaenRenderer\Controller\TemplateController::indexAction()
+ * @see TemplateController::indexAction
  * @var Template[] $templates
  * @var Template[][] $namespaces @desc namespace:string => Template[] (templates du namespace)
  * @var string $selected
@@ -48,7 +48,7 @@ $this->headTitle($title);
 </div>
 
 <?php if ($canAjouter) : ?>
-    <?php /** @see \UnicaenRenderer\Controller\TemplateController::ajouterAction() */ ?>
+    <?php /** @see TemplateController::ajouterAction */ ?>
     <a href="<?php echo $this->url('contenu/template/ajouter', [], [], true); ?>"
        class="btn btn-primary action ajax-modal" data-event="modification">
         <span class="icon icon-ajouter"></span>
@@ -63,34 +63,34 @@ $this->headTitle($title);
     </div>
     <div class="card-body">
         <form method="get" action="">
-        <div class="row">
-            <div class="col-md-5">
-                <label for="namespace"> Namespace : </label>
-                <select id="namespace" name="namespace" class="selectpicker" data-live-search="true">
+            <div class="row">
+                <div class="col-md-5">
+                    <label for="namespace"> Namespace : </label>
+                    <select id="namespace" name="namespace" class="selectpicker" data-live-search="true">
                         <option value=""> Tous les namespaces</option>
-                    <?php foreach ($namespaces as $namespace => $t) : ?>
-                        <?php if ($namespace === "") $namespace = TemplateController::SANS_NAMESPACE; ?>
-                        <option value="<?php echo $namespace; ?>"
+                        <?php foreach ($namespaces as $namespace => $t) : ?>
+                            <?php if ($namespace === "") $namespace = TemplateController::SANS_NAMESPACE; ?>
+                            <option value="<?php echo $namespace; ?>"
                                 <?php if ($namespace === $selected) echo " selected "; ?>
-                        >
+                            >
                                 <?php echo $namespace; ?>
-                        </option>
-                    <?php endforeach; ?>
-                </select>
-            </div>
-            <div class="col-md-7">
-                <div class="form-group">
-                    <button class="btn btn-primary" id="filter">
-                        <span class="icon icon-filtrer"></span>
-                        Filtrer les templates
-                    </button>
-                    <button class="btn btn-primary" id="clear">
-                        <span class="icon icon-gommer"></span>
-                        Remise à zéro
-                    </button>
+                            </option>
+                        <?php endforeach; ?>
+                    </select>
+                </div>
+                <div class="col-md-7">
+                    <div class="form-group">
+                        <button class="btn btn-primary" id="filter">
+                            <span class="icon icon-filtrer"></span>
+                            Filtrer les templates
+                        </button>
+                        <button class="btn btn-primary" id="clear">
+                            <span class="icon icon-gommer"></span>
+                            Remise à zéro
+                        </button>
+                    </div>
                 </div>
             </div>
-        </div>
         </form>
     </div>
 </div>
@@ -100,7 +100,7 @@ $this->headTitle($title);
     <tr>
         <th> Code</th>
         <th> Type</th>
-        <th> Namespace </th>
+        <th> Namespace</th>
         <th class="col-md-1 text-end"> Action</th>
     </tr>
     </thead>
@@ -127,20 +127,20 @@ $this->headTitle($title);
             </td>
             <td>
                 <?php if ($canAfficher) : ?>
-                    <?php /** @see \UnicaenRenderer\Controller\TemplateController::afficherAction() */ ?>
+                    <?php /** @see TemplateController::afficherAction */ ?>
                     <a href="<?php echo $this->url('contenu/template/afficher', ['template' => $template->getId()], [], true); ?>"
                        class="ajax-modal">
                         <span class="icon icon-voir"></span></a>
                 <?php endif; ?>
                 <?php if ($canModifier) : ?>
-                    <?php /** @see \UnicaenRenderer\Controller\TemplateController::modifierAction() */ ?>
+                    <?php /** @see TemplateController::modifierAction */ ?>
                     <a href="<?php echo $this->url('contenu/template/modifier', ['template' => $template->getId()], [], true); ?>"
                        class="ajax-modal" data-event="modification"
                     >
                         <span class="icon icon-editer"></span></a>
                 <?php endif; ?>
                 <?php if ($canDetruire) : ?>
-                    <?php /** @see \UnicaenRenderer\Controller\TemplateController::detruireAction() */ ?>
+                    <?php /** @see TemplateController::detruireAction */ ?>
                     <a href="<?php echo $this->url('contenu/template/detruire', ['template' => $template->getId()], [], true); ?>"
                        class="ajax-modal" data-event="modification"
                     >