Open Journal Systems  3.3.0
PaymentHandler.inc.php
1 <?php
2 
16 import('classes.handler.Handler');
17 
18 class PaymentHandler extends Handler {
19 
25  function plugin($args, $request) {
26  $paymentMethodPlugins = PluginRegistry::loadCategory('paymethod');
27  $paymentMethodPluginName = array_shift($args);
28  if (empty($paymentMethodPluginName) || !isset($paymentMethodPlugins[$paymentMethodPluginName])) {
29  $request->redirect(null, null, 'index');
30  }
31 
32  $paymentMethodPlugin =& $paymentMethodPlugins[$paymentMethodPluginName];
33  if (!$paymentMethodPlugin->isConfigured($request->getContext())) {
34  $request->redirect(null, null, 'index');
35  }
36 
37  $paymentMethodPlugin->handle($args, $request);
38  }
39 
45  function pay($args, $request) {
46  if (!Validation::isLoggedIn()) {
48  }
49 
50  $paymentManager = Application::getPaymentManager($request->getContext());
51  $templateMgr = TemplateManager::getManager($request);
52  $queuedPaymentDao = DAORegistry::getDAO('QueuedPaymentDAO'); /* @var $queuedPaymentDao QueuedPaymentDAO */
53  $queuedPayment = $queuedPaymentDao->getById($queuedPaymentId = array_shift($args));
54  if (!$queuedPayment) {
55  $templateMgr->assign(array(
56  'pageTitle' => 'common.payment',
57  'message' => 'payment.notFound',
58  ));
59  $templateMgr->display('frontend/pages/message.tpl');
60  return;
61  }
62 
63  $paymentForm = $paymentManager->getPaymentForm($queuedPayment);
64  $paymentForm->display($request);
65  }
66 }
67 
68 
Validation\redirectLogin
static redirectLogin($message=null)
Definition: Validation.inc.php:168
Validation\isLoggedIn
static isLoggedIn()
Definition: Validation.inc.php:376
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57
Application\getPaymentManager
static getPaymentManager($context)
Definition: Application.inc.php:226
PluginRegistry\loadCategory
static loadCategory($category, $enabledOnly=false, $mainContextId=null)
Definition: PluginRegistry.inc.php:103
PaymentHandler
Handle requests for payment functions.
Definition: PaymentHandler.inc.php:18
PKPTemplateManager\getManager
static & getManager($request=null)
Definition: PKPTemplateManager.inc.php:1239
PaymentHandler\pay
pay($args, $request)
Definition: PaymentHandler.inc.php:45
Handler
Base request handler application class.
Definition: Handler.inc.php:18
PaymentHandler\plugin
plugin($args, $request)
Definition: PaymentHandler.inc.php:25