コード例 #1
0
ファイル: nodes.php プロジェクト: nikosv/openeclass
        );
    }
} else {
    // calculate 1st child's lft value, if exists
    $searchLft = 0;
    $parent = Database::get()->querySingle($fetchNodeById, $requestId);
    if ($parent && ($parent->rgt - $parent->lft) > 1) {
        $searchLft = intval($parent->lft) + 1;
    }
    
    // get 1st child's all neighbour elements
    if ($searchLft > 0) {
        $tree->loopTree(function($node) use (&$nodes, &$searchLft) {
            $nlft = intval($node->lft);
            if ($nlft === $searchLft) {
                $nodes[] = $node;
                $searchLft = intval($node->rgt) + 1;
            }
        }, $allnodes);
    }
    
    if ($exclude != null) {
        $exnode = Database::get()->querySingle($fetchNodeById, $exclude);
        if ($exnode) {
            $excludeLft = intval($exnode->lft);
            $excludeRgt = intval($exnode->rgt);
        }
    }
}

foreach ($nodes as $node) {