public function getParentTreeIterator($parent_id = 0, $level = 1)
{
$results = $this->findAll(['order' => 'sort', 'condition' => 'parent_id = :parent_id AND id <> :id AND menu_id = :menu_id', 'params' => ['parent_id' => (int) $parent_id, 'id' => (int) $this->id, 'menu_id' => (int) $this->menu_id]]);
$items = [];
if (empty($results)) {
return $items;
}
foreach ($results as $result) {
$childItems = $this->getParentTreeIterator($result->id, $level + 1);
$items += [$result->id => str_repeat(' ', $level) . $result->title] + $childItems;
}
return $items;
}