diff --git a/src/app/registeredMail/controllers/RegisteredMailTrait.php b/src/app/registeredMail/controllers/RegisteredMailTrait.php index 14b5e6a95e85e53b532f3d2ed698f9727cad4a07..d9ef3371894c1c3bb3d2062bd092061dfbc73626 100644 --- a/src/app/registeredMail/controllers/RegisteredMailTrait.php +++ b/src/app/registeredMail/controllers/RegisteredMailTrait.php @@ -32,7 +32,7 @@ trait RegisteredMailTrait $resource = ResModel::getById(['select' => ['departure_date', 'category_id'], 'resId' => $args['resId']]); if ($resource['category_id'] != 'registeredMail') { - return ['errors' => ['This resource is not a registered mail']]; + return ['errors' => ['This resource is not a registered mail'], 'lang' => 'registeredMailNotFound']; } elseif (empty($resource['departure_date'])) { return ['errors' => ['Departure date is empty']]; } elseif (!in_array($args['data']['type'], ['2D', '2C', 'RW'])) { @@ -59,7 +59,7 @@ trait RegisteredMailTrait unset($args['data']['recipient']['department']); if ((empty($args['data']['recipient']['company']) && (empty($args['data']['recipient']['lastname']) || empty($args['data']['recipient']['firstname']))) || empty($args['data']['recipient']['addressStreet']) || empty($args['data']['recipient']['addressPostcode']) || empty($args['data']['recipient']['addressTown']) || empty($args['data']['recipient']['addressCountry'])) { - return ['errors' => ['company and firstname/lastname, or addressStreet, addressPostcode, addressTown or addressCountry is empty in Recipient']]; + return ['errors' => ['company and firstname/lastname, or addressStreet, addressPostcode, addressTown or addressCountry is empty in Recipient'], 'lang' => 'argumentRegisteredMailRecipientEmpty']; } $issuingSite = IssuingSiteModel::getById([ @@ -67,7 +67,7 @@ trait RegisteredMailTrait 'select' => ['label', 'address_number', 'address_street', 'address_additional1', 'address_additional2', 'address_postcode', 'address_town', 'address_country'] ]); if (empty($issuingSite)) { - return ['errors' => ['Issuing site does not exist']]; + return ['errors' => ['Issuing site does not exist'], 'lang' => 'argumentRegisteredMailIssuingSiteEmpty']; } $range = RegisteredNumberRangeModel::get([ @@ -76,7 +76,7 @@ trait RegisteredMailTrait 'data' => [$args['data']['type'], 'OK'] ]); if (empty($range)) { - return ['errors' => ['No range found']]; + return ['errors' => ['No range found'], 'lang' => 'NoRangeAvailable']; } if ($range[0]['current_number'] + 1 > $range[0]['range_end']) { @@ -155,11 +155,11 @@ trait RegisteredMailTrait $registeredMail = RegisteredMailModel::getByResId(['select' => ['issuing_site', 'type', 'number', 'warranty', 'letter', 'recipient', 'reference'], 'resId' => $args['resId']]); $recipient = json_decode($registeredMail['recipient'], true); if (empty($registeredMail)) { - return ['errors' => ['No registered mail for this resource']]; + return ['errors' => ['No registered mail for this resource'], 'lang' => 'registeredMailNotFound']; } elseif (empty($recipient) || empty($registeredMail['issuing_site']) || empty($registeredMail['type']) || empty($registeredMail['number']) || empty($registeredMail['warranty'])) { return ['errors' => ['recipient, issuing_site, type, number or warranty is missing to print registered mail']]; } elseif ((empty($recipient['company']) && (empty($recipient['lastname']) || empty($recipient['firstname']))) || empty($recipient['addressStreet']) || empty($recipient['addressPostcode']) || empty($recipient['addressTown']) || empty($recipient['addressCountry'])) { - return ['errors' => ['company and firstname/lastname, or addressStreet, addressPostcode, addressTown or addressCountry is empty in Recipient']]; + return ['errors' => ['company and firstname/lastname, or addressStreet, addressPostcode, addressTown or addressCountry is empty in Recipient'], 'lang' => 'argumentRegisteredMailRecipientEmpty']; } $issuingSite = IssuingSiteModel::getById([ diff --git a/src/app/resource/controllers/IndexingController.php b/src/app/resource/controllers/IndexingController.php index dddc48e349dd76eb42ec98e527317caf593e1c43..5279ca7c0a83df293cdd5a17e782350aa346897a 100755 --- a/src/app/resource/controllers/IndexingController.php +++ b/src/app/resource/controllers/IndexingController.php @@ -111,7 +111,11 @@ class IndexingController $methodResponse = ActionMethodController::$method(['resId' => $body['resource'], 'data' => $body['data'], 'note' => $body['note'], 'parameters' => $parameters]); } if (!empty($methodResponse['errors'])) { - return $response->withStatus(400)->withJson(['errors' => $methodResponse['errors'][0]]); + $return = ['errors' => $methodResponse['errors'][0]]; + if (!empty($methodResponse['lang'])) { + $return['lang'] = $methodResponse['lang']; + } + return $response->withStatus(400)->withJson($return); } $historic = empty($methodResponse['history']) ? '' : $methodResponse['history']; diff --git a/src/lang/lang-fr.json b/src/lang/lang-fr.json index bc6fb4cdfeaf850a7d70fa861845d7874e4a7a80..a3e1649a01c0c659596001913f999d8c052bf01d 100644 --- a/src/lang/lang-fr.json +++ b/src/lang/lang-fr.json @@ -1964,7 +1964,7 @@ "argumentRegisteredMailWarrantyEmpty": "La donnée registeredMail_warranty est vide ou non valide pour un recommandé.", "argumentRegisteredMailWarrantyNotAllowed": "La donnée registeredMail_warranty n'est pas autorisé pour ce type pour un recommandé.", "argumentRegisteredMailIssuingSiteEmpty": "La donnée registeredMail_issuingSite est vide ou n'existe pas pour un recommandé.", - "argumentRegisteredMailRecipientEmpty": "Une des données du destinataire est vide pour un recommandé.", + "argumentRegisteredMailRecipientEmpty": "Le destinataire doit avoir une organisation ou un prénom/nom, et tous ces champs renseignés : rue, code postal, ville, pays", "argumentCategoryNotValid": "La catégorie n'est pas valide pour un recommandé.", "argumentDoctypeEmpty": "Le type de document n'est pas renseigné pour un recommandé.", "NoRangeAvailable": "Pas de plage disponible pour un recommandé.",