/** * Gets recursive all sub-sites of a site sorted on their level. * * @param MShop_Locale_Item_Site_Interface $site Site which can contain sub-sites * @return MShop_Locale_Item_Site_Interface[] $sites List with sites */ private function _getSites(MShop_Locale_Item_Site_Interface $site) { $sites = array($site); foreach ($site->getChildren() as $child) { $sites = array_merge($sites, $this->_getSites($child)); } return $sites; }
/** * Returns the list of site IDs of the whole tree. * * @param MShop_Locale_Item_Site_Interface $item Locale item, maybe with children * @return array List of site IDs */ private function _getSiteIdsFromTree(MShop_Locale_Item_Site_Interface $item) { $list = array($item->getId()); foreach ($item->getChildren() as $child) { $list = array_merge($list, $this->_getSiteIdsFromTree($child)); } return $list; }