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

Explorer for selecting a personal workspace item. More...

+ Inheritance diagram for ilWorkspaceExplorerGUI:
+ Collaboration diagram for ilWorkspaceExplorerGUI:

Public Member Functions

 __construct ($a_user_id, $a_parent_obj, $a_parent_cmd, $a_select_gui, $a_select_cmd, $a_select_par="sel_wsp_obj")
 Constructor. More...
 
 setLinkToNodeClass ($a_val)
 Set link to node class. More...
 
 getLinkToNodeClass ()
 Get link to node class. More...
 
 setActivateHighlighting ($a_val)
 Set activate highlighting. More...
 
 getActivateHighlighting ()
 Get activate highlighting. More...
 
 setSelectableTypes ($a_val)
 Set selectable types. More...
 
 getSelectableTypes ()
 Get selectable types. More...
 
 setCustomLinkTarget ($a_val)
 Set custom link target. More...
 
 getCustomLinkTarget ()
 Get custom link target. More...
 
 getNodeHref ($a_node)
 Get href for node. More...
 
 getNodeContent ($a_node)
 Get node content. More...
 
 isNodeClickable ($a_node)
 Is clickable. More...
 
 isNodeSelectable ($a_node)
 Is selectable. More...
 
 getNodeIcon ($a_node)
 get image path (may be overwritten by derived classes) More...
 
 isNodeHighlighted ($a_node)
 Is node highlighted? More...
 
- Public Member Functions inherited from ilTreeExplorerGUI
 __construct ($a_expl_id, $a_parent_obj, $a_parent_cmd, $a_tree)
 Constructor. More...
 
 getTree ()
 Get tree. More...
 
 setOrderField ($a_val, $a_numeric=false)
 Set order field. More...
 
 getOrderField ()
 Get order field. More...
 
 setTypeWhiteList ($a_val)
 Set type white list. More...
 
 getTypeWhiteList ()
 Get type white list. More...
 
 setTypeBlackList ($a_val)
 Set type black list. More...
 
 getTypeBlackList ()
 Get type black list. More...
 
 setPreloadChilds ($a_val)
 Set preload childs. More...
 
 getPreloadChilds ()
 Get preload childs. More...
 
 getSuccessorNode ($a_node_id, $a_type="")
 Get successor node (currently only(!) based on lft/rgt tree values) More...
 
 getChildsOfNode ($a_parent_node_id)
 Get childs of node. More...
 
 getNodeId ($a_node)
 Get id for node. More...
 
 getNodeIconAlt ($a_node)
 Get node icon alt attribute. More...
 
 getRootNode ()
 Get root node. More...
 
 setRootId ($a_root)
 
 setPathOpen ($a_id)
 Set node path to be opened. More...
 
 getHTML ($new=false)
 Get HTML. More...
 
 getChildren ($node, $environment=null)
 Get a list of records (that list can also be empty).Each record will be relayed to $this->build to retrieve a Node. Also, each record will be asked for Sub-Nodes using this function.
Returns
array
More...
 
 build (\ILIAS\UI\Component\Tree\Node\Factory $factory, $record, $environment=null)
 
 getTreeLabel ()
 
 getTreeComponent ()
 Get Tree UI. More...
 
 toggleExplorerNodeState ()
 Should be called by an ilCtrl-enabled command class if a tree node toggle action should be processed. 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...
 
- Public Member Functions inherited from ILIAS\UI\Component\Tree\TreeRecursion
 build (Node\Factory $factory, $record, $environment=null)
 Build and return a Node. More...
 

Protected Attributes

 $ctrl
 
 $lng
 
 $link_to_node_class = false
 
 $custom_link_target = ""
 
 $select_gui = null
 
 $select_cmd = ""
 
 $select_par = ""
 
 $selectable_types = array()
 
 $activate_highlighting = false
 
