Open Journal Systems  3.3.0
GridFeature.inc.php
1 <?php
2 
20 class GridFeature {
21 
23  var $_id;
24 
26  var $_options;
27 
32  function __construct($id) {
33  $this->setId($id);
34  }
35 
36 
37  //
38  // Getters and setters.
39  //
44  function getId() {
45  return $this->_id;
46  }
47 
52  function setId($id) {
53  $this->_id = $id;
54  }
55 
60  function getOptions() {
61  return $this->_options;
62  }
63 
68  function addOptions($options) {
69  assert(is_array($options));
70  $this->_options = array_merge((array) $this->getOptions(), $options);
71  }
72 
73 
74  //
75  // Protected methods to be used or extended by subclasses.
76  //
83  function setOptions($request, $grid) {
84  $renderedElements = $this->fetchUIElements($request, $grid);
85  if ($renderedElements) {
86  foreach ($renderedElements as $id => $markup) {
87  $this->addOptions(array($id => $markup));
88  }
89  }
90  }
91 
104  function fetchUIElements($request, $grid) {
105  return array();
106  }
107 
112  function getJSClass() {
113  return null;
114  }
115 
116 
117  //
118  // Public hooks to be implemented in subclasses.
119  //
129  function getRequestArgs($args) {
130  return null;
131  }
132 
141  function getGridRangeInfo($args) {
142  return null;
143  }
144 
153  function getGridDataElements($args) {
154  return null;
155  }
156 
163  function setGridDataElements($args) {
164  return null;
165  }
166 
173  function getInitializedRowInstance($args) {
174  return null;
175  }
176 
184  function getInitializedCategoryRowInstance($args) {
185  return null;
186  }
187 
193  function gridInitialize($args) {
194  return null;
195  }
196 
204  function loadData($args) {
205  return null;
206  }
207 
212  function fetchGrid($args) {
213  $grid =& $args['grid'];
214  $request =& $args['request'];
215 
216  $this->setOptions($request, $grid);
217  }
218 
226  function fetchRows($args) {
227  return null;
228  }
229 
238  function fetchRow($args) {
239  return null;
240  }
241 
248  function saveSequence($args) {
249  return null;
250  }
251 }
252 
253 
GridFeature\getInitializedCategoryRowInstance
getInitializedCategoryRowInstance($args)
Definition: GridFeature.inc.php:190
GridFeature\saveSequence
saveSequence($args)
Definition: GridFeature.inc.php:254
GridFeature\gridInitialize
gridInitialize($args)
Definition: GridFeature.inc.php:199
GridFeature\getInitializedRowInstance
getInitializedRowInstance($args)
Definition: GridFeature.inc.php:179
GridFeature\__construct
__construct($id)
Definition: GridFeature.inc.php:38
GridFeature\getGridRangeInfo
getGridRangeInfo($args)
Definition: GridFeature.inc.php:147
GridFeature\fetchRows
fetchRows($args)
Definition: GridFeature.inc.php:232
GridFeature\fetchRow
fetchRow($args)
Definition: GridFeature.inc.php:244
GridFeature\addOptions
addOptions($options)
Definition: GridFeature.inc.php:74
GridFeature\setId
setId($id)
Definition: GridFeature.inc.php:58
GridFeature\getId
getId()
Definition: GridFeature.inc.php:50
GridFeature
Base grid feature class. A feature is a type of plugin specific to the grid widgets....
Definition: GridFeature.inc.php:20
GridFeature\$_options
$_options
Definition: GridFeature.inc.php:32
GridFeature\getRequestArgs
getRequestArgs($args)
Definition: GridFeature.inc.php:135
GridFeature\loadData
loadData($args)
Definition: GridFeature.inc.php:210
GridFeature\setOptions
setOptions($request, $grid)
Definition: GridFeature.inc.php:89
GridFeature\getOptions
getOptions()
Definition: GridFeature.inc.php:66
GridFeature\fetchUIElements
fetchUIElements($request, $grid)
Definition: GridFeature.inc.php:110
GridFeature\getJSClass
getJSClass()
Definition: GridFeature.inc.php:118
GridFeature\$_id
$_id
Definition: GridFeature.inc.php:26
GridFeature\getGridDataElements
getGridDataElements($args)
Definition: GridFeature.inc.php:159
GridFeature\setGridDataElements
setGridDataElements($args)
Definition: GridFeature.inc.php:169
GridFeature\fetchGrid
fetchGrid($args)
Definition: GridFeature.inc.php:218