ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
ilTestSkillEvaluationGUI Class Reference
+ Collaboration diagram for ilTestSkillEvaluationGUI:

Public Member Functions

 __construct (ilCtrl $ctrl, ilTabsGUI $tabs, ilTemplate $tpl, ilLanguage $lng, ilDB $db, $testId, $refId, $objectId)
 
 getQuestionList ()
 
 setQuestionList ($questionList)
 
 getObjectiveOrientedContainer ()
 
 setObjectiveOrientedContainer ($objectiveOrientedContainer)
 
 executeCommand ()
 
 getTestId ()
 
 setTestResults ($testResults)
 
 getTestResults ()
 
 setTestSession ($testSession)
 
 getTestSession ()
 
 getObjectId ()
 

Data Fields

const CMD_SHOW = 'show'
 

Private Member Functions

 isAccessDenied ()
 
 manageTabs ($cmd)
 
 showCmd ()
 
 buildEvaluationToolbarGUI ($selectedSkillProfileId)
 
 isTestResultButtonRequired ()
 
 buildPersonalSkillsGUI ($usrId, $selectedSkillProfileId)
 

Private Attributes

 $ctrl
 
 $tabs
 
 $tpl
 
 $lng
 
 $db
 
 $testId
 
 $skillEvaluation
 
 $testSession
 
 $objectiveOrientedContainer
 
 $testResults
 
 $questionList
 
 $objectId
 

Detailed Description

Definition at line 17 of file class.ilTestSkillEvaluationGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilTestSkillEvaluationGUI::__construct ( ilCtrl  $ctrl,
ilTabsGUI  $tabs,
ilTemplate  $tpl,
ilLanguage  $lng,
ilDB  $db,
  $testId,
  $refId,
  $objectId 
)

Definition at line 80 of file class.ilTestSkillEvaluationGUI.php.

References $ctrl, $db, $lng, $objectId, $tabs, $testId, $tpl, and getTestId().

81  {
82  $this->ctrl = $ctrl;
83  $this->tabs = $tabs;
84  $this->tpl = $tpl;
85  $this->lng = $lng;
86  $this->db = $db;
87  $this->testId = $testId;
88  $this->objectId = $objectId;
89 
90  require_once 'Modules/Test/classes/class.ilTestSkillEvaluation.php';
91  $this->skillEvaluation = new ilTestSkillEvaluation($this->db, $this->getTestId(), $refId);
92  }
+ Here is the call graph for this function:

Member Function Documentation

◆ buildEvaluationToolbarGUI()

ilTestSkillEvaluationGUI::buildEvaluationToolbarGUI (   $selectedSkillProfileId)
private

Definition at line 188 of file class.ilTestSkillEvaluationGUI.php.

References isTestResultButtonRequired().

Referenced by showCmd().

