19 declare(strict_types=1);
    53     protected \ILIAS\Data\Factory 
$df;
    56     protected int $id = 0;
    57     protected ?Profile\SkillProfile 
$profile = null;
   114         $this->export_factory = 
new ExportFactory();
   115         $this->usr = $DIC->user();
   116         $this->
ctrl = $DIC->ctrl();
   117         $this->
lng = $DIC->language();
   118         $this->
tabs = $DIC->tabs();
   119         $this->tpl = $DIC[
"tpl"];
   120         $this->
help = $DIC[
"ilHelp"];
   121         $this->
toolbar = $DIC->toolbar();
   122         $this->ui_fac = $DIC->ui()->factory();
   123         $this->ui_ren = $DIC->ui()->renderer();
   124         $this->df = new \ILIAS\Data\Factory();
   125         $this->request = $DIC->http()->request();
   126         $this->query = $DIC->http()->wrapper()->query();
   127         $this->tree_service = $DIC->skills()->tree();
   130         $this->admin_gui_request = $DIC->skills()->internal()->gui()->admin_request();
   131         $this->skill_factory = $DIC->skills()->internal()->factory();
   132         $this->profile_manager = $DIC->skills()->internal()->manager()->getProfileManager();
   133         $this->profile_completion_manager = $DIC->skills()->internal()->manager()->getProfileCompletionManager();
   134         $this->table_manager = $DIC->skills()->internal()->manager()->getTableManager();
   135         $this->usage_manager = $DIC->skills()->internal()->manager()->getUsageManager();
   137         $this->
