• Main Page
  • Modules
  • Classes
  • Files
  • File List

classes/security/authorization/OmpReviewStageAccessPolicy.inc.php

00001 <?php
00014 import('classes.security.authorization.internal.PressPolicy');
00015 import('lib.pkp.classes.security.authorization.PolicySet');
00016 
00017 class OmpReviewStageAccessPolicy extends PressPolicy {
00026    function OmpReviewStageAccessPolicy(&$request, &$args, $roleAssignments, $submissionParameterName = 'monographId', $stageId) {
00027       parent::PressPolicy($request);
00028 
00029       // Create a "permit overrides" policy set that specifies
00030       // role-specific access to submission stage operations.
00031       $workflowStagePolicy = new PolicySet(COMBINING_PERMIT_OVERRIDES);
00032 
00033       // Add the workflow policy, for editorial / press roles
00034       import('classes.security.authorization.OmpWorkflowStageAccessPolicy');
00035       $workflowStagePolicy->addPolicy(new OmpWorkflowStageAccessPolicy($request, $args, $roleAssignments, $submissionParameterName, $stageId));
00036 
00037       if ($stageId == WORKFLOW_STAGE_ID_INTERNAL_REVIEW || $stageId == WORKFLOW_STAGE_ID_EXTERNAL_REVIEW) {
00038          // Add the submission policy, for reviewer roles
00039          import('classes.security.authorization.OmpSubmissionAccessPolicy');
00040          $submissionPolicy = new OmpSubmissionAccessPolicy($request, $args, $roleAssignments, $submissionParameterName);
00041          $submissionPolicy->addPolicy(new WorkflowStageRequiredPolicy($stageId));
00042          $workflowStagePolicy->addPolicy($submissionPolicy);
00043       }
00044 
00045       // Add the role-specific policies to this policy set.
00046       $this->addPolicy($workflowStagePolicy);
00047    }
00048 }
00049 
00050 ?>

Generated on Mon Sep 17 2012 13:58:55 for Open Monograph Press by  doxygen 1.7.1