public function GetNestedArray($parent = '') { $this->BypassSecurity(true); $dataset = $this->GetDataset(); $this->BypassSecurity(false); $relational = array(); $rows = uCMS_View::fetchAll(); foreach ($rows as $row) { $row['children'] = array(); $relational[$row['cms_id']] = $row; } array_sort_subkey($relational, 'position'); $unset = array(); foreach ($relational as $k => $i) { if ($i['parent'] && array_key_exists($i['parent'], $relational)) { $unset[] = $k; $relational[$i['parent']]['children'][$k] =& $relational[$k]; } } $relational = $relational; foreach ($unset as $u) { unset($relational[$u]); } return self::findkey($relational, $parent); }