From 1e19717c89a7055adc440d83dfdc4a18d6e13197 Mon Sep 17 00:00:00 2001 From: "florian.azizian" <florian.azizian@maarch.org> Date: Mon, 8 Apr 2019 23:39:12 +0100 Subject: [PATCH] fix tu send to maarchparapheur + fix url with slash --- .../controllers/MaarchParapheurController.php | 16 ++++++++-------- src/app/user/controllers/UserController.php | 7 +++++-- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/app/external/externalSignatoryBook/controllers/MaarchParapheurController.php b/src/app/external/externalSignatoryBook/controllers/MaarchParapheurController.php index 4bc70ca6d24..152715fef5c 100755 --- a/src/app/external/externalSignatoryBook/controllers/MaarchParapheurController.php +++ b/src/app/external/externalSignatoryBook/controllers/MaarchParapheurController.php @@ -37,7 +37,7 @@ class MaarchParapheurController public static function getUsers(array $aArgs) { $response = CurlModel::exec([ - 'url' => $aArgs['config']['data']['url'] . '/rest/users', + 'url' => rtrim($aArgs['config']['data']['url'], '/') . '/rest/users', 'user' => $aArgs['config']['data']['userId'], 'password' => $aArgs['config']['data']['password'], 'method' => 'GET' @@ -126,8 +126,8 @@ class MaarchParapheurController if ($mainResource[0]['category_id'] != 'outgoing') { $attachmentsData = [[ 'encodedDocument' => $encodedMainZipFile, - 'title' => $mainResource[0]['subject'], - 'reference' => $mainResource[0]['alt_identifier'] + 'title' => $mainResource[0]['subject'], + 'reference' => $mainResource[0]['alt_identifier'] ]]; } else { $attachmentsData = []; @@ -158,7 +158,7 @@ class MaarchParapheurController ]; $response = CurlModel::exec([ - 'url' => $aArgs['config']['data']['url'] . '/rest/documents', + 'url' => rtrim($aArgs['config']['data']['url'], '/') . '/rest/documents', 'user' => $aArgs['config']['data']['userId'], 'password' => $aArgs['config']['data']['password'], 'method' => 'POST', @@ -193,7 +193,7 @@ class MaarchParapheurController ]; $response = CurlModel::exec([ - 'url' => $aArgs['config']['data']['url'] . '/rest/documents', + 'url' => rtrim($aArgs['config']['data']['url'], '/') . '/rest/documents', 'user' => $aArgs['config']['data']['userId'], 'password' => $aArgs['config']['data']['password'], 'method' => 'POST', @@ -230,7 +230,7 @@ class MaarchParapheurController public static function getUserById(array $aArgs) { $response = CurlModel::exec([ - 'url' => $aArgs['config']['data']['url'] . '/rest/users/'.$aArgs['id'], + 'url' => rtrim($aArgs['config']['data']['url'], '/') . '/rest/users/'.$aArgs['id'], 'user' => $aArgs['config']['data']['userId'], 'password' => $aArgs['config']['data']['password'], 'method' => 'GET' @@ -274,7 +274,7 @@ class MaarchParapheurController public static function getDocumentStatus(array $aArgs) { $response = CurlModel::exec([ - 'url' => $aArgs['config']['data']['url'] . '/rest/documents/'.$aArgs['documentId'].'/status', + 'url' => rtrim($aArgs['config']['data']['url'], '/') . '/rest/documents/'.$aArgs['documentId'].'/status', 'user' => $aArgs['config']['data']['userId'], 'password' => $aArgs['config']['data']['password'], 'method' => 'GET' @@ -286,7 +286,7 @@ class MaarchParapheurController public static function getProcessedDocument(array $aArgs) { $response = CurlModel::exec([ - 'url' => $aArgs['config']['data']['url'] . '/rest/documents/'.$aArgs['documentId'].'/processedDocument', + 'url' => rtrim($aArgs['config']['data']['url'], '/') . '/rest/documents/'.$aArgs['documentId'].'/processedDocument', 'user' => $aArgs['config']['data']['userId'], 'password' => $aArgs['config']['data']['password'], 'method' => 'GET' diff --git a/src/app/user/controllers/UserController.php b/src/app/user/controllers/UserController.php index 6d02404e0f2..8828751137e 100755 --- a/src/app/user/controllers/UserController.php +++ b/src/app/user/controllers/UserController.php @@ -121,7 +121,7 @@ class UserController $user['canModifyPassword'] = true; } $loadedXml = CoreConfigModel::getXmlLoaded(['path' => 'modules/visa/xml/remoteSignatoryBooks.xml']); - if ((string)$loadedXml->signatoryBookEnabled == 'maarchParapheur' && $user['loginmode'] != 'restMode' && empty($user['external_id']['maarchParapheur'])) { + if ((string)$loadedXml->signatoryBookEnabled == 'maarchParapheur' && $user['loginmode'] != 'restMode' && empty($user['external_id']->maarchParapheur)) { $user['canCreateMaarchParapheurUser'] = true; } @@ -1360,7 +1360,7 @@ class UserController } $responseExec = CurlModel::exec([ - 'url' => $url . '/rest/users', + 'url' => rtrim($url, '/') . '/rest/users', 'user' => $userId, 'password' => $password, 'method' => 'POST', @@ -1370,6 +1370,9 @@ class UserController if (!empty($responseExec['errors'])) { return $response->withStatus(400)->withJson(['errors' => $responseExec['errors']]); } + if (!empty($responseExec['message'])) { + return $response->withStatus(400)->withJson(['errors' => $responseExec['message']]); + } } else { return $response->withStatus(403)->withJson(['errors' => 'maarchParapheur is not enabled']); } -- GitLab