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

controllers/grid/files/FilesGridDataProvider.inc.php

00001 <?php
00002 
00016 import('lib.pkp.classes.controllers.grid.GridDataProvider');
00017 
00018 class FilesGridDataProvider extends GridDataProvider {
00019 
00020    /* @var integer */
00021    var $_uploaderRoles;
00022 
00024    var $_viewableOnly = false;
00025 
00029    function FilesGridDataProvider() {
00030       parent::GridDataProvider();
00031    }
00032 
00033 
00034    //
00035    // Getters and Setters
00036    //
00043    function setUploaderRoles($roleAssignments) {
00044       $this->_uploaderRoles = array_keys($roleAssignments);
00045    }
00046 
00051    function getUploaderRoles() {
00052       assert(is_array($this->_uploaderRoles) && !empty($this->_uploaderRoles));
00053       return $this->_uploaderRoles;
00054    }
00055 
00060    function setViewableOnly($viewableOnly) {
00061       $this->_viewableOnly = $viewableOnly;
00062    }
00063 
00064 
00065    //
00066    // Public helper methods
00067    //
00077    function &getAddFileAction($request) {
00078       assert(false);
00079    }
00080 
00090    function &getSelectAction($request) {
00091       assert(false);
00092    }
00093 
00094 
00095    //
00096    // Protected helper methods
00097    //
00102    function &getMonograph() {
00103       return $this->getAuthorizedContextObject(ASSOC_TYPE_MONOGRAPH);
00104    }
00105 
00114    function &prepareSubmissionFileData(&$revisions, $viewableOnly = false) {
00115       // Rearrange the files as required by submission file grids.
00116       $submissionFileData = array();
00117       foreach ($revisions as $revision) {
00118          if ($viewableOnly && !$revision->getViewable()) continue;
00119 
00120          $submissionFileData[$revision->getFileId()] = array(
00121             'submissionFile' => $revision
00122          );
00123          unset($revision);
00124       }
00125       return $submissionFileData;
00126    }
00127 }
00128 
00129 ?>

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