/** * findSubcategoriesRecursiveAsArray * * @param \TYPO3\CMS\Extbase\Domain\Model\Category $parentCategory * @return array $categories */ public function findSubcategoriesRecursiveAsArray($parentCategory) { $categories = []; $localCategories = $this->findAllAsArray(); foreach ($localCategories as $category) { if ($parentCategory && $category['uid'] == $parentCategory->getUid() || !$parentCategory) { $this->getSubcategoriesIds($localCategories, $category, $categories); } } return $categories; }
/** * Gets the parent category. * * @return \TYPO3\CMS\Extbase\Domain\Model\Category|NULL the parent category * @api */ public function getParent() { if ($this->parent instanceof \TYPO3\CMS\Extbase\Persistence\Generic\LazyLoadingProxy) { $this->parent->_loadRealInstance(); } return $this->parent; }
/** * @test */ public function setParentSetsParent() { $parent = new \TYPO3\CMS\Extbase\Domain\Model\Category(); $this->fixture->setParent($parent); $this->assertSame($parent, $this->fixture->getParent()); }