/** * Fills given parentPage's childPages attribute recursively with pages * * @param \PwTeaserTeam\PwTeaser\Domain\Model\Page $parentPage * @param array $pages * @return \PwTeaserTeam\PwTeaser\Domain\Model\Page */ protected function fillChildPagesRecursivley($parentPage, array $pages) { $childPages = array(); /** @var $page \PwTeaserTeam\PwTeaser\Domain\Model\Page */ foreach ($pages as $page) { if ($page->getPid() === $parentPage->getUid()) { $this->fillChildPagesRecursivley($page, $pages); $childPages[$page->getSorting()] = $page; } } ksort($childPages); $parentPage->setChildPages(array_values($childPages)); return $parentPage; }