3 declare(strict_types=1);
    47         SkillService\SkillProfileService $profile_service = null,
    48         SkillService\SkillPersonalService $personal_service = null,
    57             ?: $DIC->skills()->internalContainer()->repo()->getContainerSkillRepo();
    59             ?: $DIC->skills()->internalContainer()->repo()->getContainerMemberSkillRepo();
    60         $this->tree_service = (
$tree_service) ?: $DIC->skills()->tree();
    63         $this->factory_service = (
$factory_service) ?: $DIC->skills()->internalContainer()->factory();
    73         $this->cont_skill_repo->add($this->cont_obj_id, $skill_id, $tref_id);
    78         $this->cont_skill_repo->remove($this->cont_obj_id, $skill_id, $tref_id);
    86         $skills_as_array = [];
    88             $skills_as_array[$skill->getBaseSkillId() . 
"-" . $skill->getTrefId()] = [
    89                 "skill_id" => $skill->getBaseSkillId(),
    90                 "tref_id" => $skill->getTrefId()
    94         $vtree = $this->tree_service->getGlobalVirtualSkillTree();
    95         $skills_ordered = $vtree->getOrderedNodeset($skills_as_array, 
"skill_id", 
"tref_id");
    97         $skills_obj_ordered = [];
    98         foreach ($skills_ordered as $s) {
    99             $skills_obj_ordered[] = $this->factory_service->containerSkill()->skill(
   106         return $skills_obj_ordered;
   114         return $this->cont_skill_repo->getAll($this->cont_obj_id);
   124         $this->cont_member_skill_repo->add($this->cont_obj_id, $user_id, $skill_id, $tref_id, $level_id);
   129         $this->cont_member_skill_repo->remove($this->cont_obj_id, $user_id, $skill_id, $tref_id);
   138             (
string) $this->cont_obj_id
   141         $this->cont_member_skill_repo->removeAll($this->cont_obj_id, $user_id);
   150             (
string) $this->cont_obj_id
   163                 (string) $this->cont_obj_id
   166             if ($l->getTrefId() > 0) {
   167                 $this->personal_service->addPersonalSkill($user_id, $l->getTrefId());
   169                 $this->personal_service->addPersonalSkill($user_id, $l->getBaseSkillId());
   174         $this->profile_service->writeCompletionEntryForAllProfiles($user_id);
   176         $this->cont_member_skill_repo->publish($this->cont_obj_id, $user_id);
   183         return $this->cont_member_skill_repo->getPublished($this->cont_obj_id, $user_id);
   196         $vtree = $this->tree_service->getGlobalVirtualSkillTree();
   197         $skill_levels_ordered = $vtree->getOrderedNodeset($skill_levels, 
"skill_id", 
"tref_id");
   199         $skill_levels_obj_ordered = [];
   200         foreach ($skill_levels_ordered as $s) {
   201             $skill_levels_obj_ordered[] = $this->factory_service->containerSkill()->memberSkill(
   211         return $skill_levels_obj_ordered;
   219         return $this->cont_member_skill_repo->getAll($this->cont_obj_id, $user_id);
   224         return $this->cont_member_skill_repo->getLevel($this->cont_obj_id, $user_id, $skill_id, $tref_id);
   241         $skills_as_array = [];
   242         foreach ($skills as $s) {
   243             $skills_as_array[] = [
   244                 "base_skill_id" => $s->getBaseSkillId(),
   245                 "tref_id" => $s->getTrefId(),
   246                 "title" => $s->getTitle(),
   247                 "profile_title" => ($s->getProfile()) ? $s->getProfile()->getTitle() : null
   252         $vtree = $this->tree_service->getGlobalVirtualSkillTree();
   253         $skills = $vtree->getOrderedNodeset($skills_as_array, 
"base_skill_id", 
"tref_id");
   267             $s_skills[$s->getBaseSkillId() . 
"-" . $s->getTrefId()] = $s;
   272             $p_skills[$ps->getBaseSkillId() . 
"-" . $ps->getTrefId()] = $ps;
   275         $skills = array_merge($s_skills, $p_skills);
   286             return $this->factory_service->containerSkill()->skill(
   305         if ($this->skmg_settings->getLocalAssignmentOfProfiles()) {
   306             foreach ($this->profile_service->getGlobalProfilesOfRole($cont_member_role_id) as $gp) {
   307                 $sklvs = $this->profile_service->getSkillLevels($gp->getId());
   308                 foreach ($sklvs as $s) {
   309                     $p_skills[] = $this->factory_service->containerSkill()->skill(
   310                         $s->getBaseSkillId(),
   321         if ($this->skmg_settings->getAllowLocalProfiles()) {
   322             foreach ($this->profile_service->getLocalProfilesOfRole($cont_member_role_id) as $lp) {
   323                 $sklvs = $this->profile_service->getSkillLevels($lp->getId());
   324                 foreach ($sklvs as $s) {
   325                     $p_skills[] = $this->factory_service->containerSkill()->skill(
   326                         $s->getBaseSkillId(),
 
removeSkillFromContainer(int $skill_id, int $tref_id)
 
getMemberSkillsForContainer(int $user_id)
 
removeAllMemberSkillsFromContainer(int $user_id)
 
ContainerMemberSkillDBRepository $cont_member_skill_repo
 
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...
 
addSkillForContainer(int $skill_id, int $tref_id)
 
static _lookupTitle(int $a_obj_id, int $a_tref_id=0)
 
static removeAllUserSkillLevelStatusOfObject(int $a_user_id, int $a_trigger_obj_id, bool $a_self_eval=false, string $a_unique_identifier="")
 
static getDefaultMemberRole(int $a_ref_id)
 
ContainerSkillDBRepository $cont_skill_repo
 
removeMemberSkillFromContainer(int $user_id, int $skill_id, int $tref_id)
 
ilSkillManagementSettings $skmg_settings
 
addMemberSkillForContainer(int $user_id, int $skill_id, int $tref_id, int $level_id)
 
getSkillsForPresentationGUI()
 
static writeUserSkillLevelStatus(int $a_level_id, int $a_user_id, int $a_trigger_ref_id, int $a_tref_id=0, int $a_status=ilBasicSkill::ACHIEVED, bool $a_force=false, bool $a_self_eval=false, string $a_unique_identifier="", float $a_next_level_fulfilment=0.0, string $trigger_user_id="")
 
SkillService SkillProfileService $profile_service
 
getMemberSkillLevel(int $user_id, int $skill_id, int $tref_id)
 
publishMemberSkills(int $user_id)
 
SkillInternalFactoryService $factory_service
 
SkillService SkillTreeService $tree_service
 
getSkillsForContainerOrdered()
 
$a
thx to https://mlocati.github.io/php-cs-fixer-configurator for the examples 
 
__construct(int $cont_obj_id, int $cont_ref_id, ContainerSkillDBRepository $cont_skill_repo=null, ContainerMemberSkillDBRepository $cont_member_skill_repo=null, SkillService\SkillTreeService $tree_service=null, SkillService\SkillProfileService $profile_service=null, SkillService\SkillPersonalService $personal_service=null, SkillInternalFactoryService $factory_service=null, \ilSkillManagementSettings $skmg_settings=null)
 
getPublished(int $user_id)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
getMemberSkillLevelsForContainerOrdered(int $user_id)
 
SkillService SkillPersonalService $personal_service