Ejemplo n.º 1
0
 /**
  * Get all resources for a site
  *
  * @param Site $site Rcm Site Entity
  *
  * @return array
  */
 protected function getSiteResources(Site $site)
 {
     $primaryDomain = $site->getDomain();
     if (empty($primaryDomain)) {
         // no resources if domain missing
         return array();
     }
     $primaryDomainName = $primaryDomain->getDomainName();
     $siteId = $site->getSiteId();
     $return['sites.' . $siteId] = ['resourceId' => 'sites.' . $siteId, 'parentResourceId' => 'sites', 'name' => $primaryDomainName, 'description' => "Resource for site '{$primaryDomainName}'"];
     $return['sites.' . $siteId] = array_merge($this->resources['sites'], $return['sites.' . $siteId]);
     $return['sites.' . $siteId . '.pages'] = ['resourceId' => 'sites.' . $siteId . '.pages', 'parentResourceId' => 'sites.' . $siteId, 'name' => $primaryDomainName . ' - pages', 'description' => "Resource for pages on site '{$primaryDomainName}'"];
     $return['sites.' . $siteId . '.pages'] = array_merge($this->resources['pages'], $return['sites.' . $siteId . '.pages']);
     $pages = $site->getpages();
     /** @var \Rcm\Entity\Page $page */
     foreach ($pages as &$page) {
         $pageResources = $this->getPageResources($page, $site);
         $return = array_merge($pageResources, $return);
     }
     return $return;
 }