|
ILIAS
release_5-4 Revision v5.4.26-12-gabc799a52e6
|
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco. More...
Inheritance diagram for ilTree:
Collaboration diagram for ilTree:Public Member Functions | |
| __construct ($a_tree_id, $a_root_id=0) | |
| Constructor @access public. More... | |
| initTreeImplementation () | |
| Init tree implementation. More... | |
| getTreeImplementation () | |
| Get tree implementation. More... | |
| useCache ($a_use=true) | |
| Use Cache (usually activated) More... | |
| isCacheUsed () | |
| Check if cache is active. More... | |
| getDepthCache () | |
| Get depth cache. More... | |
| getParentCache () | |
| Get parent cache. More... | |
| initLangCode () | |
| Store user language. More... | |
| getTreeTable () | |
| Get tree table name. More... | |
| getObjectDataTable () | |
| Get object data table. More... | |
| getTreePk () | |
| Get tree primary key. More... | |
| getTableReference () | |
| Get reference table if available. More... | |
| getGap () | |
| Get default gap *. More... | |
| resetInTreeCache () | |
| setTableNames ($a_table_tree, $a_table_obj_data, $a_table_obj_reference="") | |
| set table names The primary key of the table containing your object_data must be 'obj_id' You may use a reference table. More... | |
| setReferenceTablePK ($a_column_name) | |
| set column containing primary key in reference table @access public More... | |
| setObjectTablePK ($a_column_name) | |
| set column containing primary key in object table @access public More... | |
| setTreeTablePK ($a_column_name) | |
| set column containing primary key in tree table @access public More... | |
| buildJoin () | |
| build join depending on table settings @access private More... | |
| getRelation ($a_node_a, $a_node_b) | |
| Get relation of two nodes. More... | |
| getRelationOfNodes ($a_node_a_arr, $a_node_b_arr) | |
| get relation of two nodes by node data More... | |
| getChildIds ($a_node) | |
| Get node child ids @global type $ilDB. More... | |
| getChilds ($a_node_id, $a_order="", $a_direction="ASC") | |
| get child nodes of given node @access public More... | |
| getFilteredChilds ($a_filter, $a_node, $a_order="", $a_direction="ASC") | |
| get child nodes of given node (exclude filtered obj_types) @access public More... | |
| getChildsByType ($a_node_id, $a_type) | |
| get child nodes of given node by object type @access public More... | |
| getChildsByTypeFilter ($a_node_id, $a_types, $a_order="", $a_direction="ASC") | |
| get child nodes of given node by object type @access public More... | |
| insertNodeFromTrash ($a_source_id, $a_target_id, $a_tree_id, $a_pos=IL_LAST_NODE, $a_reset_deleted_date=false) | |
| Insert node from trash deletes trash entry. More... | |
| insertNode ($a_node_id, $a_parent_id, $a_pos=IL_LAST_NODE, $a_reset_deletion_date=false) | |
| insert new node with node_id under parent node with parent_id @access public More... | |
| getFilteredSubTree ($a_node_id, $a_filter=array()) | |
| get filtered subtree More... | |
| getSubTreeIds ($a_ref_id) | |
| Get all ids of subnodes. More... | |
| getSubTree ($a_node, $a_with_data=true, $a_type="") | |
| get all nodes in the subtree under specified node More... | |
| getSubTreeTypes ($a_node, $a_filter=0) | |
| get types of nodes in the subtree under specified node More... | |
| deleteTree ($a_node) | |
| delete node and the whole subtree under this node @access public More... | |
| validateParentRelations () | |
| Validate parent relations of tree. More... | |
| getPathFull ($a_endnode_id, $a_startnode_id=0) | |
| get path from a given startnode to a given endnode if startnode is not given the rootnode is startnode. More... | |
| preloadDepthParent ($a_node_ids) | |
| Preload depth/parent. More... | |
| getPathId ($a_endnode_id, $a_startnode_id=0) | |
| get path from a given startnode to a given endnode if startnode is not given the rootnode is startnode @access public More... | |
| getNodePathForTitlePath ($titlePath, $a_startnode_id=null) | |
| Converts a path consisting of object titles into a path consisting of tree nodes. More... | |
| getNodePath ($a_endnode_id, $a_startnode_id=0) | |
| Returns the node path for the specified object reference. More... | |
| checkTree () | |
| check consistence of tree all left & right values are checked if they are exists only once @access public More... | |
| checkTreeChilds ($a_no_zero_child=true) | |
| check, if all childs of tree nodes exist in object table More... | |
| getMaximumDepth () | |
| Return the current maximum depth in the tree @access public. More... | |
| getDepth ($a_node_id) | |
| return depth of a node in tree @access private More... | |
| getNodeTreeData ($a_node_id) | |
| return all columns of tabel tree More... | |
| getNodeData ($a_node_id, $a_tree_pk=null) | |
| get all information of a node. More... | |
| fetchNodeData ($a_row) | |
| get data of parent node from tree and object_data @access private More... | |
| isInTree ($a_node_id) | |
| get all information of a node. More... | |
| getParentNodeData ($a_node_id) | |
| get data of parent node from tree and object_data @access public More... | |
| isGrandChild ($a_startnode_id, $a_querynode_id) | |
| checks if a node is in the path of an other node @access public More... | |
| addTree ($a_tree_id, $a_node_id=-1) | |
| create a new tree to do: ??? More... | |
| getNodeDataByType ($a_type) | |
| get nodes by type More... | |
| removeTree ($a_tree_id) | |
| remove an existing tree More... | |
| moveToTrash ($a_node_id, $a_set_deleted=false) | |
| Wrapper for saveSubTree. More... | |
| saveSubTree ($a_node_id, $a_set_deleted=false) | |
| Use the wrapper moveToTrash save subtree: delete a subtree (defined by node_id) to a new tree with $this->tree_id -node_id. More... | |
| isDeleted ($a_node_id) | |
| This is a wrapper for isSaved() with a more useful name. More... | |
| isSaved ($a_node_id) | |
| Use method isDeleted check if node is saved. More... | |
| preloadDeleted ($a_node_ids) | |
| Preload deleted information. More... | |
| getSavedNodeData ($a_parent_id) | |
| get data saved/deleted nodes More... | |
| getSavedNodeObjIds (array $a_obj_ids) | |
| get object id of saved/deleted nodes More... | |
| getParentId ($a_node_id) | |
| get parent id of given node @access public More... | |
| getLeftValue ($a_node_id) | |
| get left value of given node @access public More... | |
| getChildSequenceNumber ($a_node, $type="") | |
| get sequence number of node in sibling sequence @access public More... | |
| readRootId () | |
| read root id from database More... | |
| getRootId () | |
| get the root id of tree @access public More... | |
| setRootId ($a_root_id) | |
| getTreeId () | |
| get tree id @access public More... | |
| setTreeId ($a_tree_id) | |
| set tree id @access public More... | |
| fetchSuccessorNode ($a_node_id, $a_type="") | |
| get node data of successor node More... | |
| fetchPredecessorNode ($a_node_id, $a_type="") | |
| get node data of predecessor node More... | |
| renumber ($node_id=1, $i=1) | |
| Wrapper for renumber. More... | |
| __renumber ($node_id=1, $i=1) | |
| This method is private. More... | |
| checkForParentType ($a_ref_id, $a_type, $a_exclude_source_check=false) | |
| Check for parent type e.g check if a folder (ref_id 3) is in a parent course obj => checkForParentType(3,'crs');. More... | |
| __isMainTree () | |
| Check if operations are done on main tree. More... | |
| __checkDelete ($a_node) | |
| Check for deleteTree() compares a subtree of a given node by checking lft, rgt against parent relation. More... | |
| __getSubTreeByParentRelation ($a_node_id, &$parent_childs) | |
| @global type $ilDB More... | |
| __validateSubtrees (&$lft_childs, $parent_childs) | |
| moveTree ($a_source_id, $a_target_id, $a_location=self::POS_LAST_NODE) | |
| Move Tree Implementation. More... | |
| getRbacSubtreeInfo ($a_endnode_id) | |
| This method is used for change existing objects and returns all necessary information for this action. More... | |
| getSubTreeQuery ($a_node_id, $a_fields=array(), $a_types='', $a_force_join_reference=false) | |
| Get tree subtree query. More... | |
| getSubTreeFilteredByObjIds ($a_node_id, array $a_obj_ids, array $a_fields=array()) | |
| get all node ids in the subtree under specified node id, filter by object ids More... | |
| deleteNode ($a_tree_id, $a_node_id) | |
| lookupTrashedObjectTypes () | |
| Lookup object types in trash @global type $ilDB. More... | |
Static Public Member Functions | |
| static | _removeEntry ($a_tree, $a_child, $a_db_table="tree") |
| STATIC METHOD Removes a single entry from a tree. More... | |
Data Fields | |
| const | POS_LAST_NODE = -2 |
| const | POS_FIRST_NODE = -1 |
| const | RELATION_CHILD = 1 |
| const | RELATION_PARENT = 2 |
| const | RELATION_SIBLING = 3 |
| const | RELATION_EQUALS = 4 |
| const | RELATION_NONE = 5 |
| $ilias | |
| $log | |
| $root_id | |
| $tree_id | |
| $table_tree | |
| $table_obj_data | |
| $table_obj_reference | |
| $ref_pk | |
| $obj_pk | |
| $tree_pk | |
| $gap | |
Protected Member Functions | |
| fetchTranslationFromObjectDataCache ($a_obj_ids) | |
| Get translation data from object cache (trigger in object cache on preload) More... | |
Protected Attributes | |
| $depth_cache = array() | |
| $parent_cache = array() | |
| $in_tree_cache = array() | |
Private Attributes | |
| $tree_impl = null | |
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco.
Definition at line 24 of file class.ilTree.php.
| ilTree::__construct | ( | $a_tree_id, | |
$a_root_id = 0 |
|||
| ) |
Constructor @access public.
| integer | $a_tree_id | tree_id |
| integer | $a_root_id | root_id (optional) |
| InvalidArgumentException |
Reimplemented in ilWorkspaceTree.
Definition at line 148 of file class.ilTree.php.
References $DIC, $ilDB, ilLogLevel\DEBUG, ilLoggerFactory\getLogger(), and initTreeImplementation().
Here is the call graph for this function:| ilTree::__checkDelete | ( | $a_node | ) |
Check for deleteTree() compares a subtree of a given node by checking lft, rgt against parent relation.
@access private
| array | node data from ilTree::getNodeData() |
| ilInvalidTreeStructureException |
Definition at line 2494 of file class.ilTree.php.
References $DIC, $ilDB, $message, $query, $res, $row, __getSubTreeByParentRelation(), __validateSubtrees(), and getTreeImplementation().
Referenced by deleteTree().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::__getSubTreeByParentRelation | ( | $a_node_id, | |
| & | $parent_childs | ||
| ) |
@global type $ilDB
| type | $a_node_id | |
| type | $parent_childs |
| ilInvalidTreeStructureException |
Definition at line 2536 of file class.ilTree.php.
References $DIC, $ilDB, $message, $query, $res, $row, and __getSubTreeByParentRelation().
Referenced by __checkDelete(), and __getSubTreeByParentRelation().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::__isMainTree | ( | ) |
Check if operations are done on main tree.
@access private
Definition at line 2478 of file class.ilTree.php.
Referenced by addTree(), checkForParentType(), deleteTree(), getChilds(), getNodeData(), getPathFull(), getPathId(), getSubTree(), initTreeImplementation(), insertNode(), insertNodeFromTrash(), isCacheUsed(), isInTree(), isSaved(), moveTree(), preloadDeleted(), preloadDepthParent(), removeTree(), and renumber().
Here is the caller graph for this function:| ilTree::__renumber | ( | $node_id = 1, |
|
$i = 1 |
|||
| ) |
This method is private.
Always call ilTree->renumber() since it locks the tree table renumber left/right values and close the gaps in numbers (recursive) @access private
| integer | node_id where to start (usually the root node) |
| integer | first left value of start node (usually 1) |
Definition at line 2345 of file class.ilTree.php.
References $DIC, $i, $ilDB, $query, $res, __renumber(), and getChildIds().
Referenced by __renumber(), and renumber().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::__validateSubtrees | ( | & | $lft_childs, |
| $parent_childs | |||
| ) |
| $lft_childs | |
| $parent_childs |
| ilInvalidTreeStructureException |
Definition at line 2582 of file class.ilTree.php.
References $key, and $message.
Referenced by __checkDelete().
Here is the caller graph for this function:
|
static |
STATIC METHOD Removes a single entry from a tree.
The tree structure is NOT updated!
@access public
| integer | tree id |
| integer | child id |
| string | db_table name. default is 'tree' (optional) |
| InvalidArgumentException |
Definition at line 2446 of file class.ilTree.php.
References $DIC, $ilDB, $message, $query, $res, and ilLoggerFactory\getLogger().
Referenced by ilValidator\purgeObjects(), and ilSystemCheckTrash\removeSelectedFromSystem().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::addTree | ( | $a_tree_id, | |
$a_node_id = -1 |
|||
| ) |
create a new tree to do: ???
| integer | a_tree_id: obj_id of object where tree belongs to |
| integer | a_node_id: root node of tree (optional; default is tree_id itself) |
| InvalidArgumentException | @access public |
Definition at line 1717 of file class.ilTree.php.
References $DIC, $ilDB, $message, $query, $res, and __isMainTree().
Referenced by ilWorkspaceExplorer\__construct(), and ilWorkspaceTree\createTreeForUser().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::buildJoin | ( | ) |
build join depending on table settings @access private
Definition at line 441 of file class.ilTree.php.
Referenced by fetchPredecessorNode(), fetchSuccessorNode(), ilSCORMTree\getChilds(), getChilds(), getChildsByType(), getChildsByTypeFilter(), getChildSequenceNumber(), getNodeData(), getNodeDataByType(), getPathFull(), getSavedNodeData(), getSavedNodeObjIds(), and getSubTreeFilteredByObjIds().
Here is the caller graph for this function:| ilTree::checkForParentType | ( | $a_ref_id, | |
| $a_type, | |||
$a_exclude_source_check = false |
|||
| ) |
Check for parent type e.g check if a folder (ref_id 3) is in a parent course obj => checkForParentType(3,'crs');.
@access public
| integer | ref_id |
| string | type |
Definition at line 2391 of file class.ilTree.php.
References $a_type, $path, __isMainTree(), getPathFull(), isCacheUsed(), and isInTree().
Here is the call graph for this function:| ilTree::checkTree | ( | ) |
check consistence of tree all left & right values are checked if they are exists only once @access public
| ilInvalidTreeStructureException |
Definition at line 1268 of file class.ilTree.php.
| ilTree::checkTreeChilds | ( | $a_no_zero_child = true | ) |
check, if all childs of tree nodes exist in object table
| bool | $a_no_zero_child |
| ilInvalidTreeStructureException |
Definition at line 1304 of file class.ilTree.php.
References $DIC, $ilDB, $message, $obj_pk, $query, and $row.
| ilTree::deleteNode | ( | $a_tree_id, | |
| $a_node_id | |||
| ) |
Definition at line 2716 of file class.ilTree.php.
| ilTree::deleteTree | ( | $a_node | ) |
delete node and the whole subtree under this node @access public
| array | node_data of a node |
| InvalidArgumentException | |
| ilInvalidTreeStructureException |
Definition at line 941 of file class.ilTree.php.
References $DIC, $ilDB, __checkDelete(), __isMainTree(), ilLogLevel\ERROR, getTreeImplementation(), and resetInTreeCache().
Referenced by ilWorkspaceTree\cascadingDelete().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::fetchNodeData | ( | $a_row | ) |
get data of parent node from tree and object_data @access private
| object | db db result object containing node_data |
Definition at line 1499 of file class.ilTree.php.
References $data, $DIC, $ilBench, $ilDB, $key, $lng, $query, $res, $row, ilContainerReference\_lookupTitle(), ilObject\DESC_LENGTH, isCacheUsed(), and ilUtil\shortenText().
Referenced by fetchPredecessorNode(), fetchSuccessorNode(), ilSCORMTree\getChilds(), getChilds(), getChildsByType(), getChildsByTypeFilter(), getNodeData(), getNodeDataByType(), getParentNodeData(), getPathFull(), getSavedNodeData(), and getSubTree().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::fetchPredecessorNode | ( | $a_node_id, | |
$a_type = "" |
|||
| ) |
get node data of predecessor node
@access public
| integer | node id |
| InvalidArgumentException |
Definition at line 2250 of file class.ilTree.php.
References $a_type, $DIC, $ilDB, $message, $query, $res, $row, buildJoin(), and fetchNodeData().
Here is the call graph for this function:| ilTree::fetchSuccessorNode | ( | $a_node_id, | |
$a_type = "" |
|||
| ) |
get node data of successor node
@access public
| integer | node id |
| InvalidArgumentException |
Definition at line 2189 of file class.ilTree.php.
References $a_type, $DIC, $ilDB, $message, $query, $res, $row, buildJoin(), and fetchNodeData().
Here is the call graph for this function:
|
protected |
Get translation data from object cache (trigger in object cache on preload)
| array | $a_obj_ids | object ids |
Definition at line 1587 of file class.ilTree.php.
References $DIC, $id, and isCacheUsed().
Referenced by getChilds().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getChildIds | ( | $a_node | ) |
Get node child ids @global type $ilDB.
| type | $a_node |
Definition at line 483 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $row, and ilDBConstants\FETCHMODE_OBJECT.
Referenced by __renumber().
Here is the caller graph for this function:| ilTree::getChilds | ( | $a_node_id, | |
$a_order = "", |
|||
$a_direction = "ASC" |
|||
| ) |
get child nodes of given node @access public
| integer | node_id |
| string | sort order of returned childs, optional (possible values: 'title','desc','last_update' or 'type') |
| string | sort direction, optional (possible values: 'DESC' or 'ASC'; defalut is 'ASC') |
| InvalidArgumentException |
Reimplemented in ilSCORMTree.
Definition at line 511 of file class.ilTree.php.
References $DIC, $ilBench, $ilDB, $ilUser, $message, $query, $r, $res, $row, $rows, __isMainTree(), buildJoin(), fetchNodeData(), fetchTranslationFromObjectDataCache(), and isCacheUsed().
Referenced by getFilteredChilds(), and ilSkillTree\getMaxOrderNr().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getChildsByType | ( | $a_node_id, | |
| $a_type | |||
| ) |
get child nodes of given node by object type @access public
| integer | node_id |
| string | object type |
| InvalidArgumentException |
Definition at line 618 of file class.ilTree.php.
References $a_type, $DIC, $ilDB, $message, $query, $res, $row, buildJoin(), and fetchNodeData().
Here is the call graph for this function:| ilTree::getChildsByTypeFilter | ( | $a_node_id, | |
| $a_types, | |||
$a_order = "", |
|||
$a_direction = "ASC" |
|||
| ) |
get child nodes of given node by object type @access public
| integer | node_id |
| array | array of object type |
| InvalidArgumentException |
Definition at line 678 of file class.ilTree.php.
References $DIC, $ilDB, $message, $query, $res, $row, buildJoin(), fetchNodeData(), and ilUtil\quoteArray().
Referenced by ilSkillTree\getMaxOrderNr().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getChildSequenceNumber | ( | $a_node, | |
$type = "" |
|||
| ) |
get sequence number of node in sibling sequence @access public
| array | node |
| InvalidArgumentException |
Definition at line 2083 of file class.ilTree.php.
References $DIC, $ilDB, $message, $query, $res, $row, $type, and buildJoin().
Here is the call graph for this function:| ilTree::getDepth | ( | $a_node_id | ) |
return depth of a node in tree @access private
| integer | node_id of parent's node_id |
Definition at line 1400 of file class.ilTree.php.
| ilTree::getDepthCache | ( | ) |
Get depth cache.
Definition at line 262 of file class.ilTree.php.
References $depth_cache.
| ilTree::getFilteredChilds | ( | $a_filter, | |
| $a_node, | |||
$a_order = "", |
|||
$a_direction = "ASC" |
|||
| ) |
get child nodes of given node (exclude filtered obj_types) @access public
| array | objects to filter (e.g array('rolf')) |
| integer | node_id |
| string | sort order of returned childs, optional (possible values: 'title','desc','last_update' or 'type') |
| string | sort direction, optional (possible values: 'DESC' or 'ASC'; defalut is 'ASC') |
Definition at line 597 of file class.ilTree.php.
References getChilds().
Here is the call graph for this function:| ilTree::getFilteredSubTree | ( | $a_node_id, | |
$a_filter = array() |
|||
| ) |
get filtered subtree
get all subtree nodes beginning at a specific node excluding specific object types and their child nodes.
E.g getFilteredSubTreeNodes()
@access public
return
Definition at line 831 of file class.ilTree.php.
References getNodeData(), and getSubTree().
Here is the call graph for this function:| ilTree::getGap | ( | ) |
| ilTree::getLeftValue | ( | $a_node_id | ) |
get left value of given node @access public
| integer | node id |
| InvalidArgumentException |
Definition at line 2054 of file class.ilTree.php.
| ilTree::getMaximumDepth | ( | ) |
Return the current maximum depth in the tree @access public.
Definition at line 1381 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $row, and $table_tree.
| ilTree::getNodeData | ( | $a_node_id, | |
$a_tree_pk = null |
|||
| ) |
get all information of a node.
get data of a specific node from tree and object_data @access public
| integer | node id |
| InvalidArgumentException |
Definition at line 1457 of file class.ilTree.php.
References $DIC, $ilDB, $message, $query, $res, $row, $tree_id, $tree_pk, __isMainTree(), buildJoin(), ilLogLevel\ERROR, and fetchNodeData().
Referenced by ilWorkspaceTree\cascadingDelete(), ilLMTree\getCompleteTree(), getFilteredSubTree(), ilWorkspaceTree\getObjectsFromType(), getSubTreeFilteredByObjIds(), getSubTreeTypes(), and ilTestTaxonomyTree\initOrderedTreeIndex().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getNodeDataByType | ( | $a_type | ) |
get nodes by type
| integer | a_tree_id: obj_id of object where tree belongs to |
| integer | a_type_id: type of object @access public |
| InvalidArgumentException |
Definition at line 1768 of file class.ilTree.php.
References $a_type, $data, $DIC, $ilDB, $query, $res, $row, buildJoin(), ilLogLevel\ERROR, and fetchNodeData().
Here is the call graph for this function:| ilTree::getNodePath | ( | $a_endnode_id, | |
$a_startnode_id = 0 |
|||
| ) |
Returns the node path for the specified object reference.
Note: this function returns the same result as getNodePathForTitlePath, but takes ref-id's as parameters.
This function differs from getPathFull, in the following aspects:
@access public
| integer | node_id of endnode |
| integer | node_id of startnode (optional) |
Definition at line 1223 of file class.ilTree.php.
References $data, $DIC, $i, $ilDB, $query, $res, $row, and getPathId().
Referenced by getNodePathForTitlePath().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getNodePathForTitlePath | ( | $titlePath, | |
$a_startnode_id = null |
|||
| ) |
Converts a path consisting of object titles into a path consisting of tree nodes.
The comparison is non-case sensitive.
Note: this function returns the same result as getNodePath, but takes a title path as parameter.
@access public
| Array | Path array with object titles. e.g. array('ILIAS','English','Course A') |
| ref_id | Startnode of the relative path. Specify null, if the title path is an absolute path. Specify a ref id, if the title path is a relative path starting at this ref id. |
Definition at line 1109 of file class.ilTree.php.
References $DIC, $i, $ilDB, $log, $obj_pk, $r, $row, $rows, ilDBConstants\FETCHMODE_ASSOC, getNodePath(), ilStr\strToLower(), and UtfNormal\toNFC().
Here is the call graph for this function:| ilTree::getNodeTreeData | ( | $a_node_id | ) |
return all columns of tabel tree
| type | $a_node_id |
| InvalidArgumentException |
Definition at line 1426 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $row, ilLogLevel\ERROR, and ilDBConstants\FETCHMODE_ASSOC.
Referenced by getRelation(), getSubTreeQuery(), and moveToTrash().
Here is the caller graph for this function:| ilTree::getObjectDataTable | ( | ) |
Get object data table.
Definition at line 306 of file class.ilTree.php.
References $table_obj_data.
Referenced by getSubTreeFilteredByObjIds().
Here is the caller graph for this function:| ilTree::getParentCache | ( | ) |
Get parent cache.
Definition at line 271 of file class.ilTree.php.
References $parent_cache.
| ilTree::getParentId | ( | $a_node_id | ) |
get parent id of given node @access public
| integer | node id |
| InvalidArgumentException |
Definition at line 2024 of file class.ilTree.php.
References $DIC, $ilDB, $message, $query, $res, and $row.
Referenced by moveTree().
Here is the caller graph for this function:| ilTree::getParentNodeData | ( | $a_node_id | ) |
get data of parent node from tree and object_data @access public
| integer | node id |
| InvalidArgumentException |
Definition at line 1659 of file class.ilTree.php.
References $DIC, $ilDB, $ilLog, $query, $res, $row, and fetchNodeData().
Here is the call graph for this function:| ilTree::getPathFull | ( | $a_endnode_id, | |
$a_startnode_id = 0 |
|||
| ) |
get path from a given startnode to a given endnode if startnode is not given the rootnode is startnode.
This function chooses the algorithm to be used.
@access public
| integer | node_id of endnode |
| integer | node_id of startnode (optional) |
Definition at line 989 of file class.ilTree.php.
References $DIC, $i, $ilDB, $r, $row, __isMainTree(), buildJoin(), ilDBConstants\FETCHMODE_ASSOC, fetchNodeData(), and getPathId().
Referenced by checkForParentType(), ilTestTaxonomyTree\getPathNodes(), and ilSkillTree\getSkillTreePath().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getPathId | ( | $a_endnode_id, | |
$a_startnode_id = 0 |
|||
| ) |
get path from a given startnode to a given endnode if startnode is not given the rootnode is startnode @access public
| integer | node_id of endnode |
| integer | node_id of startnode (optional) |
| InvalidArgumentException |
Definition at line 1069 of file class.ilTree.php.
References __isMainTree(), ilLogLevel\ERROR, getTreeImplementation(), and isCacheUsed().
Referenced by getNodePath(), getPathFull(), and ilSkillTree\getTopParentNodeId().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getRbacSubtreeInfo | ( | $a_endnode_id | ) |
This method is used for change existing objects and returns all necessary information for this action.
The former use of ilTree::getSubtree needs to much memory.
| ref_id | ref_id of source node |
Definition at line 2651 of file class.ilTree.php.
References getTreeImplementation().
Here is the call graph for this function:| ilTree::getRelation | ( | $a_node_a, | |
| $a_node_b | |||
| ) |
Get relation of two nodes.
| int | $a_node_a | |
| int | $a_node_b |
Definition at line 458 of file class.ilTree.php.
References getNodeTreeData(), and getRelationOfNodes().
Referenced by isGrandChild().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getRelationOfNodes | ( | $a_node_a_arr, | |
| $a_node_b_arr | |||
| ) |
get relation of two nodes by node data
| array | $a_node_a_arr | |
| array | $a_node_b_arr |
Definition at line 472 of file class.ilTree.php.
References getTreeImplementation().
Referenced by getRelation().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getRootId | ( | ) |
get the root id of tree @access public
Definition at line 2152 of file class.ilTree.php.
References $root_id.
Referenced by ilWorkspaceTree\getObjectsFromType(), and ilTestTaxonomyTree\initOrderedTreeIndex().
Here is the caller graph for this function:| ilTree::getSavedNodeData | ( | $a_parent_id | ) |
get data saved/deleted nodes
| integer | id of parent object of saved object @access public |
| InvalidArgumentException |
Definition at line 1966 of file class.ilTree.php.
References $DIC, $ilDB, $message, $query, $res, $row, buildJoin(), and fetchNodeData().
Here is the call graph for this function:| ilTree::getSavedNodeObjIds | ( | array | $a_obj_ids | ) |
get object id of saved/deleted nodes
| array | object ids to check @access public |
Definition at line 1999 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $row, and buildJoin().
Here is the call graph for this function:| ilTree::getSubTree | ( | $a_node, | |
$a_with_data = true, |
|||
$a_type = "" |
|||
| ) |
get all nodes in the subtree under specified node
@access public
| array | node_data |
| boolean | with data: default is true otherwise this function return only a ref_id array |
| InvalidArgumentException |
Definition at line 873 of file class.ilTree.php.
References $a_type, $DIC, $ilDB, $query, $res, $row, __isMainTree(), ilLogLevel\ERROR, fetchNodeData(), and getTreeImplementation().
Referenced by ilWorkspaceTree\cascadingDelete(), ilLMTree\getCompleteTree(), getFilteredSubTree(), ilWorkspaceTree\getObjectsFromType(), and ilTestTaxonomyTree\initOrderedTreeIndex().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::getSubTreeFilteredByObjIds | ( | $a_node_id, | |
| array | $a_obj_ids, | ||
| array | $a_fields = array() |
||
| ) |
get all node ids in the subtree under specified node id, filter by object ids
| int | $a_node_id | |
| array | $a_obj_ids | |
| array | $a_fields |
Definition at line 2683 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $row, buildJoin(), getNodeData(), getObjectDataTable(), getTableReference(), getTreeImplementation(), and getTreeTable().
Here is the call graph for this function:| ilTree::getSubTreeIds | ( | $a_ref_id | ) |
Get all ids of subnodes.
| object | $a_ref_id |
Definition at line 858 of file class.ilTree.php.
References getTreeImplementation().
Here is the call graph for this function:| ilTree::getSubTreeQuery | ( | $a_node_id, | |
$a_fields = array(), |
|||
$a_types = '', |
|||
$a_force_join_reference = false |
|||
| ) |
Get tree subtree query.
| type | $a_node_id | |
| type | $a_types | |
| type | $a_force_join_reference |
Definition at line 2664 of file class.ilTree.php.
References getNodeTreeData(), and getTreeImplementation().
Here is the call graph for this function:| ilTree::getSubTreeTypes | ( | $a_node, | |
$a_filter = 0 |
|||
| ) |
get types of nodes in the subtree under specified node
@access public
| array | node_id |
| array | object types to filter e.g array('rolf') |
Definition at line 921 of file class.ilTree.php.
References getNodeData().
Here is the call graph for this function:| ilTree::getTableReference | ( | ) |
Get reference table if available.
Definition at line 323 of file class.ilTree.php.
References $table_obj_reference.
Referenced by getSubTreeFilteredByObjIds().
Here is the caller graph for this function:| ilTree::getTreeId | ( | ) |
get tree id @access public
Definition at line 2166 of file class.ilTree.php.
References $tree_id.
Referenced by ilWorkspaceExplorer\__construct().
Here is the caller graph for this function:| ilTree::getTreeImplementation | ( | ) |
Get tree implementation.
Definition at line 236 of file class.ilTree.php.
References $tree_impl.
Referenced by __checkDelete(), deleteTree(), getPathId(), getRbacSubtreeInfo(), getRelationOfNodes(), getSubTree(), getSubTreeFilteredByObjIds(), getSubTreeIds(), getSubTreeQuery(), insertNode(), moveToTrash(), moveTree(), and validateParentRelations().
Here is the caller graph for this function:| ilTree::getTreePk | ( | ) |
Get tree primary key.
Definition at line 315 of file class.ilTree.php.
References $tree_pk.
| ilTree::getTreeTable | ( | ) |
Get tree table name.
Definition at line 297 of file class.ilTree.php.
References $table_tree.
Referenced by getSubTreeFilteredByObjIds().
Here is the caller graph for this function:| ilTree::initLangCode | ( | ) |
Store user language.
This function is used by the "main" tree only (during initialisation).
Definition at line 280 of file class.ilTree.php.
| ilTree::initTreeImplementation | ( | ) |
Init tree implementation.
Definition at line 204 of file class.ilTree.php.
References $DIC, and __isMainTree().
Referenced by __construct(), and setTableNames().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::insertNode | ( | $a_node_id, | |
| $a_parent_id, | |||
$a_pos = IL_LAST_NODE, |
|||
$a_reset_deletion_date = false |
|||
| ) |
insert new node with node_id under parent node with parent_id @access public
| integer | node_id |
| integer | parent_id |
| integer | IL_LAST_NODE | IL_FIRST_NODE | node id of preceding child |
| InvalidArgumentException |
Definition at line 767 of file class.ilTree.php.
References $DIC, $GLOBALS, $ilDB, $message, __isMainTree(), ilObject\_resetDeletedDate(), ilLogLevel\ERROR, getTreeImplementation(), and isInTree().
Referenced by insertNodeFromTrash(), and ilWorkspaceTree\insertObject().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::insertNodeFromTrash | ( | $a_source_id, | |
| $a_target_id, | |||
| $a_tree_id, | |||
$a_pos = IL_LAST_NODE, |
|||
$a_reset_deleted_date = false |
|||
| ) |
Insert node from trash deletes trash entry.
If we have database query exceptions we could wrap insertNode in try/catch and rollback if the insert failed.
| type | $a_source_id | |
| type | $a_target_id | |
| type | $a_tree_id |
| InvalidArgumentException |
Definition at line 728 of file class.ilTree.php.
References $DIC, $ilDB, $query, __isMainTree(), ilLoggerFactory\getLogger(), IL_LAST_NODE, ilLogLevel\INFO, insertNode(), and isInTree().
Here is the call graph for this function:| ilTree::isCacheUsed | ( | ) |
Check if cache is active.
Reimplemented in ilLMTree.
Definition at line 253 of file class.ilTree.php.
References __isMainTree().
Referenced by checkForParentType(), fetchNodeData(), fetchTranslationFromObjectDataCache(), getChilds(), getPathId(), isInTree(), isSaved(), preloadDeleted(), and preloadDepthParent().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::isDeleted | ( | $a_node_id | ) |
This is a wrapper for isSaved() with a more useful name.
| int | $a_node_id |
Definition at line 1885 of file class.ilTree.php.
References isSaved().
Here is the call graph for this function:| ilTree::isGrandChild | ( | $a_startnode_id, | |
| $a_querynode_id | |||
| ) |
checks if a node is in the path of an other node @access public
| integer | object id of start node |
| integer | object id of query node |
Definition at line 1703 of file class.ilTree.php.
References getRelation(), and RELATION_PARENT.
Here is the call graph for this function:| ilTree::isInTree | ( | $a_node_id | ) |
get all information of a node.
get data of a specific node from tree and object_data @access public
| integer | node id |
Definition at line 1612 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, __isMainTree(), and isCacheUsed().
Referenced by checkForParentType(), insertNode(), and insertNodeFromTrash().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::isSaved | ( | $a_node_id | ) |
Use method isDeleted check if node is saved.
Definition at line 1895 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $row, __isMainTree(), and isCacheUsed().
Referenced by isDeleted().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::lookupTrashedObjectTypes | ( | ) |
Lookup object types in trash @global type $ilDB.
Definition at line 2743 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $row, and ilDBConstants\FETCHMODE_OBJECT.
| ilTree::moveToTrash | ( | $a_node_id, | |
$a_set_deleted = false |
|||
| ) |
Wrapper for saveSubTree.
| int | $a_node_id | |
| bool | $a_set_deleted |
| InvalidArgumentException |
Definition at line 1830 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $row, ilLogLevel\ERROR, ilDBConstants\FETCHMODE_ASSOC, getNodeTreeData(), getTreeImplementation(), and ilObject\setDeletedDates().
Referenced by saveSubTree().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::moveTree | ( | $a_source_id, | |
| $a_target_id, | |||
$a_location = self::POS_LAST_NODE |
|||
| ) |
Move Tree Implementation.
@access public
| int | source ref_id |
| int | target ref_id |
| int | location IL_LAST_NODE or IL_FIRST_NODE (IL_FIRST_NODE not implemented yet) |
Definition at line 2622 of file class.ilTree.php.
References $GLOBALS, __isMainTree(), getParentId(), and getTreeImplementation().
Here is the call graph for this function:| ilTree::preloadDeleted | ( | $a_node_ids | ) |
Preload deleted information.
| array | nodfe ids |
Definition at line 1931 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $row, __isMainTree(), and isCacheUsed().
Here is the call graph for this function:| ilTree::preloadDepthParent | ( | $a_node_ids | ) |
Preload depth/parent.
return
Definition at line 1040 of file class.ilTree.php.
References $DIC, $ilDB, $res, $row, __isMainTree(), and isCacheUsed().
Here is the call graph for this function:| ilTree::readRootId | ( | ) |
read root id from database
| root_id | @access public |
Definition at line 2130 of file class.ilTree.php.
References $DIC, $ilDB, $query, $res, $root_id, and $row.
Referenced by ilWorkspaceTree\__construct(), ilWorkspaceExplorer\__construct(), ilTestTaxonomyTree\__construct(), ilWorkspaceTree\cascadingDelete(), ilWorkspaceAccessHandler\checkAccessOfUser(), ilLMTree\getCompleteTree(), and ilSkillTree\getMaxOrderNr().
Here is the caller graph for this function:| ilTree::removeTree | ( | $a_tree_id | ) |
remove an existing tree
| integer | a_tree_id: tree to be removed |
| InvalidArgumentException |
Definition at line 1801 of file class.ilTree.php.
References $DIC, $ilDB, $query, __isMainTree(), and ilLogLevel\ERROR.
Here is the call graph for this function:| ilTree::renumber | ( | $node_id = 1, |
|
$i = 1 |
|||
| ) |
Wrapper for renumber.
This method locks the table tree (recursive) @access public
| integer | node_id where to start (usually the root node) |
| integer | first left value of start node (usually 1) |
Definition at line 2312 of file class.ilTree.php.
References $DIC, $i, $ilDB, __isMainTree(), and __renumber().
Here is the call graph for this function:| ilTree::resetInTreeCache | ( | ) |
Definition at line 339 of file class.ilTree.php.
Referenced by deleteTree().
Here is the caller graph for this function:| ilTree::saveSubTree | ( | $a_node_id, | |
$a_set_deleted = false |
|||
| ) |
Use the wrapper moveToTrash save subtree: delete a subtree (defined by node_id) to a new tree with $this->tree_id -node_id.
This is neccessary for undelete functionality
| integer | node_id |
| InvalidArgumentException |
Definition at line 1876 of file class.ilTree.php.
References moveToTrash().
Here is the call graph for this function:| ilTree::setObjectTablePK | ( | $a_column_name | ) |
set column containing primary key in object table @access public
| string | column name |
| InvalidArgumentException |
Definition at line 405 of file class.ilTree.php.
References $message.
Referenced by ilECSCmsTree\__construct(), and ilWorkspaceTree\__construct().
Here is the caller graph for this function:| ilTree::setReferenceTablePK | ( | $a_column_name | ) |
set column containing primary key in reference table @access public
| string | column name |
| InvalidArgumentException |
Definition at line 386 of file class.ilTree.php.
References $message.
Referenced by ilWorkspaceTree\__construct().
Here is the caller graph for this function:| ilTree::setRootId | ( | $a_root_id | ) |
Definition at line 2156 of file class.ilTree.php.
Referenced by ilWorkspaceExplorer\__construct(), and ilWorkspaceTree\createTreeForUser().
Here is the caller graph for this function:| ilTree::setTableNames | ( | $a_table_tree, | |
| $a_table_obj_data, | |||
$a_table_obj_reference = "" |
|||
| ) |
set table names The primary key of the table containing your object_data must be 'obj_id' You may use a reference table.
If no reference table is specified the given tree table is directly joined with the given object_data table. The primary key in object_data table and its foreign key in reference table must have the same name!
| string | table name of tree table |
| string | table name of object_data table |
| string | table name of object_reference table (optional) @access public |
| InvalidArgumentException |
Definition at line 361 of file class.ilTree.php.
References $message, and initTreeImplementation().
Referenced by ilSCORM2004Tree\__construct(), ilTaxonomyTree\__construct(), ilSCORMTree\__construct(), ilLMTree\__construct(), ilECSCmsTree\__construct(), ilWorkspaceTree\__construct(), ilBookmarkTree\__construct(), and ilSkillTree\__construct().
Here is the call graph for this function:
Here is the caller graph for this function:| ilTree::setTreeId | ( | $a_tree_id | ) |
set tree id @access public
Definition at line 2176 of file class.ilTree.php.
| ilTree::setTreeTablePK | ( | $a_column_name | ) |
set column containing primary key in tree table @access public
| string | column name |
| InvalidArgumentException |
Definition at line 424 of file class.ilTree.php.
References $message.
Referenced by ilSCORM2004Tree\__construct(), ilTaxonomyTree\__construct(), ilSCORMTree\__construct(), ilLMTree\__construct(), ilWorkspaceTree\__construct(), and ilSkillTree\__construct().
Here is the caller graph for this function:| ilTree::useCache | ( | $a_use = true | ) |
Use Cache (usually activated)
Definition at line 244 of file class.ilTree.php.
Referenced by ilLMTree\__construct(), and ilECSCmsTree\__construct().
Here is the caller graph for this function:| ilTree::validateParentRelations | ( | ) |
Validate parent relations of tree.
Definition at line 974 of file class.ilTree.php.
References getTreeImplementation().
Here is the call graph for this function:
|
protected |
Definition at line 134 of file class.ilTree.php.
Referenced by getDepthCache().
| ilTree::$gap |
Definition at line 132 of file class.ilTree.php.
Referenced by getGap().
| ilTree::$ilias |
Definition at line 42 of file class.ilTree.php.
|
protected |
Definition at line 136 of file class.ilTree.php.
| ilTree::$log |
Definition at line 50 of file class.ilTree.php.
Referenced by getNodePathForTitlePath().
| ilTree::$obj_pk |
Definition at line 99 of file class.ilTree.php.
Referenced by checkTreeChilds(), getNodePathForTitlePath(), and ilWorkspaceTree\lookupObjectId().
|
protected |
Definition at line 135 of file class.ilTree.php.
Referenced by getParentCache().
| ilTree::$ref_pk |
Definition at line 92 of file class.ilTree.php.
Referenced by ilWorkspaceTree\lookupNodeId().
| ilTree::$root_id |
Definition at line 57 of file class.ilTree.php.
Referenced by ilWorkspaceTree\cascadingDelete(), ilWorkspaceTree\createTreeForUser(), getRootId(), and readRootId().
| ilTree::$table_obj_data |
Definition at line 78 of file class.ilTree.php.
Referenced by getObjectDataTable().
| ilTree::$table_obj_reference |
Definition at line 85 of file class.ilTree.php.
Referenced by getTableReference().
| ilTree::$table_tree |
Definition at line 71 of file class.ilTree.php.
Referenced by getMaximumDepth(), and getTreeTable().
| ilTree::$tree_id |
Definition at line 64 of file class.ilTree.php.
Referenced by getNodeData(), and getTreeId().
|
private |
Definition at line 138 of file class.ilTree.php.
Referenced by getTreeImplementation().
| ilTree::$tree_pk |
Definition at line 106 of file class.ilTree.php.
Referenced by getNodeData(), and getTreePk().
| const ilTree::POS_FIRST_NODE = -1 |
Definition at line 27 of file class.ilTree.php.
Referenced by ilNestedSetTree\insertNode().
| const ilTree::POS_LAST_NODE = -2 |
Definition at line 26 of file class.ilTree.php.
| const ilTree::RELATION_CHILD = 1 |
Definition at line 30 of file class.ilTree.php.
Referenced by ilObjRole\adjustPermissions(), ilSoapUtils\findMappedReferenceForNode(), ilMaterializedPathTree\getRelation(), and ilNestedSetTree\getRelation().
| const ilTree::RELATION_EQUALS = 4 |
Definition at line 33 of file class.ilTree.php.
Referenced by ilObjRole\adjustPermissions(), ilMaterializedPathTree\getRelation(), and ilNestedSetTree\getRelation().
| const ilTree::RELATION_NONE = 5 |
Definition at line 34 of file class.ilTree.php.
Referenced by ilObjRole\adjustPermissions(), ilMaterializedPathTree\getRelation(), and ilNestedSetTree\getRelation().
| const ilTree::RELATION_PARENT = 2 |
Definition at line 31 of file class.ilTree.php.
Referenced by ilObjRole\adjustPermissions(), ilMaterializedPathTree\getRelation(), ilNestedSetTree\getRelation(), ilAdvancedMDRecord\isFilteredByScope(), and isGrandChild().
| const ilTree::RELATION_SIBLING = 3 |
Definition at line 32 of file class.ilTree.php.
Referenced by ilObjRole\adjustPermissions(), ilMaterializedPathTree\getRelation(), and ilNestedSetTree\getRelation().