56 $this->
ctrl = $DIC->ctrl();
57 $this->
lng = $DIC->language();
58 $this->
help = $DIC[
"ilHelp"];
59 $this->obj_definition = $DIC[
"objDefinition"];
60 $this->tpl = $DIC->ui()->mainTemplate();
61 $this->
user = $DIC->user();
62 $this->
tabs = $DIC->tabs();
63 $this->
locator = $DIC[
"ilLocator"];
64 $ilCtrl = $DIC->ctrl();
65 $lng = $DIC->language();
77 $ilCtrl->saveParameter($this,
"wsp_id");
79 $this->node_id = $this->std_request->getWspId();
80 if (!$this->node_id || !$this->tree->isInTree($this->node_id)) {
81 $this->node_id = $this->tree->getRootId();
83 $this->tool_context = $DIC->globalScreen()->tool()->context();
92 if ($this->
settings->get(
"disable_personal_workspace")) {
96 $ilCtrl->setReturn($this,
"render");
98 if (!in_array($ilCtrl->getCmd(), [
"shareFilter"]) &&
99 !in_array(strtolower($ilCtrl->getCmdClass()), [
"ilobjectownershipmanagementgui"])
105 if ($this->std_request->getNewType()) {
106 $class_name = $objDefinition->getClassName(
107 $this->std_request->getNewType()
116 if (strtolower($ilCtrl->getNextClass($this)) !== strtolower(
"ilObj" . $class_name .
"GUI")) {
117 $ilCtrl->setCmdClass(
"ilObj" . $class_name .
"GUI");
122 $next_class = $ilCtrl->getNextClass();
124 $node = $this->tree->getNodeData($this->node_id);
125 $next_class =
"ilObj" . $objDefinition->getClassName($node[
"type"]) .
"GUI";
126 $ilCtrl->setCmdClass($next_class);
133 $class_path = $ilCtrl->lookupClassPath($next_class);
134 include_once($class_path);
135 $class_name = $ilCtrl->getClassForClasspath($class_path);
136 if ($this->std_request->getNewType()) {
138 $gui->setCreationMode();
142 $ilCtrl->forwardCommand($gui);
156 if (!$this->tree->getRootId()) {
157 $this->tree->createTreeForUser($user_id);
168 $root = $this->tree->getNodeData($this->node_id);
169 if ($root[
"type"] !=
"wfld" && $root[
"type"] !=
"wsrt") {
171 if (!$ilTabs->back_target) {
172 $owner = $this->tree->lookupOwner($this->node_id);
174 if ($owner ==
$ilUser->getId()) {
175 $parent = $this->tree->getParentNodeData($this->node_id);
176 if ($parent[
"wsp_id"]) {
177 if ($parent[
"type"] ==
"wsrt") {
178 $class =
"ilobjworkspacerootfoldergui";
180 $class =
"ilobjworkspacefoldergui";
182 $ilCtrl->setParameterByClass($class,
"wsp_id", $parent[
"wsp_id"]);
183 $ilTabs->setBackTarget(
185 $ilCtrl->getLinkTargetByClass($class,
"")
191 $ilCtrl->setParameterByClass(
"ilobjworkspacerootfoldergui",
"wsp_id",
"");
192 $ilCtrl->setParameterByClass(
"ilobjworkspacerootfoldergui",
"user", $owner);
193 $ilTabs->setBackTarget(
195 $ilCtrl->getLinkTargetByClass(
"ilobjworkspacerootfoldergui",
"share")
212 $ilLocator->clearItems();
215 $path = $this->tree->getPathFull($this->node_id);
217 foreach (
$path as $node) {
218 $obj_class =
"ilObj" . $objDefinition->getClassName($node[
"type"]) .
"GUI";
220 $ilCtrl->setParameter($this,
"wsp_id", $node[
"wsp_id"]);
222 switch ($node[
"type"]) {
224 $ilLocator->addItem($lng->
txt(
"mm_personal_and_shared_r"), $ilCtrl->getLinkTargetByClass($obj_class,
"render"));
228 case $objDefinition->isContainer($node[
"type"]):
229 $ilLocator->addItem($node[
"title"], $ilCtrl->getLinkTargetByClass($obj_class,
"render"));
233 $ilLocator->addItem($node[
"title"], $ilCtrl->getLinkTargetByClass($obj_class,
"edit"));
239 $ilCtrl->setParameter($this,
"wsp_id", $this->node_id);
GUI class for personal workspace.
setLocator()
Insert locator.
ContextServices $tool_context
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
renderLocator()
Build locator for current node.
loadLanguageModule(string $a_module)
Load language module.
ilObjectDefinition $obj_definition
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
StandardGUIRequest $std_request
parses the objects.xml it handles the xml-description of all ilias objects
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
ilGlobalTemplateInterface $tpl
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
__construct(Container $dic, ilPlugin $plugin)