From 3d81b71473423c3f0a384ed2916dd477e14a5ef2 Mon Sep 17 00:00:00 2001 From: Dave Mc Nicoll Date: Mon, 3 Feb 2025 21:26:07 +0000 Subject: [PATCH] - WIP on Delete Form --- meta/i18n/fr/lean.api.json | 9 ++++++++- src/Form/Delete.php | 12 +++++++++--- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/meta/i18n/fr/lean.api.json b/meta/i18n/fr/lean.api.json index 0574fdb..54c4c42 100644 --- a/meta/i18n/fr/lean.api.json +++ b/meta/i18n/fr/lean.api.json @@ -11,7 +11,14 @@ } }, "delete": { - + "error": { + "entity": "L'entité fournis n'est pas chargé ; elle semble vide et sans donnée.", + "save": "Suppression impossible; une erreur semble survenue...", + "pdo": "Une erreur est survenue : '{$error}'" + }, + "success": { + "save": "Suppression effectué avec succès" + } } } } \ No newline at end of file diff --git a/src/Form/Delete.php b/src/Form/Delete.php index 175bc98..b6cabe8 100644 --- a/src/Form/Delete.php +++ b/src/Form/Delete.php @@ -21,6 +21,12 @@ class Delete implements \Picea\Ui\Method\FormInterface { public function validate(FormContextInterface $context) : bool { + if ( ! $this->entity->isLoaded() ) { + $context->pushMessage(Lib\Message::generateError( + $this->lang('lean.api.form.delete.error.entity') + )); + } + return $context->valid(); } @@ -29,15 +35,15 @@ class Delete implements \Picea\Ui\Method\FormInterface { try { if ( $this->getEntity()::repository()->destroy($this->getEntity()) ) { $context->pushMessage(Lib\Message::generateSuccess( - "Suppression effectué avec succès" + $this->lang('lean.api.form.delete.success.save') )); } else { - throw new \InvalidArgumentException("Suppression impossible; une erreur semble survenue..."); + throw new \InvalidArgumentException($this->lang('lean.api.form.delete.error.save')); } } catch(\Throwable $ex) { - throw new \ErrorException(sprintf("Une erreur est survenue : '%s'", $ex->getMessage())); + throw new \ErrorException($this->lang('lean.api.form.delete.error.pdo', [ 'error' => $ex->getMessage() ])); } } }