00001 <?php
00002
00016 import('controllers.grid.files.SubmissionFilesGridDataProvider');
00017
00018 class ProofFilesGridDataProvider extends SubmissionFilesGridDataProvider {
00020 var $_publicationFormatId;
00021
00025 function ProofFilesGridDataProvider() {
00026 parent::SubmissionFilesGridDataProvider(MONOGRAPH_FILE_PROOF);
00027 }
00028
00029
00030
00031
00032
00036 function getAuthorizationPolicy(&$request, $args, $roleAssignments) {
00037
00038 $authorizationPolicy = parent::getAuthorizationPolicy($request, $args, $roleAssignments);
00039
00040
00041 import('classes.security.authorization.internal.PublicationFormatRequiredPolicy');
00042 $authorizationPolicy->addPolicy(new PublicationFormatRequiredPolicy($request, $args));
00043
00044 return $authorizationPolicy;
00045 }
00046
00050 function getRequestArgs() {
00051 return array_merge(parent::getRequestArgs(), array('publicationFormatId', $this->_getPublicationFormatId()));
00052 }
00053
00057 function &loadData() {
00058
00059 $monograph =& $this->getMonograph();
00060 $submissionFileDao =& DAORegistry::getDAO('SubmissionFileDAO');
00061 $monographFiles =& $submissionFileDao->getLatestRevisionsByAssocId(
00062 ASSOC_TYPE_PUBLICATION_FORMAT,
00063 $this->_getPublicationFormatId(),
00064 $monograph->getId(),
00065 $this->getFileStage()
00066 );
00067
00068 return $this->prepareSubmissionFileData($monographFiles);
00069 }
00070
00071
00072
00073
00074
00079 function _getPublicationFormatId() {
00080 $publicationFormat =& $this->getAuthorizedContextObject(ASSOC_TYPE_PUBLICATION_FORMAT);
00081 return $publicationFormat->getId();
00082 }
00083 }
00084
00085 ?>