From 1bd059cd6a016bb34f66259ac9cd60959cb0b926 Mon Sep 17 00:00:00 2001 From: Wade Womersley <155439365+wadedvsa@users.noreply.github.com> Date: Thu, 28 Mar 2024 15:14:19 +0000 Subject: [PATCH] fix: Form process callback not used correctly (#135) * fix: Translation popup showing HTML rather then rendering * chore: Exclude CSS/JS from PHPCS * fix: Update phpcs.xml.dist Co-authored-by: JoshuaLicense * fix: remove unused args * fix: Accidental line removal * fix: Form process calls handling callback incorrectly * chore: Stronger types --------- Co-authored-by: JoshuaLicense --- .../src/Controller/DiscPrintingController.php | 7 +++-- module/Olcs/src/Controller/TaskController.php | 26 +++++++++++-------- .../src/Controller/Traits/FeesActionTrait.php | 10 +++++-- ...anagerDetailsPreviousHistoryController.php | 3 ++- ...ManagerDetailsResponsibilityController.php | 4 ++- 5 files changed, 33 insertions(+), 17 deletions(-) diff --git a/module/Admin/src/Controller/DiscPrintingController.php b/module/Admin/src/Controller/DiscPrintingController.php index a943f0a05d..f9799fd4ba 100644 --- a/module/Admin/src/Controller/DiscPrintingController.php +++ b/module/Admin/src/Controller/DiscPrintingController.php @@ -109,12 +109,15 @@ public function indexAction() /** * Process form * - * @param \Common\Form\Form $form Form + * @param array $data * * @return void */ - protected function processForm(array $data, \Common\Form\Form $form) + protected function processForm(array $data) { + $form = $data['form']; + $data = $data['validData']; + $params = $this->getFlattenParams($data); $this->hasDiscsToPrint = false; diff --git a/module/Olcs/src/Controller/TaskController.php b/module/Olcs/src/Controller/TaskController.php index 3e36fb5bf7..81317495d4 100644 --- a/module/Olcs/src/Controller/TaskController.php +++ b/module/Olcs/src/Controller/TaskController.php @@ -3,6 +3,7 @@ namespace Olcs\Controller; use Common\Exception\BadRequestException; +use Common\Form\Form; use Common\Service\Helper\FlashMessengerHelperService; use Common\Service\Helper\FormHelperService; use Common\Service\Script\ScriptFactory; @@ -158,7 +159,7 @@ public function closeAction() * * @return \Laminas\Http\Response */ - public function processCloseTask($data) + public function processCloseTask(array $data) { $ids = explode('-', $this->params('task')); @@ -176,13 +177,14 @@ public function processCloseTask($data) /** * Callback invoked when the form is valid * - * @param array $data Data - * @param \Laminas\Form\FormInterface $form Form + * @param array $data Data * * @return \Laminas\Http\Response */ - public function processAssignTask($data, $form) + public function processAssignTask(array $data) { + $form = $data['form']; + $data = $data['validData']; if (!isset($data['assignment'])) { return $this->redirectToList(); } @@ -328,26 +330,28 @@ protected function prepareInfoColumns($data) /** * Callback invoked when the form is valid * - * @param array $data Data - * @param \Laminas\Form\FormInterface $form Form + * @param array $data Data * * @return null|\Laminas\Http\Response */ - public function processAddTask($data, $form) + public function processAddTask(array $data) { + $form = $data['form']; + $data = $data['validData']; return $this->processAddEditTask(self::METHOD_ADD, $data, $form); } /** * Callback invoked when the form is valid * - * @param array $data Data - * @param \Laminas\Form\FormInterface $form Form + * @param array $data Data * * @return null|\Laminas\Http\Response */ - public function processEditTask($data, $form) + public function processEditTask(array $data) { + $form = $data['form']; + $data = $data['validData']; return $this->processAddEditTask(self::METHOD_EDIT, $data, $form); } @@ -360,7 +364,7 @@ public function processEditTask($data, $form) * * @return null|\Laminas\Http\Response */ - private function processAddEditTask($method, $data, $form) + private function processAddEditTask(string $method, array $data, Form $form) { if ($this->isButtonPressed('cancel')) { return $this->redirectToList(); diff --git a/module/Olcs/src/Controller/Traits/FeesActionTrait.php b/module/Olcs/src/Controller/Traits/FeesActionTrait.php index f7c50fdb78..ce92a2bb28 100644 --- a/module/Olcs/src/Controller/Traits/FeesActionTrait.php +++ b/module/Olcs/src/Controller/Traits/FeesActionTrait.php @@ -85,7 +85,7 @@ public function addFeeAction() if ($this->isButtonPressed('cancel')) { return $this->redirectToList(); } - $this->formPost($form, [$this, 'createFee'], [$form]); + $this->formPost($form, [$this, 'createFee']); } if ($this->getResponse()->getContent() !== '') { @@ -1007,6 +1007,7 @@ protected function processForm($form) */ protected function recommendWaive($data) { + $data = $data['validData']; $dto = RecommendWaiveCmd::create( [ 'id' => $data['fee-details']['id'], @@ -1025,6 +1026,7 @@ protected function recommendWaive($data) */ protected function rejectWaive($data) { + $data = $data['validData']; $dto = RejectWaiveCmd::create( [ 'id' => $data['fee-details']['id'], @@ -1042,6 +1044,7 @@ protected function rejectWaive($data) */ protected function approveWaive($data) { + $data = $data['validData']; $dto = ApproveWaiveCmd::create( [ 'id' => $data['fee-details']['id'], @@ -1340,8 +1343,11 @@ public function paymentResultAction() * * @param array $data */ - protected function createFee($data, $form) + protected function createFee($data) { + $form = $data['form']; + $data = $data['validData']; + $dtoData = $this->getCreateFeeDtoData($data); $dto = CreateFeeCmd::create($dtoData); diff --git a/module/Olcs/src/Controller/TransportManager/Details/TransportManagerDetailsPreviousHistoryController.php b/module/Olcs/src/Controller/TransportManager/Details/TransportManagerDetailsPreviousHistoryController.php index d7a5a8ef7a..3d12d31053 100644 --- a/module/Olcs/src/Controller/TransportManager/Details/TransportManagerDetailsPreviousHistoryController.php +++ b/module/Olcs/src/Controller/TransportManager/Details/TransportManagerDetailsPreviousHistoryController.php @@ -236,8 +236,9 @@ protected function populateEditForm($form, $formName) * @param array $data * @return Response */ - protected function processForm($data) + protected function processForm(array $data) { + $data = $data['validData']; if (isset($data['tm-convictions-and-penalties-details'])) { $this->savePreviousConviction($data['tm-convictions-and-penalties-details']); $action = 'add-previous-conviction'; diff --git a/module/Olcs/src/Controller/TransportManager/Details/TransportManagerDetailsResponsibilityController.php b/module/Olcs/src/Controller/TransportManager/Details/TransportManagerDetailsResponsibilityController.php index a592f3881a..5da6af48d4 100644 --- a/module/Olcs/src/Controller/TransportManager/Details/TransportManagerDetailsResponsibilityController.php +++ b/module/Olcs/src/Controller/TransportManager/Details/TransportManagerDetailsResponsibilityController.php @@ -639,8 +639,9 @@ protected function getResponsibilitiesData($type) * * @return null|\Laminas\Http\Response */ - protected function processAddForm($data) + protected function processAddForm(array $data) { + $data = $data['validData']; $tm = $this->getFromRoute('transportManager'); $routeParams = ['transportManager' => $tm, 'action' => 'edit-tm-application', 'title' => 1]; @@ -975,6 +976,7 @@ protected function populateOtherLicenceEditForm($form, $type, $redirectAction, $ */ protected function processOtherLicenceForm($data) { + $data = $data['validData']; $mappedData = OtherLicenceMapper::mapFromForm($data); if (isset($data['data']['id']) && $data['data']['id']) { $dtoClass = UpdateForTmaDto::class;