60 return array(
'questionTitles',
'participants',
'statistics',
'arrFilter',
'datasets',
'test');
70 $this->participants =
array();
71 $this->questionTitles =
array();
83 include_once
"./Modules/Test/classes/class.ilTestEvaluationPassData.php";
84 include_once
"./Modules/Test/classes/class.ilTestEvaluationUserData.php";
86 $this->participants =
array();
89 SELECT usr_data.usr_id, 95 FROM tst_pass_result, tst_active 97 ON tst_active.user_fi = usr_data.usr_id 98 WHERE tst_active.active_id = tst_pass_result.active_fi 99 AND tst_active.test_fi = %s 100 ORDER BY usr_data.lastname, 102 tst_pass_result.active_fi, 103 tst_pass_result.pass, 104 tst_pass_result.tstamp 144 if(
$row[
"questioncount"] == 0 )
171 $this->test =&
$test;
186 $this->questionTitles[$question_id] = $question_title;
196 if (array_key_exists($question_id, $this->questionTitles))
198 return $this->questionTitles[$question_id];
208 include_once
"./Modules/Test/classes/class.ilTestStatistics.php";
214 if (is_array($this->arrFilter) && count($this->arrFilter) > 0)
216 $filteredParticipants =
array();
217 $courseids =
array();
220 if (array_key_exists(
'group', $this->arrFilter))
223 $groupids = array_merge($groupids, $ids);
225 if (array_key_exists(
'course', $this->arrFilter))
228 $courseids = array_merge($courseids, $ids);
230 foreach ($this->participants as $active_id => $participant)
233 if (array_key_exists(
'name', $this->arrFilter))
235 if (!(strpos(strtolower($participant->getName()), strtolower($this->arrFilter[
'name'])) !== FALSE)) $remove = TRUE;
239 if (array_key_exists(
'group', $this->arrFilter))
241 include_once
"./Services/Membership/classes/class.ilParticipants.php";
243 $foundfilter = FALSE;
244 if (count(array_intersect($groupids, $groups))) $foundfilter = TRUE;
245 if (!$foundfilter) $remove = TRUE;
250 if (array_key_exists(
'course', $this->arrFilter))
252 include_once
"./Services/Membership/classes/class.ilParticipants.php";
254 $foundfilter = FALSE;
255 if (count(array_intersect($courseids, $courses))) $foundfilter = TRUE;
256 if (!$foundfilter) $remove = TRUE;
261 if (array_key_exists(
'active_id', $this->arrFilter))
263 if ($active_id != $this->arrFilter[
'active_id']) $remove = TRUE;
266 if (!$remove) $filteredParticipants[$active_id] = $participant;
268 return $filteredParticipants;
278 $this->arrFilter =
array();
304 $this->participants[$active_id] = $participant;
313 return $this->participants[$active_id];
318 return array_key_exists($active_id, $this->participants);
323 unset($this->participants[$active_id]);
333 return array_keys($this->participants);
removeParticipant($active_id)
addQuestionTitle($question_id, $question_title)
static _getMembershipByType($a_usr_id, $a_type, $a_only_member_role=false)
get membership by type Get course or group membership
__construct(ilObjTest $test=null)
Constructor.
static _getQuestionCountAndPointsForPassOfParticipant($active_id, $pass)
participantExists($active_id)
getQuestionTitle($question_id)
This class calculates statistical data for a test which has to be calculated using all participant da...
Create styles array
The data for the language used.
addParticipant($active_id, $participant)
static _getIdsForTitle($title, $type='', $partialmatch=false)
getParticipant($active_id)
setFilterArray($arrFilter)