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

controllers/grid/files/proof/ProofFilesGridDataProvider.inc.php

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    // Implement template methods from GridDataProvider
00032    //
00036    function getAuthorizationPolicy(&$request, $args, $roleAssignments) {
00037       // Retrieve the current policy.
00038       $authorizationPolicy = parent::getAuthorizationPolicy($request, $args, $roleAssignments);
00039 
00040       // Append the publication format policy.
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       // Grab the files to display as categories
00059       $monograph =& $this->getMonograph();
00060       $submissionFileDao =& DAORegistry::getDAO('SubmissionFileDAO'); /* @var $submissionFileDao 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    // Private helper methods
00073    //
00074 
00079    function _getPublicationFormatId() {
00080       $publicationFormat =& $this->getAuthorizedContextObject(ASSOC_TYPE_PUBLICATION_FORMAT);
00081       return $publicationFormat->getId();
00082    }
00083 }
00084 
00085 ?>

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