public function getChildren($name)
{
$query = (new Query())->select(['name', 'type', 'description', 'rule_name', 'data', 'created_at', 'updated_at'])->from([$this->itemTable, $this->itemChildTable])->where(['parent' => $name, 'name' => new Expression('[[child]]')]);
$children = [];
foreach ($query->all($this->db) as $row) {
$children[$row['name']] = $this->populateItem($row);
}
return $children;
}
/** @inheritdoc */ public function init() { parent::init(); $this->manager = \Yii::$app->authManager; if ($this->item instanceof Item) { $this->name = $this->item->name; $this->description = $this->item->description; $this->children = array_keys($this->manager->getChildren($this->item->name)); if ($this->item->ruleName !== null) { $this->rule = get_class($this->manager->getRule($this->item->ruleName)); } } }