Open Journal Systems  3.3.0
ReviewGridDataProvider.inc.php
1 <?php
15 import('lib.pkp.controllers.grid.files.SubmissionFilesGridDataProvider');
16 
19  protected $_showAll;
20 
26  function __construct($fileStageId, $viewableOnly = false, $showAll = false) {
27  $this->_showAll = $showAll;
28  parent::__construct($fileStageId, $viewableOnly);
29  }
30 
31 
32  //
33  // Implement template methods from GridDataProvider
34  //
38  function getAuthorizationPolicy($request, $args, $roleAssignments) {
39  // Get the parent authorization policy.
40  $policy = parent::getAuthorizationPolicy($request, $args, $roleAssignments);
41 
42  // Add policy to ensure there is a review round id.
43  import('lib.pkp.classes.security.authorization.internal.ReviewRoundRequiredPolicy');
44  $policy->addPolicy(new ReviewRoundRequiredPolicy($request, $args));
45 
46  return $policy;
47  }
48 
52  function getRequestArgs() {
53  $reviewRound = $this->getReviewRound();
54  return array_merge(parent::getRequestArgs(), array(
55  'reviewRoundId' => $reviewRound->getId()
56  )
57  );
58  }
59 
63  function loadData($filter = array()) {
64  // Get all review files assigned to this submission.
65  $reviewRound = $this->getReviewRound();
66  $submissionFileDao = DAORegistry::getDAO('SubmissionFileDAO'); /* @var $submissionFileDao SubmissionFileDAO */
67  $submissionFiles = $submissionFileDao->getLatestRevisionsByReviewRound($reviewRound, $this->_showAll?null:$this->getFileStage());
68  return $this->prepareSubmissionFileData($submissionFiles, $this->_viewableOnly, $filter);
69  }
70 
71  //
72  // Overridden public methods from FilesGridDataProvider
73  //
77  function getSelectAction($request) {
78  import('lib.pkp.controllers.grid.files.fileList.linkAction.SelectReviewFilesLinkAction');
79  $reviewRound = $this->getReviewRound();
80  $modalTitle = __('editor.submission.review.currentFiles', array('round' => $reviewRound->getRound()));
81  return new SelectReviewFilesLinkAction(
82  $request, $reviewRound,
83  __('editor.submission.uploadSelectFiles'),
84  $modalTitle
85  );
86  }
87 
91  function getAddFileAction($request) {
92  import('lib.pkp.controllers.api.file.linkAction.AddFileLinkAction');
93  $submission = $this->getSubmission();
94  $reviewRound = $this->getReviewRound();
95 
96  return new AddFileLinkAction(
97  $request, $submission->getId(), $this->getStageId(),
98  $this->getUploaderRoles(), $this->getFileStage(),
99  null, null, $reviewRound->getId()
100  );
101  }
102 
107  function getReviewRound() {
108  $reviewRound = $this->getAuthorizedContextObject(ASSOC_TYPE_REVIEW_ROUND);
109  return $reviewRound;
110  }
111 }
112 
113 
ReviewGridDataProvider\getRequestArgs
getRequestArgs()
Definition: ReviewGridDataProvider.inc.php:55
ReviewGridDataProvider\getAddFileAction
getAddFileAction($request)
Definition: ReviewGridDataProvider.inc.php:94
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57
ReviewRoundRequiredPolicy
Policy that ensures that the request contains a valid review round.
Definition: ReviewRoundRequiredPolicy.inc.php:17
SubmissionFilesGridDataProvider
Definition: SubmissionFilesGridDataProvider.inc.php:18
SubmissionFilesGridDataProvider\prepareSubmissionFileData
prepareSubmissionFileData($revisions, $viewableOnly=false, $filter=array())
Definition: SubmissionFilesGridDataProvider.inc.php:161
ReviewGridDataProvider
Provide access to review file data for grids.
Definition: ReviewGridDataProvider.inc.php:17
ReviewGridDataProvider\getSelectAction
getSelectAction($request)
Definition: ReviewGridDataProvider.inc.php:80
AddFileLinkAction
An action to add a submission file.
Definition: AddFileLinkAction.inc.php:18
ReviewGridDataProvider\$_showAll
$_showAll
Definition: ReviewGridDataProvider.inc.php:22
SelectReviewFilesLinkAction
An action to open up the modal that allows users to select review files from a file list grid.
Definition: SelectReviewFilesLinkAction.inc.php:18
FilesGridDataProvider\getSubmission
getSubmission()
Definition: FilesGridDataProvider.inc.php:102
ReviewGridDataProvider\getAuthorizationPolicy
getAuthorizationPolicy($request, $args, $roleAssignments)
Definition: ReviewGridDataProvider.inc.php:41
SubmissionFilesGridDataProvider\getFileStage
getFileStage()
Definition: SubmissionFilesGridDataProvider.inc.php:86
ReviewGridDataProvider\getReviewRound
getReviewRound()
Definition: ReviewGridDataProvider.inc.php:110
GridDataProvider\__construct
__construct()
Definition: GridDataProvider.inc.php:30
GridDataProvider\getAuthorizedContextObject
& getAuthorizedContextObject($assocType)
Definition: GridDataProvider.inc.php:52
ReviewGridDataProvider\loadData
loadData($filter=array())
Definition: ReviewGridDataProvider.inc.php:66
ReviewGridDataProvider\__construct
__construct($fileStageId, $viewableOnly=false, $showAll=false)
Definition: ReviewGridDataProvider.inc.php:29