From b3ea5e072886f62cf6573a830822e35e6d17a5a6 Mon Sep 17 00:00:00 2001
From: Quentin RIBAC <quentin.ribac@xelians.fr>
Date: Tue, 17 May 2022 18:29:34 +0200
Subject: [PATCH] FEAT #20779 TIME 0:30 processed document read-only access
 through search

---
 src/app/search/controllers/SearchController.php | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/app/search/controllers/SearchController.php b/src/app/search/controllers/SearchController.php
index 30632ff0d5..f5d867f4f9 100755
--- a/src/app/search/controllers/SearchController.php
+++ b/src/app/search/controllers/SearchController.php
@@ -43,9 +43,12 @@ class SearchController
                 $users[] = $value['id'];
             }
 
-            $workflowSelect = "SELECT id FROM workflows ws WHERE workflows.main_document_id = main_document_id AND process_date IS NULL AND status IS NULL ORDER BY \"order\" LIMIT 1";
-            $workflowSelect = "SELECT main_document_id FROM workflows WHERE user_id in (?) AND id in ({$workflowSelect})";
-            $where          = ["(id in ({$workflowSelect}) OR typist = ?)"];
+            $workflowSelect = 'SELECT main_document_id FROM workflows ws1 WHERE user_id IN (?) AND id IN (
+                                SELECT id FROM workflows ws2
+                                    WHERE ws1.main_document_id = ws2.main_document_id
+                                    ORDER BY "order"
+                                    LIMIT 1)';
+            $where          = ["(id IN ({$workflowSelect}) OR typist = ?)"];
             $data           = [$users, $GLOBALS['id']];
         }
 
-- 
GitLab