Open Monograph Press  3.3.0
GatewayHandler.inc.php
1 <?php
2 
16 import('classes.handler.Handler');
17 
18 class GatewayHandler extends Handler {
19 
20  var $plugin;
21 
27  function __construct($request) {
28  parent::__construct();
29  $op = $request->getRouter()->getRequestedOp($request);
30  if ($op == 'plugin') {
31  $args = $request->getRouter()->getRequestedArgs($request);
32  $pluginName = array_shift($args);
33  $plugins = PluginRegistry::loadCategory('gateways');
34  if (!isset($plugins[$pluginName])) {
35  $request->getDispatcher()->handle404();
36  }
37  $this->plugin = $plugins[$pluginName];
38  foreach ($this->plugin->getPolicies($request) as $policy) {
39  $this->addPolicy($policy);
40  }
41  }
42  }
43 
49  function index($args, $request) {
50  $request->redirect(null, 'index');
51  }
52 
58  function plugin($args, $request) {
59  $this->validate();
60  if (isset($this->plugin)) {
61  if (!$this->plugin->fetch(array_slice($args, 1), $request)) {
62  $request->redirect(null, 'index');
63  }
64  } else {
65  $request->redirect(null, 'index');
66  }
67  }
68 }
GatewayHandler\$plugin
$plugin
Definition: GatewayHandler.inc.php:20
GatewayHandler\index
index($args, $request)
Definition: GatewayHandler.inc.php:49
$op
$op
Definition: lib/pkp/pages/help/index.php:18
PluginRegistry\loadCategory
static loadCategory($category, $enabledOnly=false, $mainContextId=null)
Definition: PluginRegistry.inc.php:103
GatewayHandler\__construct
__construct($request)
Definition: GatewayHandler.inc.php:27
PKPHandler\validate
validate($requiredContexts=null, $request=null)
Definition: PKPHandler.inc.php:351
GatewayHandler
Handle external gateway requests.
Definition: GatewayHandler.inc.php:18
PKPHandler\addPolicy
addPolicy($authorizationPolicy, $addToTop=false)
Definition: PKPHandler.inc.php:157
GatewayHandler\plugin
plugin($args, $request)
Definition: GatewayHandler.inc.php:58
Handler
Base request handler application class.
Definition: Handler.inc.php:18