189  {
190  $availableSkillProfiles = $this->skillEvaluation->getAssignedSkillMatchingSkillProfiles();
191 
192  $noSkillProfileOptionEnabled = $this->skillEvaluation->noProfileMatchingAssignedSkillExists(
193  $availableSkillProfiles
194  );
195 
196  $gui = new ilTestSkillEvaluationToolbarGUI($this->ctrl, $this->lng, $this, self::CMD_SHOW);
197 
198  $gui->setAvailableSkillProfiles($availableSkillProfiles);
199  $gui->setNoSkillProfileOptionEnabled($noSkillProfileOptionEnabled);
200  $gui->setSelectedEvaluationMode($selectedSkillProfileId);
201 
202  $gui->setTestResultButtonEnabled($this->isTestResultButtonRequired());
203 
204  $gui->build();
205 
206  return $gui;
207  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ buildPersonalSkillsGUI()

ilTestSkillEvaluationGUI::buildPersonalSkillsGUI (   $usrId,
  $selectedSkillProfileId 
)
private

Definition at line 231 of file class.ilTestSkillEvaluationGUI.php.

References getObjectId().

Referenced by showCmd().

232  {
233  $availableSkills = $this->skillEvaluation->getUniqueAssignedSkillsForPersonalSkillGUI();
234  $reachedSkillLevels = $this->skillEvaluation->getReachedSkillLevelsForPersonalSkillGUI();
235 
236  $gui = new ilTestPersonalSkillsGUI($this->lng, $this->getObjectId());
237 
238  $gui->setAvailableSkills($availableSkills);
239  $gui->setSelectedSkillProfile($selectedSkillProfileId);
240 
241  $gui->setReachedSkillLevels($reachedSkillLevels);
242  $gui->setUsrId($usrId);
243 
244  return $gui;
245  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ executeCommand()

ilTestSkillEvaluationGUI::executeCommand ( )

Definition at line 126 of file class.ilTestSkillEvaluationGUI.php.

References $cmd, and manageTabs().

127  {
128  $cmd = $this->ctrl->getCmd(self::CMD_SHOW) . 'Cmd';
129 
130  $this->manageTabs($cmd);
131 
132  $this->$cmd();
133  }
$cmd
Definition: sahs_server.php:35
+ Here is the call graph for this function:

◆ getObjectId()

ilTestSkillEvaluationGUI::getObjectId ( )
Returns
int

Definition at line 290 of file class.ilTestSkillEvaluationGUI.php.

References $objectId.

Referenced by buildPersonalSkillsGUI().

+ Here is the caller graph for this function:

◆ getObjectiveOrientedContainer()

ilTestSkillEvaluationGUI::getObjectiveOrientedContainer ( )
Returns
ilTestObjectiveOrientedContainer

Definition at line 113 of file class.ilTestSkillEvaluationGUI.php.

References $objectiveOrientedContainer.

Referenced by manageTabs().

+ Here is the caller graph for this function:

◆ getQuestionList()

ilTestSkillEvaluationGUI::getQuestionList ( )
Returns
ilAssQuestionList

Definition at line 97 of file class.ilTestSkillEvaluationGUI.php.

References $questionList.

Referenced by showCmd().

+ Here is the caller graph for this function:

◆ getTestId()

ilTestSkillEvaluationGUI::getTestId ( )
Returns
int

Definition at line 250 of file class.ilTestSkillEvaluationGUI.php.

References $testId.

Referenced by __construct().

+ Here is the caller graph for this function:

◆ getTestResults()

ilTestSkillEvaluationGUI::getTestResults ( )
Returns
array

Definition at line 266 of file class.ilTestSkillEvaluationGUI.php.

References $testResults.

Referenced by showCmd().

+ Here is the caller graph for this function:

◆ getTestSession()

ilTestSkillEvaluationGUI::getTestSession ( )
Returns

Definition at line 282 of file class.ilTestSkillEvaluationGUI.php.

References $testSession.

Referenced by showCmd().

+ Here is the caller graph for this function:

◆ isAccessDenied()

ilTestSkillEvaluationGUI::isAccessDenied ( )
private

Definition at line 135 of file class.ilTestSkillEvaluationGUI.php.

136  {
137  return false;
138  }

◆ isTestResultButtonRequired()

ilTestSkillEvaluationGUI::isTestResultButtonRequired ( )
private

Definition at line 209 of file class.ilTestSkillEvaluationGUI.php.

References ilObjectFactory\getInstanceByObjId().

Referenced by buildEvaluationToolbarGUI().

210  {
211  $testOBJ = ilObjectFactory::getInstanceByObjId($this->objectId);
212 
213  if( !$testOBJ->canShowTestResults($this->testSession) )
214  {
215  return false;
216  }
217 
218  require_once 'Modules/Test/classes/class.ilTestPassesSelector.php';
219  $testPassesSelector = new ilTestPassesSelector($this->db, $testOBJ);
220  $testPassesSelector->setActiveId($this->testSession->getActiveId());
221  $testPassesSelector->setLastFinishedPass($this->testSession->getLastFinishedPass());
222 
223  if( !count($testPassesSelector->getReportablePasses()) )
224  {
225  return false;
226  }
227 
228  return true;
229  }
getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ manageTabs()

ilTestSkillEvaluationGUI::manageTabs (   $cmd)
private

Definition at line 140 of file class.ilTestSkillEvaluationGUI.php.

References ilLink\_getLink(), and getObjectiveOrientedContainer().

Referenced by executeCommand().

141  {
142  $this->tabs->clearTargets();
143 
144  $this->tabs->setBackTarget(
145  $this->lng->txt('tst_results_back_introduction'),
146  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'infoScreen')
147  );
148 
149  if( $this->getObjectiveOrientedContainer()->isObjectiveOrientedPresentationRequired() )
150  {
151  require_once 'Services/Link/classes/class.ilLink.php';
152  $courseLink = ilLink::_getLink($this->getObjectiveOrientedContainer()->getRefId());
153  $this->tabs->setBack2Target($this->lng->txt('back_to_objective_container'), $courseLink);
154  }
155  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setObjectiveOrientedContainer()

ilTestSkillEvaluationGUI::setObjectiveOrientedContainer (   $objectiveOrientedContainer)
Parameters
ilTestObjectiveOrientedContainer$objectiveOrientedContainer

Definition at line 121 of file class.ilTestSkillEvaluationGUI.php.

References $objectiveOrientedContainer.

122  {
123  $this->objectiveOrientedContainer = $objectiveOrientedContainer;
124  }

◆ setQuestionList()

ilTestSkillEvaluationGUI::setQuestionList (   $questionList)
Parameters
ilAssQuestionList$questionList

Definition at line 105 of file class.ilTestSkillEvaluationGUI.php.

References $questionList.

Referenced by ilObjTestGUI\executeCommand().

106  {
107  $this->questionList = $questionList;
108  }
+ Here is the caller graph for this function:

◆ setTestResults()

ilTestSkillEvaluationGUI::setTestResults (   $testResults)
Parameters
array$testResults

Definition at line 258 of file class.ilTestSkillEvaluationGUI.php.

References $testResults.

259  {
260  $this->testResults = $testResults;
261  }

◆ setTestSession()

ilTestSkillEvaluationGUI::setTestSession (   $testSession)
Parameters
\ilTestSession$testSession

Definition at line 274 of file class.ilTestSkillEvaluationGUI.php.

References $testSession.

275  {
276  $this->testSession = $testSession;
277  }

◆ showCmd()

ilTestSkillEvaluationGUI::showCmd ( )
private

Definition at line 157 of file class.ilTestSkillEvaluationGUI.php.

References $_POST, $testResults, $testSession, buildEvaluationToolbarGUI(), buildPersonalSkillsGUI(), ilObjAssessmentFolder\DEFAULT_SKL_TRIG_NUM_ANSWERS_BARRIER, ilTestSkillEvaluationToolbarGUI\fetchSkillProfileParam(), getQuestionList(), getTestResults(), getTestSession(), and ilUtil\sendInfo().

158  {
159  ilUtil::sendInfo($this->lng->txt('tst_skl_res_interpretation_hint_msg'));
160 
162 
163  $testSession = $this->getTestSession();
164 
165  $this->skillEvaluation->setUserId($testSession->getUserId());
166  $this->skillEvaluation->setActiveId($testSession->getActiveId());
167  $this->skillEvaluation->setPass($testSession->getPass());
168 
169  $settings = new ilSetting('assessment');
170 
171  $this->skillEvaluation->setNumRequiredBookingsForSkillTriggering($settings->get(
172  'ass_skl_trig_num_answ_barrier', ilObjAssessmentFolder::DEFAULT_SKL_TRIG_NUM_ANSWERS_BARRIER
173  ));
174 
175  $testResults = $this->getTestResults();
176 
177  $this->skillEvaluation->init($this->getQuestionList());
178  $this->skillEvaluation->evaluate($testResults);
179 
180  $evaluationToolbarGUI = $this->buildEvaluationToolbarGUI($selectedSkillProfile);
181  $personalSkillsGUI = $this->buildPersonalSkillsGUI($testSession->getUserId(), $selectedSkillProfile);
182 
183  $this->tpl->setContent(
184  $this->ctrl->getHTML($evaluationToolbarGUI) . $this->ctrl->getHTML($personalSkillsGUI)
185  );
186  }
ILIAS Setting Class.
$_POST['username']
Definition: cron.php:12
buildEvaluationToolbarGUI($selectedSkillProfileId)
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
buildPersonalSkillsGUI($usrId, $selectedSkillProfileId)
+ Here is the call graph for this function:

Field Documentation

◆ $ctrl

ilTestSkillEvaluationGUI::$ctrl
private

Definition at line 23 of file class.ilTestSkillEvaluationGUI.php.

Referenced by __construct().

◆ $db

ilTestSkillEvaluationGUI::$db
private

Definition at line 43 of file class.ilTestSkillEvaluationGUI.php.

Referenced by __construct().

◆ $lng

ilTestSkillEvaluationGUI::$lng
private

Definition at line 38 of file class.ilTestSkillEvaluationGUI.php.

Referenced by __construct().

◆ $objectId

ilTestSkillEvaluationGUI::$objectId
private

Definition at line 78 of file class.ilTestSkillEvaluationGUI.php.

Referenced by __construct(), and getObjectId().

◆ $objectiveOrientedContainer

ilTestSkillEvaluationGUI::$objectiveOrientedContainer
private

◆ $questionList

ilTestSkillEvaluationGUI::$questionList
private

Definition at line 73 of file class.ilTestSkillEvaluationGUI.php.

Referenced by getQuestionList(), and setQuestionList().

◆ $skillEvaluation

ilTestSkillEvaluationGUI::$skillEvaluation
private

Definition at line 53 of file class.ilTestSkillEvaluationGUI.php.

◆ $tabs

ilTestSkillEvaluationGUI::$tabs
private

Definition at line 28 of file class.ilTestSkillEvaluationGUI.php.

Referenced by __construct().

◆ $testId

ilTestSkillEvaluationGUI::$testId
private

Definition at line 48 of file class.ilTestSkillEvaluationGUI.php.

Referenced by __construct(), and getTestId().

◆ $testResults

ilTestSkillEvaluationGUI::$testResults
private

Definition at line 68 of file class.ilTestSkillEvaluationGUI.php.

Referenced by getTestResults(), setTestResults(), and showCmd().

◆ $testSession

ilTestSkillEvaluationGUI::$testSession
private

Definition at line 58 of file class.ilTestSkillEvaluationGUI.php.

Referenced by getTestSession(), setTestSession(), and showCmd().

◆ $tpl

ilTestSkillEvaluationGUI::$tpl
private

Definition at line 33 of file class.ilTestSkillEvaluationGUI.php.

Referenced by __construct().

◆ CMD_SHOW

const ilTestSkillEvaluationGUI::CMD_SHOW = 'show'

The documentation for this class was generated from the following file: