Open Journal Systems  3.3.0
SectionGridCellProvider.inc.php
1 <?php
15 import('lib.pkp.classes.controllers.grid.GridCellProvider');
16 
18 
26  function getTemplateVarsFromRowColumn($row, $column) {
27  $element = $row->getData();
28  $columnId = $column->getId();
29  assert(is_a($element, 'Section') && !empty($columnId));
30  switch ($columnId) {
31  case 'inactive':
32  return array('selected' => $element['inactive']);
33  }
34  return parent::getTemplateVarsFromRowColumn($row, $column);
35  }
36 
40  function getCellActions($request, $row, $column, $position = GRID_ACTION_POSITION_DEFAULT) {
41  switch ($column->getId()) {
42  case 'inactive':
43  $element = $row->getData(); /* @var $element DataObject */
44 
45  $router = $request->getRouter();
46  import('lib.pkp.classes.linkAction.LinkAction');
47 
48  if ($element['inactive']) {
49  return array(new LinkAction(
50  'activateSection',
52  $request->getSession(),
53  __('manager.sections.confirmActivateSection'),
54  null,
55  $router->url(
56  $request,
57  null,
58  'grid.settings.sections.SectionGridHandler',
59  'activateSection',
60  null,
61  array('sectionKey' => $row->getId())
62  )
63  )
64  ));
65  } else {
66  return array(new LinkAction(
67  'deactivateSection',
69  $request->getSession(),
70  __('manager.sections.confirmDeactivateSection'),
71  null,
72  $router->url(
73  $request,
74  null,
75  'grid.settings.sections.SectionGridHandler',
76  'deactivateSection',
77  null,
78  array('sectionKey' => $row->getId())
79  )
80  )
81  ));
82  }
83  }
84  return parent::getCellActions($request, $row, $column, $position);
85  }
86 }
87 
88 
RemoteActionConfirmationModal
Class defining a simple confirmation modal with a remote action and ok/cancel buttons.
Definition: RemoteActionConfirmationModal.inc.php:18
SectionGridCellProvider
Grid cell provider for section grid.
Definition: SectionGridCellProvider.inc.php:17
SectionGridCellProvider\getCellActions
getCellActions($request, $row, $column, $position=GRID_ACTION_POSITION_DEFAULT)
Definition: SectionGridCellProvider.inc.php:40
LinkAction
Base class defining an action that can be performed by the user in the user interface.
Definition: LinkAction.inc.php:22
GridCellProvider
Base class for a grid column's cell provider.
Definition: GridCellProvider.inc.php:20
SectionGridCellProvider\getTemplateVarsFromRowColumn
getTemplateVarsFromRowColumn($row, $column)
Definition: SectionGridCellProvider.inc.php:26