private function buildPersonalSkillsGUI($usrId, $selectedSkillProfileId) { $availableSkills = $this->skillEvaluation->getUniqueAssignedSkillsForPersonalSkillGUI(); $reachedSkillLevels = $this->skillEvaluation->getReachedSkillLevelsForPersonalSkillGUI(); $gui = new ilTestPersonalSkillsGUI($this->lng, $this->getObjectId()); $gui->setAvailableSkills($availableSkills); $gui->setSelectedSkillProfile($selectedSkillProfileId); $gui->setReachedSkillLevels($reachedSkillLevels); $gui->setUsrId($usrId); return $gui; }
private function performSkillTriggering($activeId, $finishedPass, $userId) { require_once 'Modules/Test/classes/class.ilTestSkillEvaluation.php'; $skillEvaluation = new ilTestSkillEvaluation($this->db, $this->object); $skillEvaluation->init()->trigger($activeId, $finishedPass, $userId); }
/** * @param ilTestSession $testSession */ protected function handleSkillTriggering(ilTestSession $testSession) { $questionList = $this->buildTestPassQuestionList(); $questionList->load(); $testResults = $this->object->getTestResult($testSession->getActiveId(), $testSession->getPass(), true); require_once 'Modules/Test/classes/class.ilTestSkillEvaluation.php'; $skillEvaluation = new ilTestSkillEvaluation($this->db, $this->object->getTestId(), $this->object->getRefId()); $skillEvaluation->setUserId($testSession->getUserId()); $skillEvaluation->setActiveId($testSession->getActiveId()); $skillEvaluation->setPass($testSession->getPass()); $skillEvaluation->setNumRequiredBookingsForSkillTriggering($this->assSettings->get('ass_skl_trig_num_answ_barrier', ilObjAssessmentFolder::DEFAULT_SKL_TRIG_NUM_ANSWERS_BARRIER)); $skillEvaluation->init($questionList); $skillEvaluation->evaluate($testResults); $skillEvaluation->handleSkillTriggering(); }