function create($parent_id = 0, $ordering = 999) { $db = oseDB::instance(); $query = " SELECT count(*) FROM `#__osemsc_acl`" . " WHERE parent_id = {$parent_id} AND ordering ={$ordering} "; $db->setQuery($query); $existSibling = $db->loadResult(); if ($existSibling > 0) { if (!oseMscTree::add(array('parent_id' => $parent_id, 'ordering' => 999))) { return false; } $node = oseMscTree::getNodeByOrder($parent_id, '999', 'obj'); oseMscTree::treeOrderChange($node, $ordering); oseMscTree::orderChange($node, $ordering); oseMscTree::reorder($parent_id); } else { // At the first time if (oseMscTree::isEmpty(0)) { $parent_id = 0; $ordering = 1; } if (!oseMscTree::add(array('parent_id' => $parent_id, 'ordering' => $ordering))) { return false; } $node = oseMscTree::getNodeByOrder($parent_id, $ordering, 'obj'); oseMscTree::reorder($parent_id); } return $node->id; }