first commit
This commit is contained in:
@@ -0,0 +1,112 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @file controllers/grid/files/FilesGridDataProvider.php
|
||||
*
|
||||
* Copyright (c) 2014-2021 Simon Fraser University
|
||||
* Copyright (c) 2000-2021 John Willinsky
|
||||
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
||||
*
|
||||
* @class FilesGridDataProvider
|
||||
*
|
||||
* @ingroup controllers_grid_files
|
||||
*
|
||||
* @brief Basic files grid data provider.
|
||||
*/
|
||||
|
||||
namespace PKP\controllers\grid\files;
|
||||
|
||||
use APP\core\Application;
|
||||
use PKP\controllers\grid\GridDataProvider;
|
||||
|
||||
class FilesGridDataProvider extends GridDataProvider
|
||||
{
|
||||
/** @var int */
|
||||
public $_uploaderRoles;
|
||||
|
||||
/** @var bool */
|
||||
public $_viewableOnly = false;
|
||||
|
||||
|
||||
//
|
||||
// Getters and Setters
|
||||
//
|
||||
/**
|
||||
* Set the uploader roles.
|
||||
*
|
||||
* @param array $roleAssignments The grid's
|
||||
* role assignment from which the uploader roles
|
||||
* will be extracted.
|
||||
*/
|
||||
public function setUploaderRoles($roleAssignments)
|
||||
{
|
||||
$this->_uploaderRoles = array_keys($roleAssignments);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the uploader roles.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getUploaderRoles()
|
||||
{
|
||||
assert(is_array($this->_uploaderRoles) && !empty($this->_uploaderRoles));
|
||||
return $this->_uploaderRoles;
|
||||
}
|
||||
|
||||
/**
|
||||
* Load only viewable files flag.
|
||||
*
|
||||
* @param bool $viewableOnly
|
||||
*/
|
||||
public function setViewableOnly($viewableOnly)
|
||||
{
|
||||
$this->_viewableOnly = $viewableOnly;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Public helper methods
|
||||
//
|
||||
/**
|
||||
* Configures and returns the action to add a file.
|
||||
*
|
||||
* NB: Must be overridden by subclasses (if implemented).
|
||||
*
|
||||
* @param Request $request
|
||||
*
|
||||
* @return AddFileLinkAction
|
||||
*/
|
||||
public function getAddFileAction($request)
|
||||
{
|
||||
assert(false);
|
||||
}
|
||||
|
||||
/**
|
||||
* Configures and returns the select files action.
|
||||
*
|
||||
* NB: Must be overridden by subclasses (if implemented).
|
||||
*
|
||||
* @param Request $request
|
||||
*
|
||||
* @return SelectFilesLinkAction
|
||||
*/
|
||||
public function getSelectAction($request)
|
||||
{
|
||||
assert(false);
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Protected helper methods
|
||||
//
|
||||
/**
|
||||
* Get the authorized submission.
|
||||
*
|
||||
* @return Submission
|
||||
*/
|
||||
protected function getSubmission()
|
||||
{
|
||||
return $this->getAuthorizedContextObject(Application::ASSOC_TYPE_SUBMISSION);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user