Skip to content

Commit

Permalink
Dispatch option event only if payment is valide
Browse files Browse the repository at this point in the history
  • Loading branch information
lopes-vincent authored Mar 21, 2024
1 parent b84c2b5 commit 86148ec
Showing 1 changed file with 17 additions and 12 deletions.
29 changes: 17 additions & 12 deletions Controller/Front/PaymentController.php
Original file line number Diff line number Diff line change
Expand Up @@ -105,22 +105,27 @@ protected function getPaymentModule(
TheliaEvents::MODULE_PAYMENT_IS_VALID
);

$paymentModuleOptionEvent = new PaymentModuleOptionEvent($paymentModule, $cart);

$dispatcher->dispatch(
$paymentModuleOptionEvent,
OpenApiEvents::MODULE_PAYMENT_GET_OPTIONS
);

/** @var PaymentModule $paymentModule */
$paymentModule = $modelFactory->buildModel('PaymentModule', $paymentModule);
$paymentModuleApi = $modelFactory->buildModel('PaymentModule', $paymentModule);

$paymentModule->setValid($isValidPaymentEvent->isValidModule())
$paymentModuleApi->setValid($isValidPaymentEvent->isValidModule())
->setCode($moduleInstance->getCode())
->setMinimumAmount($isValidPaymentEvent->getMinimumAmount())
->setMaximumAmount($isValidPaymentEvent->getMaximumAmount())
->setOptionGroups($paymentModuleOptionEvent->getPaymentModuleOptionGroups());
->setMaximumAmount($isValidPaymentEvent->getMaximumAmount());

if ($isValidPaymentEvent->isValidModule()) {
$paymentModuleOptionEvent = new PaymentModuleOptionEvent($paymentModule, $cart);

$dispatcher->dispatch(
$paymentModuleOptionEvent,
OpenApiEvents::MODULE_PAYMENT_GET_OPTIONS
);

$paymentModuleApi
->setOptionGroups($paymentModuleOptionEvent->getPaymentModuleOptionGroups());

}

return $paymentModule;
return $paymentModuleApi;
}
}

0 comments on commit 86148ec

Please sign in to comment.