Skip to content
Snippets Groups Projects
Commit 1c658977 authored by Quentin Ribac's avatar Quentin Ribac
Browse files

FIX #18988 TIME 0:20 docaposteSignature: renamed xml parameter...

FIX #18988 TIME 0:20 docaposteSignature: renamed xml parameter signatureIdOverride; always calling signatory()
parent 2c06ec1c
No related branches found
No related tags found
No related merge requests found
......@@ -33,7 +33,7 @@
<password></password>
<offerCode></offerCode>
<organizationalUnitCode></organizationalUnitCode>
<forceSignatureId></forceSignatureId> <!-- 1 for provider (fournisseur) signature, 2 for Contralia signature, otherwise use client signature (default) -->
<signatureIdOverride></signatureIdOverride> <!-- 1 for provider (fournisseur) signature, 2 for Contralia signature, leave blank to use client signature (default) -->
</docaposteSignature>
<!-- Sort by the more secure to the less secure mode -->
<signatureModes>
......
......@@ -48,18 +48,14 @@ class DigitalSignatureController
'data' => [$args['documentId']]
]);
foreach ($args['workflow'] as $position => $currentUserId) {
if (!empty($config['forceSignatureId'])) {
$signatoryId = $config['forceSignatoryId'];
} else {
$signatoryId = DigitalSignatureController::signatory([
'config' => $config,
'documentId' => $args['documentId'],
'transactionId' => $transactionId,
'user_id' => $currentUserId['user_id'],
'position' => $position + 1
]);
}
if (!empty($signatoryId['errors'])) {
$signatureId = DigitalSignatureController::signatory([
'config' => $config,
'documentId' => $args['documentId'],
'transactionId' => $transactionId,
'user_id' => $currentUserId['user_id'],
'position' => $position + 1
]);
if (!empty($signatureId['errors'])) {
DocumentModel::update([
'set' => ['digital_signature_transaction_id' => null],
'where' => ['id = ?'],
......@@ -67,8 +63,11 @@ class DigitalSignatureController
]);
break;
} else {
if (!empty($config['signatureIdOverride'])) {
$signatureId = $config['signatureIdOverride'];
}
WorkflowModel::update([
'set' => ['digital_signature_id' => $signatoryId],
'set' => ['digital_signature_id' => $signatureId],
'where' => ['id = ?'],
'data' => [$currentUserId['id']]
]);
......@@ -95,6 +94,7 @@ class DigitalSignatureController
return true;
}
public static function getConfig()
{
$loadedXml = CoreConfigModel::getConfig();
......@@ -105,12 +105,12 @@ class DigitalSignatureController
'password' => (string)$loadedXml->docaposteSignature->password,
'offerCode' => (string)$loadedXml->docaposteSignature->offerCode,
'organizationalUnitCode' => (string)$loadedXml->docaposteSignature->organizationalUnitCode,
'forceSignatureId' => (string)$loadedXml->docaposteSignature->forceSignatureId
'signatureIdOverride' => (string)$loadedXml->docaposteSignature->signatureIdOverride
];
if (in_array($config['forceSignatureId'], ['1', '2'])) {
$config['forceSignatureId'] = (int)$config['forceSignatureId'];
if (in_array($config['signatureIdOverride'], ['1', '2'])) {
$config['signatureIdOverride'] = (int)$config['signatureIdOverride'];
} else {
$config['forceSignatureId'] = null;
$config['signatureIdOverride'] = null;
}
return $config;
} else {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment