diff --git a/module/DemandeExterne/src/Controller/DemandeExterneController.php b/module/DemandeExterne/src/Controller/DemandeExterneController.php
index 1c7b7947acf1292472b911fd9270785c533c9c72..951215f4b3edc29e91d4221c5343d50160fda4ec 100644
--- a/module/DemandeExterne/src/Controller/DemandeExterneController.php
+++ b/module/DemandeExterne/src/Controller/DemandeExterneController.php
@@ -61,9 +61,9 @@ class DemandeExterneController extends AbstractActionController
     use SelectionGestionnaireFormAwareTrait;
     use UploadFormAwareTrait;
 
-    public function indexAction(): ViewModel
+
+    public function traiterParamsFromQueries(array $fromQueries, array $etatsListe): array
     {
-        $fromQueries = $this->params()->fromQuery();
         $params = [
             'agent' => $this->getAgentService()->getAgent($fromQueries['agent-filtre']['id'] ?? null),
             'organisme' => $fromQueries['organisme']['id'] ?? null,
@@ -81,9 +81,17 @@ class DemandeExterneController extends AbstractActionController
                 }
             }
         } else {
-            $params['etats'] = DemandeExterneEtats::ETATS_OUVERTS;
+            $params['etats'] = $etatsListe;
             $params['historise'] = 0;
+            $params['annee'] = (new DateTime())->format('Y');
         }
+        return $params;
+    }
+
+    public function indexAction(): ViewModel
+    {
+
+        $params = $this->traiterParamsFromQueries($this->params()->fromQuery(), DemandeExterneEtats::ETATS_OUVERTS);
         $demandes = $this->getDemandeExterneService()->getDemandesExternesWithFiltre($params);
 
         $etats = $this->getEtatTypeService()->getEtatsTypesByCategorieCode(DemandeExterneEtats::TYPE);
@@ -100,17 +108,9 @@ class DemandeExterneController extends AbstractActionController
 
     public function indexTransformationAction(): ViewModel
     {
-        $fromQueries = $this->params()->fromQuery();
-        $params = [
-            'agent' => $this->getAgentService()->getAgent($fromQueries['agent-filtre']['id'] ?? null),
-            'organisme' => $fromQueries['organisme']['id'] ?? null,
-            'etat' => $this->getEtatTypeService()->getEtatType((isset($fromQueries['etat']) && trim($fromQueries['etat']) !== '') ? trim($fromQueries['etat']) : null),
-            'historise' => $fromQueries['historise'] ?? null,
-            'annee' => $fromQueries['annee'] ?? null,
-        ];
-        $params['etats'] = [DemandeExterneEtats::ETAT_TERMINEE];
-
+        $params = $this->traiterParamsFromQueries($this->params()->fromQuery(), [DemandeExterneEtats::ETAT_TERMINEE]);
         $demandes = $this->getDemandeExterneService()->getDemandesExternesWithFiltre($params);
+
         $demandes = array_filter($demandes, function (DemandeExterne $demande) { return $demande->getInscription() === null;});
         $etats = [$this->getEtatTypeService()->getEtatTypeByCode(DemandeExterneEtats::ETAT_TERMINEE)];
 
@@ -123,6 +123,33 @@ class DemandeExterneController extends AbstractActionController
         ]);
     }
 
+    public function parapheurAction(): ViewModel
+    {
+        $plafond1 = $this->getParametreService()->getValeurForParametre(DemandeExterneParametres::TYPE, DemandeExterneParametres::PLAFOND_DRH);
+        $plafond2 = $this->getParametreService()->getValeurForParametre(DemandeExterneParametres::TYPE, DemandeExterneParametres::PLAFOND_DGS);
+
+        $etats = [
+            $this->getEtatTypeService()->getEtatTypeByCode(DemandeExterneEtats::ETAT_VALIDATION_GESTIONNAIRE,DemandeExterneEtats::TYPE),
+            $this->getEtatTypeService()->getEtatTypeByCode(DemandeExterneEtats::ETAT_VALIDATION_RESPONSABLE,DemandeExterneEtats::TYPE),
+            $this->getEtatTypeService()->getEtatTypeByCode(DemandeExterneEtats::ETAT_VALIDATION_DRH,DemandeExterneEtats::TYPE),
+            $this->getEtatTypeService()->getEtatTypeByCode(DemandeExterneEtats::ETAT_VALIDATION_DGS,DemandeExterneEtats::TYPE),
+        ];
+
+        $params = $this->traiterParamsFromQueries($this->params()->fromQuery(), array_map(function (EtatType $etat) {return $etat->getCode();}, $etats));
+        $demandes = $this->getDemandeExterneService()->getDemandesExternesWithFiltre($params);
+        $gestionnaires = $this->getUserService()->getUtilisateursByRoleIdAsOptions(FormationRoles::GESTIONNAIRE_FORMATION);
+        return new ViewModel([
+            'plafond1' => $plafond1,
+            'plafond2' => $plafond2,
+            'demandes' => $demandes,
+
+            'etats' => $etats,
+            'params' => $params,
+            'gestionnaires' => $gestionnaires,
+        ]);
+
+    }
+
     public function afficherAction(): ViewModel
     {
         $demande = $this->getDemandeExterneService()->getRequestedDemandeExterne($this);
@@ -691,54 +718,7 @@ class DemandeExterneController extends AbstractActionController
     }
 
     /** GESTION DES DEMANDES *************************************************************************/
