Пример #1
0
 /**
  * @Hook("projects:resolved:node")
  * @param \Codex\Contracts\Projects\Projects $projects
  * @param \Codex\Projects\Project            $project
  * @param \Codex\Menus\Node                  $node
  *
  * @throws \Codex\Exception\CodexException
  */
 public function projectsResolvedNode(Projects $projects, Project $project, Node $node)
 {
     if (false === $this->hasEnabledAuth($project)) {
         return;
     }
     if (false === $project->hasAccess()) {
         $node->setMeta('hidden', true);
         // if all neighbors are hidden, hide the parent as well
         if ($node->hasParent() && $node->neighbors()->where('meta.hidden', true)->count() === count($node->getNeighbors())) {
             $node->getParent()->setMeta('hidden', true);
         }
     }
 }
Пример #2
0
 /**
  * Get breadcrumbs to the given Node
  *
  * @param \Codex\Menus\Node $item
  *
  * @return array
  */
 public function getBreadcrumbTo(Node $item)
 {
     return $item->getAncestorsAndSelf();
 }