- Protected Attributes inherited from ilTreeExplorerGUI
 $lng
 
 $httpRequest
 
 $tree = null
 
 $tree_label = ""
 
 $order_field = ""
 
 $order_field_numeric = false
 
 $type_white_list = array()
 
 $type_black_list = array()
 
 $childs = array()
 
 $preloaded = false
 
 $preload_childs = false
 
 $root_node_data = null
 
 $all_childs = array()
 
 $ui
 
- 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 ilTreeExplorerGUI
 preloadChilds ()
 Preload childs. More...
 
 matches ($node)
 Does a node match a search term (or is search term empty) More...
 
 getRootId ()
 
 createNode (\ILIAS\UI\Component\Tree\Node\Factory $factory, $record)
 Creates at tree node, can be overwritten in derivatives if another node type should be used. More...
 
 getNodeStateToggleCmdClasses ($record)
 Should return an array of ilCtrl-enabled command classes which should be used to build the URL for the expand/collapse actions applied on a tree node. More...
 
 render ()
 Render tree. 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 for selecting a personal workspace item.

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.ilWorkspaceExplorerGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilWorkspaceExplorerGUI::__construct (   $a_user_id,
  $a_parent_obj,
  $a_parent_cmd,
  $a_select_gui,
  $a_select_cmd,
  $a_select_par = "sel_wsp_obj" 
)

Constructor.

Definition at line 60 of file class.ilWorkspaceExplorerGUI.php.

References $DIC, ILIAS\GlobalScreen\Provider\__construct(), ilExplorerBaseGUI\setAjax(), ilTreeExplorerGUI\setPathOpen(), ilExplorerBaseGUI\setSkipRootNode(), and ilTreeExplorerGUI\setTypeWhiteList().

61  {
62  global $DIC;
63 
64  $this->ctrl = $DIC->ctrl();
65  $this->lng = $DIC->language();
66 
67  $this->select_gui = (is_object($a_select_gui))
68  ? strtolower(get_class($a_select_gui))
69  : $a_select_gui;
70  $this->select_cmd = $a_select_cmd;
71  $this->select_par = $a_select_par;
72 
73  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceTree.php";
74  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceAccessHandler.php";
75 
76  $this->tree = new ilWorkspaceTree($a_user_id);
77  $this->root_id = $this->tree->readRootId();
78  $this->access_handler = new ilWorkspaceAccessHandler($this->tree);
79 
80  parent::__construct("wsp_sel", $a_parent_obj, $a_parent_cmd, $this->tree);
81  $this->setSkipRootNode(false);
82  $this->setAjax(true);
83  $this->setPathOpen($this->root_id);
84 
85  $this->setTypeWhiteList(array("wsrt", "wfld"));
86  }
setSkipRootNode($a_val)
Set skip root node.
Access handler for personal workspace.
setPathOpen($a_id)
Set node path to be opened.
Tree handler for personal workspace.
setTypeWhiteList($a_val)
Set type white list.
global $DIC
Definition: goto.php:24
__construct(Container $dic, ilPlugin $plugin)
+ Here is the call graph for this function:

Member Function Documentation

◆ getActivateHighlighting()

ilWorkspaceExplorerGUI::getActivateHighlighting ( )

Get activate highlighting.

Returns
bool activate highlighting

Definition at line 123 of file class.ilWorkspaceExplorerGUI.php.

References $activate_highlighting.

Referenced by isNodeHighlighted().

+ Here is the caller graph for this function:

◆ getCustomLinkTarget()

ilWorkspaceExplorerGUI::getCustomLinkTarget ( )

Get custom link target.

Returns
string custom link target

Definition at line 163 of file class.ilWorkspaceExplorerGUI.php.

References $custom_link_target.

Referenced by getNodeHref().

+ Here is the caller graph for this function:

◆ getLinkToNodeClass()

ilWorkspaceExplorerGUI::getLinkToNodeClass ( )

Get link to node class.

Returns
bool link to gui class of node

Definition at line 103 of file class.ilWorkspaceExplorerGUI.php.

References $link_to_node_class.

Referenced by getNodeHref().

+ Here is the caller graph for this function:

◆ getNodeContent()

