ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
ilLSTOCGUI Class Reference

Tree-GUI for ToC. More...

+ Inheritance diagram for ilLSTOCGUI:
+ Collaboration diagram for ilLSTOCGUI:

Public Member Functions

 __construct (LSUrlBuilder $url_builder, ilCtrl $il_ctrl)
 
 withStructure (string $json_structure)
 
 getRootNode ()
 Get root node.Please note that the class does not make any requirements how nodes are represented (array or object)
Returns
mixed root node object/array
More...
 
 getChildsOfNode ($a_parent_node_id)
 Get childs of node.
Parameters
string$a_parent_idparent node id
Returns
array childs
More...
 
 getNodeContent ($a_node)
 Get content of a node.
Parameters
mixed$a_nodenode array or object
Returns
string content of the node
More...
 
 getNodeId ($a_node)
 Get id of a node.
Parameters
mixed$a_nodenode array or object
Returns
string id of node
More...
 
 getNodeHref ($a_node)
 Get href for node.
Parameters
mixed$a_nodenode object/array
Returns
string href attribute
More...
 
 isNodeClickable ($a_node)
 Is node clickable?
Parameters
mixed$a_nodenode object/array
Returns
boolean node clickable true/false
More...
 
- Public Member Functions inherited from ilExplorerBaseGUI
 __construct ($a_expl_id, $a_parent_obj, $a_parent_cmd)
 Constructor. More...
 
 setChildLimit ($a_val)
 Set child limit. More...
 
 getChildLimit ()
 Get child limit. More...
 
 setSearchTerm ($a_val)
 Set search term. More...
 
 getSearchTerm ()
 Get search term. More...
 
 setMainTemplate ($a_main_tpl=null)
 Set main template (that is responsible for adding js/css) More...
 
 getRootNode ()
 Get root node. More...
 
 getChildsOfNode ($a_parent_node_id)
 Get childs of node. More...
 
 getNodeContent ($a_node)
 Get content of a node. More...
 
 getNodeId ($a_node)
 Get id of a node. More...
 
 getNodeHref ($a_node)
 Get href for node. More...
 
 nodeHasVisibleChilds ($a_node)
 Node has childs? More...
 
 sortChilds ($a_childs, $a_parent_node_id)
 Sort childs. More...
 
 getNodeIcon ($a_node)
 Get node icon path. More...
 
 getNodeIconAlt ($a_node)
 Get node icon alt attribute. More...
 
 getNodeTarget ($a_node)
 Get node target (frame) attribute. More...
 
 getNodeOnClick ($a_node)
 Get node onclick attribute. More...
 
 isNodeVisible ($a_node)
 Is node visible? More...
 
 isNodeHighlighted ($a_node)
 Is node highlighted? More...
 
 isNodeClickable ($a_node)
 Is node clickable? More...
 
 getId ()
 Get id of explorer element. More...
 
 setSkipRootNode ($a_val)
 Set skip root node. More...
 
 getSkipRootNode ()
 Get skip root node. More...
 
 setAjax ($a_val)
 Set ajax. More...
 
 getAjax ()
 Get ajax. More...
 
 setSecondaryHighlightedNodes ($a_val)
 Set secondary (background) highlighted nodes. More...
 
 getSecondaryHighlightedNodes ()
 Get secondary (background) highlighted nodes. More...
 
 setNodeOpen ($a_id)
 Set node to be opened (additional custom opened node, not standard expand behaviour) More...
 
 setSelectMode ($a_postvar, $a_multi=false)
 Set select mode (to deactivate, pass an empty string as postvar) More...
 
 setNodeSelected ($a_id)
 Set node to be opened (additional custom opened node, not standard expand behaviour) More...
 
 setOfflineMode ($a_val)
 Set offline mode. More...
 
 getOfflineMode ()
 Get offline mode. More...
 
 handleCommand ()
 Handle explorer internal command. More...
 
 getContainerId ()
 Get container id. More...
 
 openNode ()
 Open node. More...
 
 closeNode ()
 Close node. More...
 
 getNodeAsync ()
 Get node asynchronously. More...
 
 beforeRendering ()
 Before rendering. More...
 
 getOnLoadCode ()
 Get on load code. More...
 
 getHTML ()
 Get HTML. More...
 
 renderNode ($a_node, $tpl)
 Render node. More...
 
 renderChilds ($a_node_id, $tpl)
 Render childs. More...
 
 getDomNodeIdForNodeId ($a_node_id)
 Get DOM node id for node id. More...
 
 getNodeIdForDomNodeId ($a_dom_node_id)
 Get node id for dom node id. More...
 
 listItemStart ($tpl, $a_node)
 List item start. More...
 
 listItemEnd ($tpl)
 List item end. More...
 
 listStart ($tpl)
 List start. More...
 
 listEnd ($tpl)
 List end. More...
 
 isNodeOnclickEnabled ()
 
 setNodeOnclickEnabled ($nodeOnclickEnabled)
 
 isEnableDnd ()
 
 setEnableDnd ($enable_dnd)
 Enable Drag & Drop functionality. More...
 

