/** * Holt anhand der Website-ID Daten zu den in der Navigation verwendeten Pages * * @param \Orm\Entity\Website|string $website * @return string */ public function getNavigationWithDataFromWebsite($websiteParam) { if ($websiteParam instanceof \Orm\Entity\Website) { $website = $websiteParam; } elseif (\is_string($websiteParam)) { $website = $this->getService()->getById($websiteParam); } else { return; } $pageInfos = $this->getService('Page')->getInfosByWebsiteId($website->getId()); $navigation = \Zend_Json::decode($website->getNavigation()); if (!is_array($navigation)) { $navigation = array(); } $arrayVerwalter = new \Seitenbau\ArrayData(); if (is_array($pageInfos) && count($pageInfos) > 0 && is_array($navigation)) { $arrayVerwalter->mergeData($navigation, $pageInfos); } return $navigation; }
/** * Holt anhand der Website-ID Daten zu den in der Navigation verwendeten Pages * * @param string $websiteId * * @return string */ protected function getNavigationWithDataByWebsiteId($websiteId) { $website = $this->getBusiness('Website')->getById($websiteId); $pageInfos = $this->getBusiness('Page')->getInfosByWebsiteId($website->getId()); $navigation = \Zend_Json::decode($website->getNavigation()); $arrayVerwalter = new Seitenbau\ArrayData(); if (is_array($pageInfos) && count($pageInfos) > 0 && is_array($navigation)) { $arrayVerwalter->mergeData($navigation, $pageInfos); } return $navigation; }