ilWorkspaceExplorerGUI::getNodeContent (   $a_node)

Get node content.

Parameters
array
Returns

Definition at line 220 of file class.ilWorkspaceExplorerGUI.php.

References $lng.

221  {
222  $lng = $this->lng;
223 
224  if ($a_node["child"] == $this->tree->getRootId()) {
225  return $lng->txt("personal_resources");
226  }
227 
228  return $a_node["title"];
229  }

◆ getNodeHref()

ilWorkspaceExplorerGUI::getNodeHref (   $a_node)

Get href for node.

Parameters
mixed$a_nodenode object/array
Returns
string href attribute

Definition at line 174 of file class.ilWorkspaceExplorerGUI.php.

References $_GET, $ctrl, ilExplorerBaseGUI\$parent_obj, $ret, $select_gui, getCustomLinkTarget(), and getLinkToNodeClass().

175  {
176  if ($this->select_postvar != "") {
177  return "";
178  }
179  if ($this->getCustomLinkTarget() != "") {
180  return $this->getCustomLinkTarget() . "&" . $this->select_par . "=" . $a_node["child"];
181  }
182 
183  $ilCtrl = $this->ctrl;
184 
185  $target_class = $this->select_gui;
186 
187  if ($this->getLinkToNodeClass()) {
188  switch ($a_node["type"]) {
189  case "wsrt":
190  $target_class = "ilobjworkspacerootfoldergui";
191  break;
192  case "wfld":
193  $target_class = "ilobjworkspacefoldergui";
194  break;
195  }
196  }
197 
198  if (is_object($this->parent_obj)) {
199  $target_path = [get_class($this->parent_obj)];
200  } else {
201  $target_path = $this->parent_obj;
202  }
203  $target_path = $target_path + [$target_class];
204  $ilCtrl->setParameterByClass($target_class, $this->select_par, $a_node["child"]);
205  //$ret = $ilCtrl->getLinkTargetByClass(["ilPersonalWorkspaceGUI", $target_class], $this->select_cmd);
206  $ret = $ilCtrl->getLinkTargetByClass($target_path, $this->select_cmd);
207  $ilCtrl->setParameterByClass($target_class, $this->select_par, $_GET[$this->select_par]);
208 
209  //$ret = ILIAS_HTTP_PATH . "/" . $ret;
210 
211  return $ret;
212  }
getCustomLinkTarget()
Get custom link target.
$_GET["client_id"]
getLinkToNodeClass()
Get link to node class.
$ret
Definition: parser.php:6
+ Here is the call graph for this function:

◆ getNodeIcon()

ilWorkspaceExplorerGUI::getNodeIcon (   $a_node)

get image path (may be overwritten by derived classes)

Definition at line 262 of file class.ilWorkspaceExplorerGUI.php.

References ilUtil\getImagePath().

263  {
264  $t = $a_node["type"];
265  if (in_array($t, array("sktr"))) {
266  return ilUtil::getImagePath("icon_skll.svg");
267  }
268  return ilUtil::getImagePath("icon_" . $t . ".svg");
269  }
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:

◆ getSelectableTypes()

ilWorkspaceExplorerGUI::getSelectableTypes ( )

Get selectable types.

Returns
array selectable types

Definition at line 143 of file class.ilWorkspaceExplorerGUI.php.

References $selectable_types.

Referenced by isNodeClickable(), and isNodeSelectable().

+ Here is the caller graph for this function:

◆ isNodeClickable()

ilWorkspaceExplorerGUI::isNodeClickable (   $a_node)

Is clickable.

Parameters

Definition at line 237 of file class.ilWorkspaceExplorerGUI.php.

References getSelectableTypes().

238  {
239  if (in_array($a_node["type"], $this->getSelectableTypes())) {
240  return true;
241  }
242  return false;
243  }
getSelectableTypes()
Get selectable types.
+ Here is the call graph for this function:

◆ isNodeHighlighted()

ilWorkspaceExplorerGUI::isNodeHighlighted (   $a_node)

