express = $express; parent::__construct( $context, $coreRegistry, $fileFactory, $translateInline, $resultPageFactory, $resultJsonFactory, $resultLayoutFactory, $resultRawFactory, $orderManagement, $orderRepository, $logger ); } /** * Authorize full order payment amount. * * @return Redirect */ public function execute(): Redirect { $resultRedirect = $this->resultRedirectFactory->create(); $order = $this->_initOrder(); if ($order !== false) { try { $this->express->authorizeOrder($order); $this->orderRepository->save($order); $this->messageManager->addSuccessMessage(__('Payment authorization has been successfully created.')); } catch (LocalizedException $e) { $this->messageManager->addErrorMessage($e->getMessage()); } catch (\Throwable $e) { $this->messageManager->addErrorMessage(__('Unable to make payment authorization.')); } $resultRedirect->setPath('sales/order/view', ['order_id' => $order->getId()]); } else { $resultRedirect->setPath('sales/order/index'); } return $resultRedirect; } }