diff --git a/apps/maarch_entreprise/actions/index_mlb.php b/apps/maarch_entreprise/actions/index_mlb.php index 68034221e577c3d7a304fb57079fb0d17e7201c4..5dcc1ba26a2453af3aa73c74f0642f5a3fbb063d 100755 --- a/apps/maarch_entreprise/actions/index_mlb.php +++ b/apps/maarch_entreprise/actions/index_mlb.php @@ -2104,6 +2104,11 @@ function manage_form($arrId, $history, $actionId, $label_action, $status, $collI $bodyData[$object['name']] = $tmpBodyData; } + + if (!empty($config['file']) && $config['file'] == 'true') { + $docserver = \Docserver\models\DocserverModel::getByDocserverId(['docserverId' => $_SESSION['indexing']['docserver_id'], 'select' => ['path_template']]); + $bodyData['file'] = \SrcCore\models\CurlModel::makeCurlFile(['path' => $docserver['path_template'] . str_replace('#', '/', $_SESSION['indexing']['destination_dir']) . $_SESSION['indexing']['file_destination_name']]); + } } else { $multipleObject = false; $getContact = false; diff --git a/src/core/models/CurlModel.php b/src/core/models/CurlModel.php index c8b4424c0cf2b9ceb3b5ef192b0cfe18eb30f0af..72bdcac852bce780599316383113a427d94ce357 100644 --- a/src/core/models/CurlModel.php +++ b/src/core/models/CurlModel.php @@ -53,7 +53,11 @@ class CurlModel if (is_array($aArgs['bodyData']) && !empty($aArgs['bodyData']) && $aArgs['multipleObject']) { $bodyData = []; foreach ($aArgs['bodyData'] as $key => $value) { - $bodyData[$key] = json_encode($value); + if ($key == 'file') { + $bodyData[$key] = $value; + } else { + $bodyData[$key] = json_encode($value); + } } } else { $bodyData = json_encode($aArgs['bodyData']); @@ -140,7 +144,7 @@ class CurlModel $curlConfig['url'] = (string)$call->url; $curlConfig['method'] = strtoupper((string)$call->method); if (!empty($call->file)) { - $curlConfig['file'] = (string)$call->file->key; + $curlConfig['file'] = (string)$call->file; } if (!empty($call->header)) { $curlConfig['header'] = []; @@ -210,4 +214,17 @@ class CurlModel return false; } + + public static function makeCurlFile(array $aArgs) + { + ValidatorModel::notEmpty($aArgs, ['path']); + ValidatorModel::stringType($aArgs, ['path']); + + $mime = mime_content_type($aArgs['path']); + $info = pathinfo($aArgs['path']); + $name = $info['basename']; + $output = new \CURLFile($aArgs['path'], $mime, $name); + + return $output; + } }