File: /var/www/ojs/controllers/tab/workflow/ReviewRoundTabHandler.inc.php
<?php
/**
* @file controllers/tab/workflow/ReviewRoundTabHandler.inc.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2003-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class ReviewRoundTabHandler
* @ingroup controllers_tab_workflow
*
* @brief Handle AJAX operations for review round tabs on review stages workflow pages.
*/
import('classes.handler.Handler');
// Import the base class.
import('lib.pkp.classes.controllers.tab.workflow.PKPReviewRoundTabHandler');
class ReviewRoundTabHandler extends PKPReviewRoundTabHandler {
/**
* Constructor
*/
function __construct() {
parent::__construct();
$this->addRoleAssignment(
array(ROLE_ID_SUB_EDITOR, ROLE_ID_MANAGER, ROLE_ID_ASSISTANT),
array('externalReviewRound')
);
}
//
// Extended methods from Handler
//
/**
* @copydoc PKPHandler::authorize()
*/
function authorize($request, &$args, $roleAssignments) {
$stageId = (int) $request->getUserVar('stageId'); // This is validated in WorkflowStageAccessPolicy.
import('lib.pkp.classes.security.authorization.WorkflowStageAccessPolicy');
$this->addPolicy(new WorkflowStageAccessPolicy($request, $args, $roleAssignments, 'submissionId', $stageId));
return parent::authorize($request, $args, $roleAssignments);
}
}