/** * Get data. * * @return [[@doctodo return_type:getData]] [[@doctodo return_description:getData]] */ public function getData() { if (is_null($this->_currentData)) { $this->_currentDataRaw = $this->dataProvider->getData(); $this->_currentData = []; $itemNumber = $this->dataProvider->pagination->offset; $row = 0; foreach ($this->_currentDataRaw as $r) { $p = ['itemNumber' => $itemNumber, 'id' => $r->primaryKey, 'values' => []]; foreach ($this->columns as $key => $c) { $p['values'][$key] = $c->getDataValue($row, $r, false); } $p['acl'] = []; if ($this->owner->instanceSettings['whoAmI'] === 'parent' and isset($r->childObject) and $r->childObject->hasBehavior('Access')) { $p['acl'] = $r->childObject->aclSummary(); } elseif ($this->owner->instanceSettings['whoAmI'] === 'child' and isset($r->parentObject) and $r->parentObject->hasBehavior('Access')) { $p['acl'] = $r->parentObject->aclSummary(); } elseif ($r->hasBehavior('Access')) { $p['acl'] = $r->aclSummary(); } $this->_currentData['item-' . $itemNumber] = $p; $row++; $itemNumber++; } } return $this->_currentData; }