Open Preprint Systems  3.3.0
QueryNotesGridCellProvider.inc.php
1 <?php
2 
16 import('lib.pkp.classes.controllers.grid.DataObjectGridCellProvider');
17 
20  var $_submission;
21 
26  function __construct($submission) {
27  parent::__construct();
28  $this->_submission = $submission;
29  }
30 
31  //
32  // Template methods from GridCellProvider
33  //
41  function getTemplateVarsFromRowColumn($row, $column) {
42  $element = $row->getData();
43  $columnId = $column->getId();
44  assert(is_a($element, 'DataObject') && !empty($columnId));
45  $user = $element->getUser();
46 
47  switch ($columnId) {
48  case 'from':
49  return array('label' => ($user?$user->getUsername():'&mdash;') . '<br />' . strftime(Config::getVar('general','datetime_format_short'), strtotime($element->getDateCreated())));
50  }
51 
52  return parent::getTemplateVarsFromRowColumn($row, $column);
53  }
54 
58  function getCellActions($request, $row, $column, $position = GRID_ACTION_POSITION_DEFAULT) {
59  switch ($column->getId()) {
60  case 'contents':
61  $element = $row->getData();
62  $submissionFileDao = DAORegistry::getDAO('SubmissionFileDAO'); /* @var $submissionFileDao SubmissionFileDAO */
63  import('lib.pkp.classes.submission.SubmissionFile');
64  $submissionFiles = $submissionFileDao->getLatestRevisionsByAssocId(
65  ASSOC_TYPE_NOTE, $element->getId(),
66  $this->_submission->getId(),
67  SUBMISSION_FILE_QUERY
68  );
69  import('lib.pkp.controllers.api.file.linkAction.DownloadFileLinkAction');
70  $actions = array();
71  foreach ($submissionFiles as $submissionFile) {
72  $actions[] = new DownloadFileLinkAction($request, $submissionFile, $request->getUserVar('stageId'));
73  }
74  return $actions;
75  }
76  return parent::getCellActions($request, $row, $column, $position);
77  }
78 }
79 
80 
QueryNotesGridCellProvider\getTemplateVarsFromRowColumn
getTemplateVarsFromRowColumn($row, $column)
Definition: QueryNotesGridCellProvider.inc.php:44
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57
QueryNotesGridCellProvider
Base class for a cell provider that can retrieve query note info.
Definition: QueryNotesGridCellProvider.inc.php:18
QueryNotesGridCellProvider\__construct
__construct($submission)
Definition: QueryNotesGridCellProvider.inc.php:29
GridCellProvider\__construct
__construct()
Definition: GridCellProvider.inc.php:24
Config\getVar
static getVar($section, $key, $default=null)
Definition: Config.inc.php:35
DataObjectGridCellProvider
Base class for a cell provider that can retrieve simple labels from DataObjects. If you need more com...
Definition: DataObjectGridCellProvider.inc.php:22
QueryNotesGridCellProvider\$_submission
$_submission
Definition: QueryNotesGridCellProvider.inc.php:23
QueryNotesGridCellProvider\getCellActions
getCellActions($request, $row, $column, $position=GRID_ACTION_POSITION_DEFAULT)
Definition: QueryNotesGridCellProvider.inc.php:61
DownloadFileLinkAction
An action to download a file.
Definition: DownloadFileLinkAction.inc.php:17