Protected Member Functions

 addIds (array $node)
 
 buildLookup (array $node)
 
- Protected Member Functions inherited from ilExplorerBaseGUI
 isNodeSelectable ($a_node)
 Is node selectable? More...
 
 getNodeToggleOnClick ($a_node)
 Get onclick attribute for node toggling. More...
 
 getSelectOnClick ($a_node)
 Get onclick attribute for selecting radio/checkbox. More...
 
 isNodeOpen ($node_id)
 Get all open nodes. More...
 
 getJSTreePlugins ()
 

Protected Attributes

 $id = 'ls_toc'
 
 $structure
 
 $nodes = []
 
 $url_builder
 
 $counter = 0
 
- Protected Attributes inherited from ilExplorerBaseGUI
 $log
 
 $ctrl
 
 $tpl
 
 $skip_root_node = false
 
 $ajax = false
 
 $custom_open_nodes = array()
 
 $selected_nodes = array()
 
 $select_postvar = ""
 
 $offline_mode = false
 
 $sec_highl_nodes = array()
 
 $enable_dnd = false
 
 $search_term = ""
 
 $open_nodes = []
 
 $store
 
 $parent_obj
 
 $child_limit = 0
 
 $parent_cmd = ''
 

Additional Inherited Members

- Static Public Member Functions inherited from ilExplorerBaseGUI
static getLocalExplorerJsPath ()
 Get local path of explorer js. More...
 
static getLocalJsTreeJsPath ()
 Get local path of jsTree js. More...
 
static getLocalJsTreeCssPath ()
 Get local path of jsTree js. More...
 
static createHTMLExportDirs ($a_target_dir)
 Create html export directories. More...
 
static init ($a_main_tpl=null)
 Init JS. More...
 
- Static Protected Attributes inherited from ilExplorerBaseGUI
static $js_tree_path = "./libs/bower/bower_components/jstree/dist/jstree.js"
 
static $js_tree_path_css = "./libs/bower/bower_components/jstree/dist/themes/default/style.min.css"
 
static $js_expl_path = "./Services/UIComponent/Explorer2/js/Explorer2.js"
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilLSTOCGUI::__construct ( LSUrlBuilder  $url_builder,
ilCtrl  $il_ctrl 
)

Definition at line 21 of file class.ilLSTOCGUI.php.

24 {
25 $this->url_builder = $url_builder;
26 $this->ctrl = $il_ctrl; //ilExplorerBaseGUI needs ctrl...
27 $this->setSkipRootNode(false);
28 $this->setNodeOnclickEnabled(true);
29 }
setNodeOnclickEnabled($nodeOnclickEnabled)
setSkipRootNode($a_val)
Set skip root node.

References $url_builder, ilExplorerBaseGUI\setNodeOnclickEnabled(), and ilExplorerBaseGUI\setSkipRootNode().

+ Here is the call graph for this function:

Member Function Documentation

◆ addIds()

ilLSTOCGUI::addIds ( array  $node)
protected

Definition at line 43 of file class.ilLSTOCGUI.php.

43 : array
44 {
45 $node['_id'] = $this->counter;
46 $this->counter++;
47 if (array_key_exists('childs', $node)) {
48 foreach ($node['childs'] as $idx => $child) {
49 $node['childs'][$idx] = $this->addIds($child);
50 }
51 }
52 return $node;
53 }
addIds(array $node)

