From 21c6a22e0bcffd5c630d9a454d19359bf45a6147 Mon Sep 17 00:00:00 2001
From: Jonathan Foucher <jfoucher@gmail.com>
Date: Mon, 15 Jan 2024 16:40:46 +0100
Subject: [PATCH] Order of proofs when connected as manager. Fixes
 https://gitlab.adullact.net/soluris/madis/-/issues/887

---
 .../Registry/Controller/ProofController.php   | 25 +++++++++++++------
 templates/Registry/Proof/list.html.twig       |  6 +++--
 2 files changed, 22 insertions(+), 9 deletions(-)

diff --git a/src/Domain/Registry/Controller/ProofController.php b/src/Domain/Registry/Controller/ProofController.php
index 918414041..b06183999 100644
--- a/src/Domain/Registry/Controller/ProofController.php
+++ b/src/Domain/Registry/Controller/ProofController.php
@@ -341,7 +341,7 @@ class ProofController extends CRUDController
         foreach ($users as $proof) {
             $reponse['data'][] = [
                 'nom'          => $proof->getName(),
-                'collectivite' => $proof->getCollectivity()->getName(),
+                'collectivite' => $this->isGranted('ROLE_REFERENT') ? $proof->getCollectivity()->getName() : '',
                 'type'         => !\is_null($proof->getType()) ? ProofTypeDictionary::getTypes()[$proof->getType()] : null,
                 'commentaire'  => $proof->getComment(),
                 'date'         => \date_format($proof->getCreatedAt(), 'd/m/Y H:i'),
@@ -358,14 +358,25 @@ class ProofController extends CRUDController
 
     protected function getLabelAndKeysArray(): array
     {
+        if ($this->isGranted('ROLE_REFERENT')) {
+            return [
+                0 => 'nom',
+                1 => 'collectivite',
+                2 => 'type',
+                3 => 'commentaire',
+                4 => 'date',
+                5 => 'updatedAt',
+                6 => 'actions',
+            ];
+        }
+
         return [
             0 => 'nom',
-            1 => 'collectivite',
-            2 => 'type',
-            3 => 'commentaire',
-            4 => 'date',
-            5 => 'updatedAt',
-            6 => 'actions',
+            1 => 'type',
+            2 => 'commentaire',
+            3 => 'date',
+            4 => 'updatedAt',
+            5 => 'actions',
         ];
     }
 
diff --git a/templates/Registry/Proof/list.html.twig b/templates/Registry/Proof/list.html.twig
index f35dc431e..1600d3c1e 100644
--- a/templates/Registry/Proof/list.html.twig
+++ b/templates/Registry/Proof/list.html.twig
@@ -183,13 +183,15 @@
 
             $('#search_nom').off('keyup');
             $('#search_nom').keyup($.debounce(250, function(){
-                oTable.column('0').search($(this).val()).draw() ;
+                oTable.column(0).search($(this).val()).draw() ;
             }));
 
+            {% if is_granted('ROLE_REFERENT') %}
             $('#search_collectivite').off('keyup');
             $('#search_collectivite').keyup($.debounce(250, function(){
-                oTable.column('1').search($(this).val()).draw() ;
+                oTable.column(1).search($(this).val()).draw() ;
             }));
+            {% endif %}
 
             $('#search_type').off('change');
             $('#search_type').change(function(){
-- 
GitLab