function initialize($request)
{
parent::initialize($request);
// Load translations.
AppLocale::requireComponents(LOCALE_COMPONENT_APP_SUBMISSION, LOCALE_COMPONENT_PKP_SUBMISSION, LOCALE_COMPONENT_APP_EDITOR, LOCALE_COMPONENT_PKP_EDITOR, LOCALE_COMPONENT_PKP_COMMON, LOCALE_COMPONENT_APP_COMMON);
// Add grid actions
$capabilities = $this->getCapabilities();
$dataProvider = $this->getDataProvider();
if ($capabilities->canManage()) {
$this->addAction($dataProvider->getSelectAction($request));
}
if ($capabilities->canAdd()) {
assert(isset($dataProvider));
$this->addAction($dataProvider->getAddFileAction($request));
}
// Test whether the tar binary is available for the export to work, if so, add 'download all' grid action
if ($capabilities->canDownloadAll() && $this->hasGridDataElements($request)) {
$submission = $this->getSubmission();
$stageId = $this->getStageId();
$linkParams = array('submissionId' => $submission->getId(), 'stageId' => $stageId);
$files = $this->getFilesToDownload($request);
$this->addAction($capabilities->getDownloadAllAction($request, $files, $linkParams), GRID_ACTION_POSITION_BELOW);
}
// The file name column is common to all file grid types.
$this->addColumn(new FileNameGridColumn($capabilities->canViewNotes(), $this->getStageId()));
// The file list grid layout has an additional file genre column.
import('lib.pkp.controllers.grid.files.fileList.FileGenreGridColumn');
$this->addColumn(new FileGenreGridColumn());
// Set the no items row text
$this->setEmptyRowText('grid.noFiles');
}