ctrl->saveParameter($this, [
"sprof_id", 
"local_context"]);
   139         $this->requested_ref_id = $this->admin_gui_request->getRefId();
   140         $this->requested_sprof_id = $this->admin_gui_request->getSkillProfileId();
   141         $this->requested_profile_ids = $this->admin_gui_request->getProfileIds();
   142         $this->requested_local_context = $this->admin_gui_request->getLocalContext();
   143         $this->requested_cskill_id = $this->admin_gui_request->getCombinedSkillId();
   144         $this->requested_level_ass_ids = $this->admin_gui_request->getAssignedLevelIds();
   145         $this->requested_level_order = $this->admin_gui_request->getOrder();
   146         $this->requested_user_login = $this->admin_gui_request->getUserLogin();
   147         $this->requested_users = $this->admin_gui_request->getUsers();
   148         $this->requested_user_ids = $this->admin_gui_request->getUserIds();
   149         $this->requested_table_profile_action = $this->admin_gui_request->getTableProfileAction();
   150         $this->requested_table_profile_ids = $this->admin_gui_request->getTableProfileIds();
   151         $this->requested_level_id = $this->admin_gui_request->getLevelId();
   153         if ($this->requested_sprof_id > 0) {
   158             $this->
profile = $this->profile_manager->getProfile($this->
id);
   159             if ($this->skill_tree_id == 0) {
   160                 $this->skill_tree_id = $this->
profile->getSkillTreeId();
   163                 $this->local_context = 
true;
   173         $cmd = $ilCtrl->getCmd(
"listProfiles");
   174         $next_class = $ilCtrl->getNextClass();
   175         switch ($next_class) {
   176             case 'ilrepositorysearchgui':
   178                 $user_search->setTitle($lng->
txt(
'skmg_add_user_to_profile'));
   179                 $user_search->setCallback($this, 
'assignUser');
   180                 $user_search->setRoleCallback($this, 
'assignRole');
   184                 $ilCtrl->setReturn($this, 
'showUsers');
   185                 $ret = $ilCtrl->forwardCommand($user_search);
   189                 if (in_array($cmd, array(
"listProfiles", 
"create", 
"edit", 
"save", 
"update",
   190                     "deleteProfiles", 
"showLevels", 
"assignLevel",
   191                     "assignLevelSelectSkill", 
"updateLevelOfSelectedSkill",
   192                     "assignLevelToProfile", 
"updateLevelOfProfile",
   193                     "confirmLevelAssignmentRemoval", 
"removeLevelAssignments",
   194                     "showUsers", 
"assignUser", 
"assignRole",
   195                     "confirmUserRemoval", 
"removeUsers", 
"exportProfiles", 
"showImportForm",
   196                     "importProfiles", 
"saveLevelOrder", 
"createLocal", 
"saveLocal",
   197                     "listLocalProfiles", 
"showLevelsWithLocalContext", 
"showObjects"))) {
   204     public function setTabs(
string $a_active): void
   216         $ilTabs->clearTargets();
   217         $ilHelp->setScreenIdComponent(
"skmg_prof");
   219         $ilCtrl->clearParameterByClass(self::class, 
"sprof_id");
   220         $ilTabs->setBackTarget(
   221             $lng->
txt(
"skmg_skill_profiles"),
   222             $ilCtrl->getLinkTarget($this, 
"")
   224         $ilCtrl->setParameter($this, 
"sprof_id", $this->requested_sprof_id);
   229             $lng->
txt(
"skmg_assigned_skill_levels"),
   230             $ilCtrl->getLinkTarget($this, 
"showLevels")
   236             $lng->
txt(
"skmg_assigned_users"),
   237             $ilCtrl->getLinkTarget($this, 
"showUsers")
   243             $lng->
txt(
"skmg_assigned_objects"),
   244             $ilCtrl->getLinkTarget($this, 
"showObjects")
   248         if ($this->skill_tree_access_manager->hasManageProfilesPermission()) {
   251                 $lng->
txt(
"settings"),
   252                 $ilCtrl->getLinkTarget($this, 
"edit")
   256         $ilTabs->activateTab($a_active);
   266         if ($this->skill_tree_access_manager->hasManageProfilesPermission()) {
   267             $ilToolbar->addButton(
   268                 $lng->
txt(
"skmg_add_profile"),
   269                 $ilCtrl->getLinkTarget($this, 
"create")
   272             $ilToolbar->addButton(
   274                 $ilCtrl->getLinkTarget($this, 
"showImportForm")
   278         $table = $this->table_manager->getProfileTable($this->requested_ref_id, $this->skill_tree_id)->getComponent();
   280         $tpl->
setContent($this->ui_ren->render($table));
   295         $tpl->
setContent($this->ui_ren->render($form));
   307             $lng->
txt(
"back_to_course"),
   312         $tpl->
setContent($this->ui_ren->render($form));
   321         $tpl->
setContent($this->ui_ren->render($form));
   336         $ti = $this->ui_fac->input()->field()->text($lng->
txt(
"title"))
   337                            ->withRequired(
true);
   340         $desc = $this->ui_fac->input()->field()->textarea($lng->
txt(
"description"));
   344         if ($a_mode == 
"createLocal") {
   346             $trees = $this->tree_service->getObjSkillTrees();
   347             foreach ($trees as $tree) {
   348                 $options[$tree->getId()] = $tree->getTitle();
   350             $se = $this->ui_fac->input()->field()->select($lng->
txt(
"skmg_skill_tree"), $options)->withRequired(
true);
   355                             ->withAcceptedMimeTypes([MimeType::IMAGE__PNG, MimeType::IMAGE__JPEG]);
   360         if ($this->skill_tree_access_manager->hasManageProfilesPermission()) {
   361             if ($a_mode == 
"create") {
   362                 $sec_des = $lng->
txt(
"skmg_add_profile");
   363                 $form_action = $ilCtrl->getFormAction($this, 
"save");
   364             } elseif ($a_mode == 
"createLocal") {
   365                 $sec_des = $lng->
txt(
"skmg_add_local_profile");
   366                 $form_action = $ilCtrl->getFormAction($this, 
"saveLocal");
   369                 $ti = $ti->withValue($this->
profile->getTitle());
   370                 $desc = $desc->withValue($this->
profile->getDescription());
   371                 $img = $this->
profile->getImageId() ? $img->withValue([$this->
profile->getImageId()]) : $img;
   373                 $sec_des = $lng->
txt(
"skmg_edit_profile");
   374                 $form_action = $ilCtrl->getFormAction($this, 
"update");
   379             $section_basic = $this->ui_fac->input()->field()->section(
   380                 [
"title" => $ti, 
"description" => $desc],
   384             $section_basic = $this->ui_fac->input()->field()->section(
   385                 [
"title" => $ti, 
"description" => $desc, 
"skill_tree" => $se],
   389         $section_advanced = $this->ui_fac->input()->field()->section([
"image" => $img], $lng->
txt(
"skmg_form_presentation"));
   391         $form = $this->ui_fac->input()->container()->form()->standard(
   393             [
"section_basic" => $section_basic, 
"section_advanced" => $section_advanced]
   405         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   410         if ($this->request->getMethod() == 
"POST"   411             && $this->request->getQueryParams()[
"profile"] == 
"profile_settings") {
   412             $form = $form->withRequest($this->request);
   413             $result = $form->getData();
   414             if (is_null($result)) {
   415                 $tpl->
setContent($this->ui_ren->render($form));
   418             $profile = $this->skill_factory->profile()->profile(
   420                 $result[
"section_basic"][
"title"],
   421                 $result[
"section_basic"][
"description"],
   422                 $this->skill_tree_id,
   423                 $result[
"section_advanced"][
"image"][0] ?? 
""   425             $this->profile_manager->createProfile($profile);
   427             $this->tpl->setOnScreenMessage(
'success', $lng->
txt(
"msg_obj_modified"), 
true);
   428             $ilCtrl->redirect($this, 
"listProfiles");
   430         $ilCtrl->redirect($this, 
"listProfiles");
   439         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   444         if ($this->request->getMethod() == 
"POST"   445             && $this->request->getQueryParams()[
"profile"] == 
"profile_settings") {
   446             $form = $form->withRequest($this->request);
   447             $result = $form->getData();
   448             if (is_null($result)) {
   449                 $tpl->
setContent($this->ui_ren->render($form));
   452             $profile = $this->skill_factory->profile()->profile(
   454                 $result[
"section_basic"][
"title"],
   455                 $result[
"section_basic"][
"description"],
   456                 (
int) $result[
"section_basic"][
"skill_tree"],
   457                 $result[
"section_advanced"][
"image"][0] ?? 
"",
   458                 $this->requested_ref_id
   460             $new_profile = $this->profile_manager->createProfile($profile);
   461             $this->profile_manager->addRoleToProfile(
   462                 $new_profile->getId(),
   465             $this->tpl->setOnScreenMessage(
'success', $lng->
txt(
"msg_obj_modified"), 
true);
   466             $ilCtrl->redirectByClass(
"ilcontskilladmingui", 
"listProfiles");
   468         $ilCtrl->redirectByClass(
"ilcontskilladmingui", 
"listProfiles");
   477         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   482         if ($this->request->getMethod() == 
"POST"   483             && $this->request->getQueryParams()[
"profile"] == 
"profile_settings") {
   484             $form = $form->withRequest($this->request);
   485             $result = $form->getData();
   486             if (is_null($result)) {
   487                 $tpl->
setContent($this->ui_ren->render($form));
   490             $profile = $this->skill_factory->profile()->profile(
   492                 $result[
"section_basic"][
"title"],
   493                 $result[
"section_basic"][
"description"],
   494                 $this->
profile->getSkillTreeId(),
   495                 $result[
"section_advanced"][
"image"][0] ?? 
"",
   498             $this->profile_manager->updateProfile($profile);
   500             $this->tpl->setOnScreenMessage(
'info', $lng->
txt(
"msg_obj_modified"), 
true);
   501             $ilCtrl->redirect($this, 
"edit");
   503         $ilCtrl->redirect($this, 
"listProfiles");
   512         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   516         if (!empty($this->requested_profile_ids)) {
   517             foreach ($this->requested_profile_ids as $i) {
   518                 $this->profile_manager->delete($i);
   519                 $this->profile_completion_manager->deleteEntriesForProfile($i);
   521             $this->tpl->setOnScreenMessage(
'info', $lng->
txt(
"msg_obj_modified"), 
true);
   524         $ilCtrl->redirect($this, 
"listProfiles");
   540         if ($this->skill_tree_access_manager->hasManageProfilesPermission()) {
   541             $ilToolbar->addButton(
   542                 $lng->
txt(
"skmg_assign_level"),
   543                 $ilCtrl->getLinkTarget($this, 
"assignLevel")
   565             $lng->
txt(
"back_to_course"),
   569         if ($this->skill_tree_access_manager->hasManageProfilesPermission()) {
   571                 $lng->
txt(
"skmg_assign_level"),
   578             "showLevelsWithLocalContext",
   598         $this->tpl->setOnScreenMessage(
'info', $lng->
txt(
"skmg_select_skill_level_assign"));
   600         $ilTabs->clearTargets();
   602             $ilTabs->setBackTarget(
   604                 $ilCtrl->getLinkTarget($this, 
"showLevelsWithLocalContext")
   607             $ilTabs->setBackTarget(
   609                 $ilCtrl->getLinkTarget($this, 
"showLevels")
   618             "assignLevelSelectSkill",
   622         if (!$exp->handleCommand()) {
   638         $ilCtrl->saveParameter($this, 
"cskill_id");
   644         $ilTabs->clearTargets();
   646             $ilTabs->setBackTarget(
   648                 $ilCtrl->getLinkTarget($this, 
"showLevelsWithLocalContext")
   651             $ilTabs->setBackTarget(
   653                 $ilCtrl->getLinkTarget($this, 
"showLevels")
   657         $id_parts = explode(
":", $this->requested_cskill_id);
   658         $skill_id = (
int) $id_parts[0];
   660         $level_data = $skill->getLevelData();
   663         foreach ($level_data as $levels) {
   664             $ilCtrl->setParameterByClass(self::class, 
"level_id", $levels[
"id"]);
   665             $items[] = $this->ui_fac->item()->standard($levels[
"title"])->withMainAction(
   666                 $this->ui_fac->link()->standard(
   667                     $lng->
txt(
"skmg_assign_level"),
   668                     $ilCtrl->getLinkTarget($this, $update ? 
"updateLevelOfProfile" : 
"assignLevelToProfile")
   671             $ilCtrl->clearParameterByClass(self::class, 
"level_id");
   674         $list = $this->ui_fac->panel()->listing()->standard(
   675             $skill->getTitle() . 
", " . $lng->
txt(
"skmg_skill_levels"),
   677                 $this->ui_fac->item()->group(
"", $items)
   681         $tpl->
setContent($this->ui_ren->render($list));
   695         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   700             $this->profile_manager->updateSkillLevel($level);
   702             $parts = explode(
":", $this->requested_cskill_id);
   703             $level = $this->skill_factory->profile()->profileLevel(
   708                 $this->profile_manager->getMaxLevelOrderNr($this->
profile->getId()) + 10
   710             $this->profile_manager->addSkillLevel($level);
   714         $this->profile_completion_manager->writeCompletionEntryForAllAssignedUsersOfProfile($this->
profile->getId());
   716         $this->tpl->setOnScreenMessage(
'success', $lng->
txt(
"msg_obj_modified"), 
true);
   718             $ilCtrl->redirect($this, 
"showLevelsWithLocalContext");
   720         $ilCtrl->redirect($this, 
"showLevels");
   725         $parts = explode(
":", $this->requested_cskill_id);
   726         $level = $this->profile_manager->getSkillLevel($this->
profile->getId(), (
int) 
$parts[0], (
int) 
$parts[1]);
   727         $level_updated = $this->skill_factory->profile()->profileLevel(
   728             $level->getProfileId(),
   729             $level->getBaseSkillId(),
   751         if (empty($this->requested_level_ass_ids)) {
   752             $this->tpl->setOnScreenMessage(
'info', $lng->
txt(
"no_checkbox"), 
true);
   754                 $ilCtrl->redirect($this, 
"showLevelsWithLocalContext");
   756             $ilCtrl->redirect($this, 
"showLevels");
   759             $cgui->setFormAction($ilCtrl->getFormAction($this));
   760             $cgui->setHeaderText($lng->
txt(
"skmg_confirm_remove_level_ass"));
   762                 $cgui->setCancel($lng->
txt(
"cancel"), 
"showLevelsWithLocalContext");
   764                 $cgui->setCancel($lng->
txt(
"cancel"), 
"showLevels");
   766             $cgui->setConfirm($lng->
txt(
"remove"), 
"removeLevelAssignments");
   768             foreach ($this->requested_level_ass_ids as $i) {
   769                 $id_arr = explode(
":", $i);
   787         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   791         if (!empty($this->requested_level_ass_ids)) {
   792             foreach ($this->requested_level_ass_ids as $i) {
   793                 $id_arr = explode(
":", $i);
   794                 $level = $this->skill_factory->profile()->profileLevel(
   801                 $this->profile_manager->removeSkillLevel($level);
   803             $this->profile_manager->fixSkillOrderNumbering($this->
profile->getId());
   807         $this->profile_completion_manager->writeCompletionEntryForAllAssignedUsersOfProfile($this->
profile->getId());
   810             $ilCtrl->redirect($this, 
"showLevelsWithLocalContext");
   812         $ilCtrl->redirect($this, 
"showLevels");
   821         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   826         $this->profile_manager->updateSkillOrder($this->
profile->getId(), $order);
   828         $this->tpl->setOnScreenMessage(
'success', $lng->
txt(
"msg_obj_modified"), 
true);
   830             $ilCtrl->redirect($this, 
"showLevelsWithLocalContext");
   832         $ilCtrl->redirect($this, 
"showLevels");
   842         if ($this->skill_tree_access_manager->hasManageProfilesPermission() && !$this->
profile->getRefId() > 0) {
   847                     'auto_complete_name' => $lng->
txt(
'user'),
   848                     'submit_name' => $lng->
txt(
'skmg_assign_user')
   852             $ilToolbar->addSeparator();
   854             $button = $this->ui_fac->button()->standard(
   855                 $this->
lng->txt(
"skmg_add_assignment"),
   856                 $this->
ctrl->getLinkTargetByClass(
"ilRepositorySearchGUI", 
"start")
   858             $ilToolbar->addComponent($button);
   863         $table = $this->table_manager->getProfileUserAssignmentTable(
   865             $this->skill_tree_access_manager
   867         $tpl->
setContent($this->ui_ren->render($table));
   875         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   882             $this->profile_manager->addUserToProfile($this->
profile->getId(), 
$user_id);
   884             $this->profile_completion_manager->writeCompletionEntryForSingleProfileOfUser(
$user_id, $this->
profile->getId());
   885             $this->tpl->setOnScreenMessage(
'success', $lng->
txt(
"msg_obj_modified"), 
true);
   890         if (!empty($users)) {
   891             foreach ($users as $id) {
   893                     $this->profile_manager->addUserToProfile($this->
profile->getId(), 
$id);
   895                     $this->profile_completion_manager->writeCompletionEntryForSingleProfileOfUser($id, $this->
profile->getId());
   898             $this->tpl->setOnScreenMessage(
'success', $lng->
txt(
"msg_obj_modified"), 
true);
   901         $ilCtrl->redirect($this, 
"showUsers");
   909         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   914         foreach ($role_ids as $id) {
   916                 $this->profile_manager->addRoleToProfile($this->
profile->getId(), 
$id);
   917                 $this->profile_completion_manager->writeCompletionEntryForRole($id, $this->
profile->getId());
   922             $this->tpl->setOnScreenMessage(
'success', $lng->
txt(
"msg_obj_modified"), 
true);
   925         $ilCtrl->redirect($this, 
"showUsers");
   933         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   937         if (!empty($this->requested_user_ids)) {
   938             foreach ($this->requested_user_ids as $i) {
   942                         $this->profile_manager->removeUserFromProfile($this->
profile->getId(), $i);
   946                         $this->profile_manager->removeRoleFromProfile($this->
profile->getId(), $i);
   953             $this->tpl->setOnScreenMessage(
"success", $lng->
txt(
"msg_obj_modified"), 
true);
   955         $ilCtrl->redirect($this, 
"showUsers");
   964         $objects = $this->usage_manager->getAssignedObjectsForSkillProfile($this->
profile->getId());
   966         $table = $this->table_manager->getAssignedObjectsTable(
   973         $tpl->
setContent($this->ui_ren->render($table));
   976     public function exportProfiles(): 
void   981         if (!$this->skill_tree_access_manager->hasManageProfilesPermission()) {
   985         $profiles_to_export = [];
   986         if ($this->requested_table_profile_action === 
"exportProfiles"   987             && !empty($this->requested_table_profile_ids)
   988             && $this->requested_table_profile_ids[0] === 
"ALL_OBJECTS"   990             $profiles = $this->skill_tree_id
   991                 ? $this->profile_manager->getProfilesForSkillTree($this->skill_tree_id)
   992                 : $this->profile_manager->getProfilesForAllSkillTrees();
   993             foreach ($profiles as $profile) {
   994                 $profiles_to_export[] = $profile->getId();
   996         } elseif ($this->requested_table_profile_action === 
"exportProfiles") {
   997             $profiles_to_export = 
array_map(
"intval", $this->requested_table_profile_ids);
  1000         if (empty($profiles_to_export)) {
  1001             $this->tpl->setOnScreenMessage(
'info', $lng->
txt(
"no_checkbox"), 
true);
  1002             $ilCtrl->redirect($this, 
"");
  1006         $configs = $this->export_factory->consumer()->exportConfig()->allExportConfigs();
  1007         $config = $configs->getElementByComponent(
'components/ILIAS/Skill');
  1009         $config->setSelectedProfiles($profiles_to_export);
  1010         $config->setSkillTreeId($this->skill_tree_id);
  1013         $obj->setRefId($this->requested_ref_id);
  1014         $obj->setType(
'skee');
  1016         $obj->setType(
'skmg');
  1017         $this->export_factory->consumer()->handler()->createStandardExportByObject($this->usr->getId(), $obj, $configs);
  1023         $ilCtrl->redirectByClass(array(
"ilobjskilltreegui", 
"ilexportgui"), 
"");
  1043         $fi->setRequired(
true);
  1044         $form->addItem($fi);
  1047         $form->addCommandButton(
"importProfiles", $lng->
txt(
"import"));
  1048         $form->addCommandButton(
"", $lng->
txt(
"cancel"));
  1050         $form->setTitle($lng->
txt(
"import"));
  1051         $form->setFormAction($ilCtrl->getFormAction($this));
  1063         if ($form->checkInput()) {
  1065             $conf = $imp->getConfig(
"components/ILIAS/Skill");
  1066             $conf->setSkillTreeId($this->skill_tree_id);
  1067             $imp->importEntity($_FILES[
"import_file"][
"tmp_name"], $_FILES[
"import_file"][
"name"], 
"skmg", 
"components/ILIAS/Skill");
  1069             $this->tpl->setOnScreenMessage(
'success', $lng->
txt(
"msg_obj_modified"), 
true);
  1070             $ilCtrl->redirect($this, 
"");
  1072             $form->setValuesByPost();
 TableGUI class for skill profile levels. 
 
getLinkTargetByClass( $a_class, string $a_cmd=null, string $a_anchor=null, bool $is_async=false, bool $has_xml_style=false)
 
redirectByClass( $a_class, string $a_cmd=null, string $a_anchor=null, bool $is_async=false)
 
SkillTreeAccess $skill_tree_access_manager
 
array $requested_profile_ids
 
Class ilSkillProfileUploadHandlerGUI. 
 
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...
 
Profile SkillProfile $profile
 
if($clientAssertionType !='urn:ietf:params:oauth:client-assertion-type:jwt-bearer'|| $grantType !='client_credentials') $parts
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
Interface Observer  Contains several chained tasks and infos about them. 
 
Request wrapper for guis in skill administration. 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
confirmLevelAssignmentRemoval()
 
static _lookupTitle(int $a_obj_id, int $a_tref_id=0)
 
static _lookupId($a_user_str)
 
setTabs(string $a_active)
 
showLevelsWithLocalContext()
 
static lookupLevelTitle(int $a_id)
 
array $requested_level_ass_ids
 
assignLevelSelectSkill(bool $update=false)
Output level table for profile assignment. 
 
static getDefaultMemberRole(int $a_ref_id)
 
SkillAdminGUIRequest $admin_gui_request
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
Table TableManager $table_manager
 
initProfileForm(string $a_mode="edit")
 
ilGlobalTemplateInterface $tpl
 
SkillTreeService $tree_service
 
assignRole(array $role_ids)
 
updateLevelOfSelectedSkill()
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
setContent(string $a_html)
Sets content for standard template. 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
string $requested_user_login
 
string $requested_cskill_id
 
setBackTarget(string $a_title, string $a_target, string $a_frame="")
 
ServerRequestInterface $request
 
array $requested_table_profile_ids
 
static fillAutoCompleteToolbar(object $parent_object, ilToolbarGUI $toolbar=null, array $a_options=[], bool $a_sticky=false)
array( auto_complete_name = $lng->txt('user'), auto_complete_size = 15, user_type = array(ilCoursePar...
 
__construct(SkillTreeAccess $skill_tree_access_manager, int $skill_tree_id=0)
 
clearTargets()
clear all targets 
 
assignLevelToProfile(Profile\SkillProfileLevel $level=null)
 
setTitle(string $a_title, bool $hidden=false)
Sets title in standard template. 
 
bool $requested_local_context
 
Skill internal factory service. 
 
DataFactory $data_factory
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
string $requested_table_profile_action
 
ArrayBasedRequestWrapper $query
 
Explorer class that works on tree objects (Services/Tree) 
 
getLinkTarget(object $a_gui_obj, string $a_cmd=null, string $a_anchor=null, bool $is_async=false, bool $has_xml_style=false)
 
Profile SkillProfileManager $profile_manager
 
ExportFactoryInterface $export_factory
 
setDescription(string $a_descr)
Sets description below title in standard template. 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
setParameter(object $a_gui_obj, string $a_parameter, $a_value)
 
SkillInternalFactoryService $skill_factory
 
static _lookupType(int $id, bool $reference=false)
 
Profile SkillProfileCompletionManager $profile_completion_manager
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
static stripSlashesArray(array $a_arr, bool $a_strip_html=true, string $a_allow="")
 
array $requested_level_order
 
array $requested_user_ids
 
Usage SkillUsageManager $usage_manager
 
Class ArrayBasedRequestWrapper.