From dfc3c9ae7f8de64a694eab3ce8169b20a94d95e7 Mon Sep 17 00:00:00 2001
From: Damien <damien.burel@maarch.org>
Date: Fri, 27 Sep 2019 15:12:15 +0200
Subject: [PATCH] FEAT #11274 TIME 0:30 Get entities by user route

---
 rest/index.php                              |  1 +
 src/app/user/controllers/UserController.php | 12 ++++++++++++
 2 files changed, 13 insertions(+)

diff --git a/rest/index.php b/rest/index.php
index 4d5b85fbede..1891cdb872b 100755
--- a/rest/index.php
+++ b/rest/index.php
@@ -392,6 +392,7 @@ $app->put('/users/{id}/externalSignatures', \ExternalSignatoryBook\controllers\M
 $app->post('/users/{id}/groups', \User\controllers\UserController::class . ':addGroup');
 $app->put('/users/{id}/groups/{groupId}', \User\controllers\UserController::class . ':updateGroup');
 $app->delete('/users/{id}/groups/{groupId}', \User\controllers\UserController::class . ':deleteGroup');
+$app->get('/users/{id}/entities', \User\controllers\UserController::class . ':getEntities');
 $app->post('/users/{id}/entities', \User\controllers\UserController::class . ':addEntity');
 $app->put('/users/{id}/entities/{entityId}', \User\controllers\UserController::class . ':updateEntity');
 $app->put('/users/{id}/entities/{entityId}/primaryEntity', \User\controllers\UserController::class . ':updatePrimaryEntity');
diff --git a/src/app/user/controllers/UserController.php b/src/app/user/controllers/UserController.php
index 6539f48b433..b2dc0e69e2d 100755
--- a/src/app/user/controllers/UserController.php
+++ b/src/app/user/controllers/UserController.php
@@ -1024,6 +1024,18 @@ class UserController
         ]);
     }
 
+    public function getEntities(Request $request, Response $response, array $args)
+    {
+        $user = UserModel::getById(['id' => $args['id'], 'select' => ['user_id']]);
+        if (empty($user)) {
+            return $response->withStatus(400)->withJson(['errors' => 'User does not exist']);
+        }
+
+        $entities = UserModel::getEntitiesById(['userId' => $user['user_id']]);
+
+        return $response->withJson(['entities' => $entities]);
+    }
+
     public function addEntity(Request $request, Response $response, array $aArgs)
     {
         $error = $this->hasUsersRights(['id' => $aArgs['id']]);
-- 
GitLab