41 $this->level_repo = ($a_level_repo)
43 : $DIC->skills()->internal()->repo()->getLevelRepo();
44 $this->user_level_repo = ($a_user_level_repo)
46 : $DIC->skills()->internal()->repo()->getUserLevelRepo();
47 $this->obj_adapter = ($a_obj_adapter)
64 int $a_trigger_ref_id,
67 string $a_unique_identifier,
68 float $a_next_level_fulfilment
70 $skill_id = $this->level_repo->lookupLevelSkillId($a_level_id);
71 $trigger_ref_id = $a_trigger_ref_id;
72 $trigger_obj_id = $this->obj_adapter->getObjIdForRefId($trigger_ref_id);
73 $trigger_title = $this->obj_adapter->getTitleForObjId($trigger_obj_id);
74 $trigger_type = $this->obj_adapter->getTypeForObjId($trigger_obj_id);
77 if (!($a_next_level_fulfilment >= 0) || !($a_next_level_fulfilment < 1)) {
78 throw new \UnexpectedValueException(
79 "Next level fulfilment must be equal to or greater than 0 and less than 1, '" .
80 $a_next_level_fulfilment .
"' given." 87 if ($a_self_eval && $this->user_level_repo->hasRecentSelfEvaluation($trigger_obj_id, $user_id, $skill_id,
88 $a_tref_id, $trigger_ref_id)) {
89 $status_date = $this->user_level_repo->hasRecentSelfEvaluation($trigger_obj_id, $user_id, $skill_id,
90 $a_tref_id, $trigger_ref_id);
91 if ($status_date !=
"") {
96 $this->user_level_repo->writeUserSkillLevelStatus($skill_id, $trigger_ref_id, $trigger_obj_id, $trigger_title,
97 $trigger_type, $update, $status_date, $a_level_id, $user_id, $a_tref_id, $a_self_eval, $a_unique_identifier,
98 $a_next_level_fulfilment);
Interface ilBasicSkillObjectAdapter.
__construct(\ilBasicSkillLevelRepository $a_level_repo=null, \ilBasicSkillUserLevelRepository $a_user_level_repo=null, \ilSkillObjectAdapterInterface $a_obj_adapter=null)
Constructor.
Class ilBasicSkillObjectAdapter.
Interface ilBasicSkillLevelRepository.
writeSkillLevel(int $user_id, int $a_level_id, int $a_trigger_ref_id, int $a_tref_id, bool $a_self_eval, string $a_unique_identifier, float $a_next_level_fulfilment)
Skill user level manager.
Interface ilBasicSkillUserLevelRepository.