ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
ilSkillTreeExplorerGUI Class Reference

Explorer class that works on tree objects (Services/Tree) More...

+ Inheritance diagram for ilSkillTreeExplorerGUI:
+ Collaboration diagram for ilSkillTreeExplorerGUI:

Public Member Functions

 __construct ($a_parent_obj, $a_parent_cmd)
 Constructor. More...
 
 getNodeContent ($a_node)
 Get node content. More...
 
 getNodeIcon ($a_node)
 Get node content. More...
 
 isNodeHighlighted ($a_node)
 Is node highlighted? More...
 
 getNodeHref ($a_node)
 Get href for node. More...
 
 isNodeClickable ($a_node)
 Is clickable. More...
 
- Public Member Functions inherited from ilVirtualSkillTreeExplorerGUI
 __construct ($a_id, $a_parent_obj, $a_parent_cmd)
 Constructor. More...
 
 setShowDraftNodes ($a_val)
 Set show draft nodes. More...
 
 getShowDraftNodes ()
 Get show draft nodes. More...
 
 setShowOutdatedNodes ($a_val)
 Set show outdated nodes. More...
 
 getShowOutdatedNodes ()
 Get show outdated nodes. More...
 
 getRootNode ()
 Get root node. More...
 
 getNodeId ($a_node)
 Get node id. More...
 
 getDomNodeIdForNodeId ($node_id)
 
 getNodeIdForDomNodeId ($a_dom_node_id)
 
 getChildsOfNode ($a_parent_id)
 Get childs of node. More...
 
 getNodeContent ($a_node)
 Get node content. More...
 
 getNodeIcon ($a_node)
 Get node icon. More...
 
 getNodeHref ($a_node)
 Get href for node. More...
 
 isNodeClickable ($a_node)
 Is clickable. More...
 
 getNodeIconAlt ($a_node)
 Get node icon alt attribute. 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 Attributes

 $lng
 
 $ctrl
 
- Protected Attributes inherited from ilVirtualSkillTreeExplorerGUI
 $lng
 
 $ctrl
 
 $show_draft_nodes = false
 
 $show_outdated_nodes = false
 
- 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...
 
- 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 ()
 
- Static Protected Attributes inherited from ilExplorerBaseGUI
static $js_tree_path = "./node_modules/jstree/dist/jstree.js"
 
static $js_tree_path_css = "./node_modules/jstree/dist/themes/default/style.min.css"
 
static $js_expl_path = "./Services/UIComponent/Explorer2/js/Explorer2.js"
 

Detailed Description

Explorer class that works on tree objects (Services/Tree)

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e

Definition at line 10 of file class.ilSkillTreeExplorerGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilSkillTreeExplorerGUI::__construct (   $a_parent_obj,
  $a_parent_cmd 
)

Constructor.

Definition at line 25 of file class.ilSkillTreeExplorerGUI.php.

References $DIC, ILIAS\GlobalScreen\Provider\__construct(), ilExplorerBaseGUI\setAjax(), ilVirtualSkillTreeExplorerGUI\setShowDraftNodes(), ilVirtualSkillTreeExplorerGUI\setShowOutdatedNodes(), and ilExplorerBaseGUI\setSkipRootNode().

26  {
27  global $DIC;
28 
29  $this->lng = $DIC->language();
30  $this->ctrl = $DIC->ctrl();
31  parent::__construct("skill_exp", $a_parent_obj, $a_parent_cmd);
32 
33  // node should be hidden #26849 (not not hidden, see discussion in #26813 and JF 6 Jan 2020)
34  $this->setSkipRootNode(false);
35  $this->setAjax(false);
36  $this->setShowDraftNodes(true);
37  $this->setShowOutdatedNodes(true);
38  }
setSkipRootNode($a_val)
Set skip root node.
setShowOutdatedNodes($a_val)
Set show outdated nodes.
global $DIC
Definition: goto.php:24
__construct(Container $dic, ilPlugin $plugin)
+ Here is the call graph for this function:

Member Function Documentation

◆ getNodeContent()

ilSkillTreeExplorerGUI::getNodeContent (   $a_node)

Get node content.

Parameters
array$a_nodenode data
Returns
string content

Definition at line 47 of file class.ilSkillTreeExplorerGUI.php.

References $lng, ilSkillTreeNode\_lookupSelfEvaluation(), ilSkillTemplateReference\_lookupTemplateId(), and ilSkillTreeNode\_lookupTitle().

48  {
49  $lng = $this->lng;
50 
51  $a_parent_id_parts = explode(":", $a_node["id"]);
52  $a_parent_skl_tree_id = $a_parent_id_parts[0];
53  $a_parent_skl_template_tree_id = $a_parent_id_parts[1];
54 
55  // title
56  $title = $a_node["title"];
57 
58  // root?
59  if ($a_node["type"] == "skrt") {
60  $title = $lng->txt("skmg_skills");
61  } else {
62  if ($a_node["type"] == "sktr") {
63  $tid = ilSkillTemplateReference::_lookupTemplateId($a_parent_skl_tree_id);
64  $title .= " (" . ilSkillTreeNode::_lookupTitle($tid) . ")";
65  }
66 
67  // @todo: fix this if possible for skill/tref_id combination
68  if (ilSkillTreeNode::_lookupSelfEvaluation($a_parent_skl_tree_id)) {
69  if ($a_parent_skl_template_tree_id == 0 || $a_node["type"] == "sktr") {
70  $title = "<u>" . $title . "</u>";
71  }
72  }
73  }
74 
75  if ($this->vtree->isOutdated($a_node["id"])) {
76  $title = "<span class='light'>" . $title . "</span>";
77  }
78 
79  return $title;
80  }
static _lookupSelfEvaluation($a_obj_id)
Lookup self evaluation.
static _lookupTemplateId($a_obj_id)
Lookup template ID.
static _lookupTitle($a_obj_id, $a_tref_id=0)
Lookup Title.
+ Here is the call graph for this function:

