34 protected \ilLanguage
$lng;
50 $this->
ctrl = $DIC->ctrl();
51 $this->error = $DIC[
"ilErr"];
52 $this->
lng = $DIC->language();
56 $this->admin_gui_request = $DIC->skills()->internal()->gui()->admin_request();
59 $this->requested_ref_id = $this->admin_gui_request->getRefId();
61 $this->tree_access_manager = $DIC->skills()->internal()->manager()->getTreeAccessManager($this->requested_ref_id);
62 $this->management_access_manager = $DIC->skills()->internal()->manager()->getManagementAccessManager($this->requested_ref_id);
65 public function createTree(
string $title,
string $description): void
67 if (!$this->management_access_manager->hasCreateTreePermission()) {
68 $this->error->raiseError($this->
lng->txt(
'no_permission'), $this->error->WARNING);
70 $tree_obj = new \ilObjSkillTree();
71 $tree_obj->setTitle($title);
72 $tree_obj->setDescription($description);
74 $tree_obj->createReference();
75 $tree_obj->putInTree($this->skmg_ref_id);
76 $tree_obj->setPermissions($this->skmg_ref_id);
78 $tree = $this->tree_factory->getTreeById($tree_obj->getId());
79 $root_node = new \ilSkillRoot();
80 $root_node->setTitle(
"Skill Tree Root Node");
82 $tree->addTree($tree_obj->getId(), $root_node->getId());
83 $this->
ctrl->setParameterByClass(
"ilobjskilltreegui",
"ref_id", $tree_obj->getRefId());
84 $this->
ctrl->setParameterByClass(
"ilobjskilltreegui",
"node_id", $tree->readRootId());
89 if (!$this->tree_access_manager->hasEditTreeSettingsPermission()) {
90 $this->error->raiseError($this->
lng->txt(
'no_permission'), $this->error->WARNING);
99 if (!$this->management_access_manager->hasCreateTreePermission()) {
100 $this->error->raiseError($this->
lng->txt(
'no_permission'), $this->error->WARNING);
107 foreach ($this->repository_tree->getChilds($this->skmg_ref_id) as
$c) {
108 if (
$c[
"type"] ==
"skee") {
109 yield new \ilObjSkillTree(
$c[
"child"]);
117 return new \ilObjSkillTree(
$ref_id);
delete()
delete object or referenced object (in the case of a referenced object, object data is only deleted i...
SkillAdminGUIRequest $admin_gui_request
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
createTree(string $title, string $description)
getSkillManagementRefId()
Get ref id of skill management administration node.
Request wrapper for guis in skill administration.
static _getAllReferences(int $id)
get all reference ids for object ID
deleteTree(\ilObjSkillTree $tree_obj)
SkillTreeFactory $tree_factory
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
__construct(int $skmg_ref_id, \ilTree $repository_tree, SkillTreeFactory $tree_factory)
setDescription(string $desc)
updateTree(\ilObjSkillTree $tree_obj, string $title, string $description)
SkillTreeAccess $tree_access_manager
SkillManagementAccess $management_access_manager