References $counter, and addIds().

Referenced by addIds().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ buildLookup()

ilLSTOCGUI::buildLookup ( array  $node)
protected

Definition at line 55 of file class.ilLSTOCGUI.php.

56 {
57 $this->nodes[$node['_id']] = $node;
58 if (array_key_exists('childs', $node)) {
59 foreach ($node['childs'] as $child) {
60 $this->buildLookup($child);
61 }
62 }
63 }
buildLookup(array $node)

References buildLookup().

Referenced by buildLookup().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getChildsOfNode()

ilLSTOCGUI::getChildsOfNode (   $a_parent_node_id)

Get childs of node.

Parameters
string$a_parent_idparent node id
Returns
array childs

Reimplemented from ilExplorerBaseGUI.

Definition at line 76 of file class.ilLSTOCGUI.php.

77 {
78 $parent_node = $this->nodes[$a_parent_node_id];
79 return $parent_node['childs'];
80 }

◆ getNodeContent()

ilLSTOCGUI::getNodeContent (   $a_node)

Get content of a node.

Parameters
mixed$a_nodenode array or object
Returns
string content of the node

Reimplemented from ilExplorerBaseGUI.

Definition at line 85 of file class.ilLSTOCGUI.php.

86 {
87 return $a_node['label'];
88 }

◆ getNodeHref()

ilLSTOCGUI::getNodeHref (   $a_node)

Get href for node.

Parameters
mixed$a_nodenode object/array
Returns
string href attribute

Reimplemented from ilExplorerBaseGUI.

Definition at line 101 of file class.ilLSTOCGUI.php.

102 {
103 return $this->url_builder->getHref($a_node['command'], $a_node['parameter']);
104 }

◆ getNodeId()

ilLSTOCGUI::getNodeId (   $a_node)

Get id of a node.

Parameters
mixed$a_nodenode array or object
Returns
string id of node

Reimplemented from ilExplorerBaseGUI.

Definition at line 93 of file class.ilLSTOCGUI.php.

94 {
95 return $a_node['_id'];
96 }

◆ getRootNode()

ilLSTOCGUI::getRootNode ( )

Get root node.Please note that the class does not make any requirements how nodes are represented (array or object)

Returns
mixed root node object/array

Reimplemented from ilExplorerBaseGUI.

Definition at line 68 of file class.ilLSTOCGUI.php.

69 {
70 return reset($this->nodes);
71 }

◆ isNodeClickable()

ilLSTOCGUI::isNodeClickable (   $a_node)

Is node clickable?

Parameters
mixed$a_nodenode object/array
Returns
boolean node clickable true/false

Reimplemented from ilExplorerBaseGUI.

Definition at line 109 of file class.ilLSTOCGUI.php.

110 {
111 return !is_null($a_node['parameter']);
112 }

◆ withStructure()

ilLSTOCGUI::withStructure ( string  $json_structure)

Definition at line 31 of file class.ilLSTOCGUI.php.

32 {
33 $clone = clone $this;
34 $clone->structure = $clone->addIds(
35 json_decode($json_structure, true)
36 );
37 $clone->buildLookup($clone->structure); //sets $this->nodes
38 $clone->open_nodes = array_keys($clone->nodes); //all open
39 return $clone;
40 }

Field Documentation

◆ $counter

ilLSTOCGUI::$counter = 0
protected

Definition at line 42 of file class.ilLSTOCGUI.php.

Referenced by addIds().

◆ $id

ilLSTOCGUI::$id = 'ls_toc'
protected

Definition at line 13 of file class.ilLSTOCGUI.php.

◆ $nodes

ilLSTOCGUI::$nodes = []
protected

Definition at line 15 of file class.ilLSTOCGUI.php.

◆ $structure

ilLSTOCGUI::$structure
protected

Definition at line 14 of file class.ilLSTOCGUI.php.

◆ $url_builder

ilLSTOCGUI::$url_builder
protected

Definition at line 19 of file class.ilLSTOCGUI.php.

Referenced by __construct().


The documentation for this class was generated from the following file: