From 5b15af4e925f74dd0f9725581e6b9b5eb3a4686e Mon Sep 17 00:00:00 2001
From: Damien <damien.burel@maarch.org>
Date: Mon, 9 Mar 2020 14:29:04 +0100
Subject: [PATCH] FEAT #12091 TIME 0:20 Fix from CR

---
 src/app/resource/controllers/ResController.php             | 5 ++++-
 src/app/resource/controllers/ResourceControlController.php | 2 +-
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/app/resource/controllers/ResController.php b/src/app/resource/controllers/ResController.php
index b574ad759ec..aebabf6ebd0 100755
--- a/src/app/resource/controllers/ResController.php
+++ b/src/app/resource/controllers/ResController.php
@@ -846,7 +846,7 @@ class ResController extends ResourceControlController
         }
 
         $queryParams = $request->getQueryParams();
-        if ($args['fieldId'] == 'destination' && !empty($queryParams['alt'])) {
+        if ($args['fieldId'] == 'destination' && !empty($queryParams['alt']) && !empty($resource['destination'])) {
             $entity = EntityModel::getByEntityId(['entityId' => $resource['destination'], 'select' => ['id']]);
             $resource['destination'] = $entity['id'];
         }
@@ -1062,6 +1062,9 @@ class ResController extends ResourceControlController
             'data'   => [$GLOBALS['userId']]
         ]);
         $entities = array_column($entities, 'id');
+        if (empty($entities)) {
+            $entities = [0];
+        }
         $idToDelete = FolderModel::getWithEntitiesAndResources([
             'select'    => ['resources_folders.id'],
             'where'     => ['resources_folders.res_id = ?', '(entities_folders.entity_id in (?) OR folders.user_id = ? OR keyword = ?)'],
diff --git a/src/app/resource/controllers/ResourceControlController.php b/src/app/resource/controllers/ResourceControlController.php
index 56c5f9d71ec..ceada524ae0 100644
--- a/src/app/resource/controllers/ResourceControlController.php
+++ b/src/app/resource/controllers/ResourceControlController.php
@@ -176,7 +176,7 @@ class ResourceControlController
             if (empty($entity)) {
                 return ['errors' => "Body initiator does not exist"];
             }
-            if ($body['initiator'] != $entity['entity_id']) {
+            if ($resource['initiator'] != $entity['entity_id']) {
                 $userEntities = UserModel::getEntitiesByLogin(['login' => $GLOBALS['userId']]);
                 $userEntities = array_column($userEntities, 'id');
                 if (!in_array($body['initiator'], $userEntities)) {
-- 
GitLab