-    public function parapheurAction(): ViewModel
-    {
-        $plafond1 = $this->getParametreService()->getValeurForParametre(DemandeExterneParametres::TYPE, DemandeExterneParametres::PLAFOND_DRH);
-        $plafond2 = $this->getParametreService()->getValeurForParametre(DemandeExterneParametres::TYPE, DemandeExterneParametres::PLAFOND_DGS);
 
-        $etats = [
-            $this->getEtatTypeService()->getEtatTypeByCode(DemandeExterneEtats::ETAT_VALIDATION_GESTIONNAIRE,DemandeExterneEtats::TYPE),
-            $this->getEtatTypeService()->getEtatTypeByCode(DemandeExterneEtats::ETAT_VALIDATION_RESPONSABLE,DemandeExterneEtats::TYPE),
-            $this->getEtatTypeService()->getEtatTypeByCode(DemandeExterneEtats::ETAT_VALIDATION_DRH,DemandeExterneEtats::TYPE),
-            $this->getEtatTypeService()->getEtatTypeByCode(DemandeExterneEtats::ETAT_VALIDATION_DGS,DemandeExterneEtats::TYPE),
-        ];
-
-        $fromQueries = $this->params()->fromQuery();
-        $params = [
-            'agent' => $this->getAgentService()->getAgent($fromQueries['agent-filtre']['id'] ?? null),
-            'organisme' => $fromQueries['organisme']['id'] ?? null,
-            'etat' => $this->getEtatTypeService()->getEtatType((isset($fromQueries['etat']) && trim($fromQueries['etat']) !== '') ? trim($fromQueries['etat']) : null),
-            'historise' => $fromQueries['historise'] ?? null,
-            'annee' => $fromQueries['annee'] ?? null,
-            'agent-filtre[id]' => $fromQueries['agent-filtre']['id']??null,
-        ];
-        $liste = $this->getRequest()->getUri()->getQuery();
-        if ($liste and $liste !== '') {
-            $liste = explode('&', $liste);
-            foreach ($liste as $item) {
-                [$key, $value] = explode('=', $item);
-                if ($key === "gestionnaires" or $key === "etats") {
-                    $params[$key][] = $value;
-                }
-            }
-        } else {
-            $params['etats'] = array_map(function (EtatType $etat) {return $etat->getCode();}, $etats);
-            $params['historise'] = 0;
-        }
-
-        $demandes = $this->getDemandeExterneService()->getDemandesExternesWithFiltre($params);
-        $gestionnaires = $this->getUserService()->getUtilisateursByRoleIdAsOptions(FormationRoles::GESTIONNAIRE_FORMATION);
-        return new ViewModel([
-            'plafond1' => $plafond1,
-            'plafond2' => $plafond2,
-            'demandes' => $demandes,
-
-            'etats' => $etats,
-            'params' => $params,
-            'gestionnaires' => $gestionnaires,
-        ]);
-
-    }
 
     public function gererAction(): ViewModel
     {
diff --git a/module/DemandeExterne/view/demande-externe/demande-externe/partial/filtre.phtml b/module/DemandeExterne/view/demande-externe/demande-externe/partial/filtre.phtml
index 524673ca4ca6586b8aaf5ca8cba4af64663484a6..9d619dbb73e590f1f56e3a96cda78a06a0c52e0a 100644
--- a/module/DemandeExterne/view/demande-externe/demande-externe/partial/filtre.phtml
+++ b/module/DemandeExterne/view/demande-externe/demande-externe/partial/filtre.phtml
@@ -125,11 +125,11 @@ use UnicaenUtilisateur\Entity\Db\User;
     });
 
 <?php if (isset($params['agent'])) :?>
-        $('input[name="agent-filtre[label]').val(" <?php echo $params['agent']->getDenomination(); ?> ");
+        $('input[name="agent-filtre[label]').val("<?php echo $params['agent']->getDenomination(); ?>");
         $('input[name="agent-filtre[id]').val("<?php echo $params['agent']->getId(); ?>");
 <?php endif; ?>
 <?php if (isset($params['organisme'])) :?>
-        $('input[name="organisme[label]').val(" <?php echo $params['organisme']; ?> ");
+        $('input[name="organisme[label]').val("<?php echo $params['organisme']; ?>");
         $('input[name="organisme[id]').val("<?php echo $params['organisme']; ?>");
 <?php endif; ?>
 <?php if (isset($params['etat'])) :?>