Open Journal Systems  3.3.0
PluginLevelRequiredPolicy.inc.php
1 <?php
16 import('lib.pkp.classes.security.authorization.AuthorizationPolicy');
17 
19 
21  var $_contextPresent;
22 
28  function __construct($request, $contextPresent) {
29  parent::__construct('user.authorization.pluginLevel');
30  $this->_contextPresent = $contextPresent;
31  }
32 
33  //
34  // Implement template methods from AuthorizationPolicy
35  //
39  function effect() {
40  // Get the plugin.
41  $plugin = $this->getAuthorizedContextObject(ASSOC_TYPE_PLUGIN);
42  if (!is_a($plugin, 'Plugin')) return AUTHORIZATION_DENY;
43 
44  if (!$this->_contextPresent) { // Site context
45  return $plugin->isSitePlugin()?AUTHORIZATION_PERMIT:AUTHORIZATION_DENY;
46  }
47  return $plugin->isSitePlugin()?AUTHORIZATION_DENY:AUTHORIZATION_PERMIT;
48  }
49 }
50 
51 
PluginLevelRequiredPolicy\effect
effect()
Definition: PluginLevelRequiredPolicy.inc.php:42
PluginLevelRequiredPolicy
Class to test the plugin level.
Definition: PluginLevelRequiredPolicy.inc.php:18
AuthorizationPolicy\getAuthorizedContextObject
& getAuthorizedContextObject($assocType)
Definition: AuthorizationPolicy.inc.php:117
PluginLevelRequiredPolicy\$_contextPresent
$_contextPresent
Definition: PluginLevelRequiredPolicy.inc.php:24
AuthorizationPolicy
Class to represent an authorization policy.
Definition: AuthorizationPolicy.inc.php:31
PluginLevelRequiredPolicy\__construct
__construct($request, $contextPresent)
Definition: PluginLevelRequiredPolicy.inc.php:31