Is node highlighted?

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

Definition at line 277 of file class.ilWorkspaceExplorerGUI.php.

References $_GET, getActivateHighlighting(), and ilTreeExplorerGUI\getRootId().

278  {
279  if ($this->getActivateHighlighting() &&
280  ($a_node["child"] == $_GET["wsp_id"] || $_GET["wsp_id"] == "" && $a_node["child"] == $this->getRootId())) {
281  return true;
282  }
283  return false;
284  }
$_GET["client_id"]
getActivateHighlighting()
Get activate highlighting.
+ Here is the call graph for this function:

◆ isNodeSelectable()

ilWorkspaceExplorerGUI::isNodeSelectable (   $a_node)

Is selectable.

Parameters

Definition at line 251 of file class.ilWorkspaceExplorerGUI.php.

References getSelectableTypes().

252  {
253  if (in_array($a_node["type"], $this->getSelectableTypes())) {
254  return true;
255  }
256  return false;
257  }
getSelectableTypes()
Get selectable types.
+ Here is the call graph for this function:

◆ setActivateHighlighting()

ilWorkspaceExplorerGUI::setActivateHighlighting (   $a_val)

Set activate highlighting.

Parameters
bool$a_valactivate highlighting

Definition at line 113 of file class.ilWorkspaceExplorerGUI.php.

114  {
115  $this->activate_highlighting = $a_val;
116  }

◆ setCustomLinkTarget()

ilWorkspaceExplorerGUI::setCustomLinkTarget (   $a_val)

Set custom link target.

Parameters
string$a_valcustom link target

Definition at line 153 of file class.ilWorkspaceExplorerGUI.php.

Referenced by ilPCFileListGUI\insertFromWorkspace(), and ilPCFileItemGUI\insertFromWorkspace().

154  {
155  $this->custom_link_target = $a_val;
156  }
+ Here is the caller graph for this function:

◆ setLinkToNodeClass()

ilWorkspaceExplorerGUI::setLinkToNodeClass (   $a_val)

Set link to node class.

Parameters
bool$a_vallink to gui class of node

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

94  {
95  $this->link_to_node_class = $a_val;
96  }

◆ setSelectableTypes()

ilWorkspaceExplorerGUI::setSelectableTypes (   $a_val)

Set selectable types.

Parameters
array$a_valselectable types

Definition at line 133 of file class.ilWorkspaceExplorerGUI.php.

134  {
135  $this->selectable_types = $a_val;
136  }

Field Documentation

◆ $activate_highlighting

ilWorkspaceExplorerGUI::$activate_highlighting = false
protected

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

Referenced by getActivateHighlighting().

◆ $ctrl

ilWorkspaceExplorerGUI::$ctrl
protected

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

Referenced by getNodeHref().

◆ $custom_link_target

ilWorkspaceExplorerGUI::$custom_link_target = ""
protected

Definition at line 30 of file class.ilWorkspaceExplorerGUI.php.

Referenced by getCustomLinkTarget().

◆ $link_to_node_class

ilWorkspaceExplorerGUI::$link_to_node_class = false
protected

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

Referenced by getLinkToNodeClass().

◆ $lng

ilWorkspaceExplorerGUI::$lng
protected

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

Referenced by getNodeContent().

◆ $select_cmd

ilWorkspaceExplorerGUI::$select_cmd = ""
protected

Definition at line 40 of file class.ilWorkspaceExplorerGUI.php.

◆ $select_gui

ilWorkspaceExplorerGUI::$select_gui = null
protected

Definition at line 35 of file class.ilWorkspaceExplorerGUI.php.

Referenced by getNodeHref().

◆ $select_par

ilWorkspaceExplorerGUI::$select_par = ""
protected

Definition at line 45 of file class.ilWorkspaceExplorerGUI.php.

◆ $selectable_types

ilWorkspaceExplorerGUI::$selectable_types = array()
protected

Definition at line 50 of file class.ilWorkspaceExplorerGUI.php.

Referenced by getSelectableTypes().


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