Open Monograph Press  3.3.0
GridCellProvider.inc.php
1 <?php
2 
24  function __construct() {
25  }
26 
27  //
28  // Public methods
29  //
30 
39  function render($request, $row, $column) {
40  $columnId = $column->getId();
41  assert(!empty($columnId));
42 
43  // Construct a default cell id (null for "nonexistent" new rows)
44  $rowId = $row->getId(); // Potentially null (indicating row not backed in the DB)
45  $cellId = isset($rowId)?$rowId.'-'.$columnId:null;
46 
47  // Assign values extracted from the element for the cell.
48  $templateMgr = TemplateManager::getManager($request);
49  $templateVars = $this->getTemplateVarsFromRowColumn($row, $column);
50  foreach ($templateVars as $varName => $varValue) {
51  $templateMgr->assign($varName, $varValue);
52  }
53  $templateMgr->assign(array(
54  'id' => $cellId,
55  'column' => $column,
56  'actions' => $this->getCellActions($request, $row, $column),
57  'flags' => $column->getFlags(),
58  'formLocales' => AppLocale::getSupportedFormLocales(),
59  ));
60  $template = $column->getTemplate();
61  assert(!empty($template));
62  return $templateMgr->fetch($template);
63  }
64 
65  //
66  // Protected template methods
67  //
76  function getTemplateVarsFromRowColumn($row, $column) {
77  return array();
78  }
79 
95  function getCellActions($request, $row, $column, $position = GRID_ACTION_POSITION_DEFAULT) {
96  return $column->getCellActions($request, $row, $position);
97  }
98 }
99 
100 
GridCellProvider\render
render($request, $row, $column)
Definition: GridCellProvider.inc.php:39
GridCellProvider\getTemplateVarsFromRowColumn
getTemplateVarsFromRowColumn($row, $column)
Definition: GridCellProvider.inc.php:76
GridCellProvider\__construct
__construct()
Definition: GridCellProvider.inc.php:24
GridCellProvider
Base class for a grid column's cell provider.
Definition: GridCellProvider.inc.php:20
PKPTemplateManager\getManager
static & getManager($request=null)
Definition: PKPTemplateManager.inc.php:1239
AppLocale\getSupportedFormLocales
static getSupportedFormLocales()
Definition: env1/MockAppLocale.inc.php:124
GridCellProvider\getCellActions
getCellActions($request, $row, $column, $position=GRID_ACTION_POSITION_DEFAULT)
Definition: GridCellProvider.inc.php:95