redirect(null, null, 'index'); } $paymentMethodPlugin = & $paymentMethodPlugins[$paymentMethodPluginName]; if (!$paymentMethodPlugin->isConfigured($request->getContext())) { $request->redirect(null, null, 'index'); } $paymentMethodPlugin->handle($args, $request); } /** * Present a landing page from which to fulfill a payment. * * @param array $args * @param \APP\core\Request $request */ public function pay($args, $request) { if (!Validation::isLoggedIn()) { Validation::redirectLogin(); } $paymentManager = Application::getPaymentManager($request->getContext()); $templateMgr = TemplateManager::getManager($request); $queuedPaymentDao = DAORegistry::getDAO('QueuedPaymentDAO'); /** @var QueuedPaymentDAO $queuedPaymentDao */ $queuedPayment = $queuedPaymentDao->getById($queuedPaymentId = array_shift($args)); if (!$queuedPayment) { $templateMgr->assign([ 'pageTitle' => 'common.payment', 'message' => 'payment.notFound', ]); $templateMgr->display('frontend/pages/message.tpl'); return; } $paymentForm = $paymentManager->getPaymentForm($queuedPayment); $paymentForm->display($request); } }