◆ getNodeHref()

ilSkillTreeExplorerGUI::getNodeHref (   $a_node)

Get href for node.

Parameters
mixed$a_nodenode object/array
Returns
string href attribute

Definition at line 150 of file class.ilSkillTreeExplorerGUI.php.

References $_GET, $ctrl, and $ret.

151  {
152  $ilCtrl = $this->ctrl;
153 
154  $id_parts = explode(":", $a_node["id"]);
155  if ($id_parts[1] == 0) {
156  // skill in main tree
157  $skill_id = $a_node["id"];
158  $tref_id = 0;
159  } else {
160  // skill in template
161  $tref_id = $id_parts[0];
162  $skill_id = $id_parts[1];
163  }
164 
165  $gui_class = array(
166  "skrt" => "ilskillrootgui",
167  "scat" => "ilskillcategorygui",
168  "sktr" => "ilskilltemplatereferencegui",
169  "skll" => "ilbasicskillgui",
170  "sktp" => "ilbasicskilltemplategui",
171  "sctp" => "ilskilltemplatecategorygui"
172  );
173 
174  $cmd = array(
175  "skrt" => "listSkills",
176  "scat" => "listItems",
177  "sktr" => "listItems",
178  "skll" => "edit",
179  "sktp" => "edit",
180  "sctp" => "listItems"
181  );
182 
183  $gui_class = $gui_class[$a_node["type"]];
184  $cmd = $cmd[$a_node["type"]];
185 
186  $ilCtrl->setParameterByClass($gui_class, "tref_id", $tref_id);
187  $ilCtrl->setParameterByClass($gui_class, "obj_id", $skill_id);
188  $ret = $ilCtrl->getLinkTargetByClass(["ilAdministrationGUI", "ilObjSkillManagementGUI", $gui_class], $cmd);
189  $ilCtrl->setParameterByClass($gui_class, "obj_id", $_GET["obj_id"]);
190  $ilCtrl->setParameterByClass($gui_class, "tref_id", $_GET["tref_id"]);
191 
192  return $ret;
193  }
$_GET["client_id"]
$ret
Definition: parser.php:6

◆ getNodeIcon()

ilSkillTreeExplorerGUI::getNodeIcon (   $a_node)

Get node content.

Parameters
array$a_nodenode data
Returns
string icon path

Definition at line 88 of file class.ilSkillTreeExplorerGUI.php.

References ilSkillTreeNode\getIconPath(), and ilUtil\getImagePath().

89  {
90  $a_parent_id_parts = explode(":", $a_node["id"]);
91  $a_parent_skl_tree_id = $a_parent_id_parts[0];
92  $a_parent_skl_template_tree_id = $a_parent_id_parts[1];
93 
94 
95  // root?
96  if ($a_node["type"] == "skrt") {
97  $icon = ilUtil::getImagePath("icon_scat.svg");
98  } else {
99  if (in_array($a_node["type"], array("skll", "scat", "sctr", "sktr", "sctp", "sktp"))) {
101  $a_parent_skl_tree_id,
102  $a_node["type"],
103  "",
104  ($this->vtree->isDraft($a_node["id"]) || $this->vtree->isOutdated($a_node["id"]))
105  );
106  } else {
107  $icon = ilUtil::getImagePath("icon_" . $a_node["type"] . ".svg");
108  }
109  }
110 
111  return $icon;
112  }
static getIconPath($a_obj_id, $a_type, $a_size="", $a_status=0)
Get icon path.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
+ Here is the call graph for this function:

◆ isNodeClickable()

ilSkillTreeExplorerGUI::isNodeClickable (   $a_node)

Is clickable.

Parameters
array$a_nodenode data
Returns
bool clickable true/false

Definition at line 201 of file class.ilSkillTreeExplorerGUI.php.

202  {
203  return true;
204  }

◆ isNodeHighlighted()

ilSkillTreeExplorerGUI::isNodeHighlighted (   $a_node)

Is node highlighted?

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

Definition at line 120 of file class.ilSkillTreeExplorerGUI.php.

References $_GET.

121  {
122  $id_parts = explode(":", $a_node["id"]);
123  if ($id_parts[1] == 0) {
124  // skill in main tree
125  $skill_id = $a_node["id"];
126  $tref_id = 0;
127  } else {
128  // skill in template
129  $tref_id = $id_parts[0];
130  $skill_id = $id_parts[1];
131  }
132 
133  if ($_GET["obj_id"] == "" && $a_node["type"] == "skrt") {
134  return true;
135  }
136 
137  if ($skill_id == $_GET["obj_id"] &&
138  ($_GET["tref_id"] == $tref_id)) {
139  return true;
140  }
141  return false;
142  }
$_GET["client_id"]

Field Documentation

◆ $ctrl

ilSkillTreeExplorerGUI::$ctrl
protected

Definition at line 20 of file class.ilSkillTreeExplorerGUI.php.

Referenced by getNodeHref().

◆ $lng

ilSkillTreeExplorerGUI::$lng
protected

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

Referenced by getNodeContent().


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