16 import(
'lib.pkp.classes.controllers.grid.DataObjectGridCellProvider');
32 function __construct($submission, $publication, $isEditable) {
33 parent::__construct();
34 $this->_submission = $submission;
35 $this->_publication = $publication;
36 $this->_isEditable = $isEditable;
46 $element = $row->getData();
47 $columnId = $column->getId();
48 assert(is_a($element,
'DataObject') && !empty($columnId));
53 'label' => ($element->getRemoteUrl()==
'' && $element->getFileId())?
'':$element->getLabel()
56 default: assert(
false);
58 return parent::getTemplateVarsFromRowColumn($row, $column);
68 'submissionId' => $this->_submission->getId(),
69 'publicationId' => $this->_publication->getId(),
76 function getCellActions($request, $row, $column, $position = GRID_ACTION_POSITION_DEFAULT) {
77 switch ($column->getId()) {
79 $element = $row->getData();
80 if ($element->getRemoteUrl() !=
'' || !$element->getFileId())
break;
83 import(
'lib.pkp.classes.submission.SubmissionFile');
84 $submissionFile = $submissionFileDao->getLatestRevision(
85 $element->getFileId(),
87 $this->_submission->getId()
89 import(
'lib.pkp.controllers.api.file.linkAction.DownloadFileLinkAction');
90 return array(
new DownloadFileLinkAction($request, $submissionFile, WORKFLOW_STAGE_ID_PRODUCTION, $element->getLabel()));
92 return parent::getCellActions($request, $row, $column, $position);