16 import(
'lib.pkp.classes.controllers.grid.plugins.PluginGridHandler');
23 $roles = array(ROLE_ID_SITE_ADMIN, ROLE_ID_MANAGER);
25 parent::__construct($roles);
36 $plugins = parent::loadCategoryData($request, $categoryDataElement, $filter);
39 $presses = $pressDao->getAll();
41 if ($presses->getCount() == 1) {
47 $showSitePlugins =
false;
48 if ($singlePress && in_array(ROLE_ID_SITE_ADMIN, $userRoles)) {
49 $showSitePlugins =
true;
52 if ($showSitePlugins) {
55 $contextLevelPlugins = array();
56 foreach ($plugins as $plugin) {
57 if (!$plugin->isSitePlugin()) {
58 $contextLevelPlugins[$plugin->getName()] = $plugin;
62 return $contextLevelPlugins;
73 import(
'lib.pkp.controllers.grid.plugins.PluginGridRow');
80 function authorize($request, &$args, $roleAssignments) {
81 $categoryName = $request->getUserVar(
'category');
82 $pluginName = $request->getUserVar(
'plugin');
84 if ($categoryName && $pluginName) {
85 import(
'lib.pkp.classes.security.authorization.PluginAccessPolicy');
86 switch ($request->getRequestedOp()) {
90 $accessMode = ACCESS_MODE_MANAGE;
93 $accessMode = ACCESS_MODE_ADMIN;
98 import(
'lib.pkp.classes.security.authorization.ContextAccessPolicy');
101 return parent::authorize($request, $args, $roleAssignments);