Craft\AmNavService::getParentOptions PHP Method

getParentOptions() public method

Get parent options for given nodes.
public getParentOptions ( array $nodes, mixed $maxLevel = false, boolean $skipFirst = false ) : array
$nodes array
$maxLevel mixed
$skipFirst boolean
return array
    public function getParentOptions($nodes, $maxLevel = false, $skipFirst = false)
    {
        $parentOptions = array();
        if (!$skipFirst) {
            $parentOptions[] = array('label' => '', 'value' => 0);
        }
        foreach ($nodes as $node) {
            $label = '';
            for ($i = 1; $i < $node['level']; $i++) {
                $label .= '    ';
            }
            $label .= $node['name'];
            $parentOptions[] = array('label' => $label, 'value' => $node['id'], 'disabled' => $maxLevel !== false && $node['level'] >= $maxLevel ? true : false);
            if (isset($node['children'])) {
                foreach ($this->getParentOptions($node['children'], $maxLevel, true) as $childNode) {
                    $parentOptions[] = $childNode;
                }
            }
        }
        return $parentOptions;
    }