5 include_once
'./Services/Tracking/classes/class.ilLPStatus.php';
29 include_once
'./Services/Tracking/classes/class.ilLPCollectionCache.php';
30 include_once
'./Modules/ScormAicc/classes/SCORM/class.ilObjSCORMTracking.php';
35 foreach($status_info[
'in_progress'] as $in_progress)
37 $users = array_merge($users,$in_progress);
39 $users = array_unique($users);
50 include_once
'./Modules/ScormAicc/classes/SCORM/class.ilObjSCORMTracking.php';
54 $items = $status_info[
'scos'];
58 foreach($items as $sco_id)
60 $tmp_users = $status_info[
'completed'][$sco_id];
68 $users = array_intersect($users,$tmp_users);
80 if(!count($status_info[
'scos']))
85 foreach($status_info[
'scos'] as $sco_id)
88 if(
sizeof($status_info[
'in_progress'][$sco_id]))
90 foreach($status_info[
'in_progress'][$sco_id] as $user_id)
92 if(!in_array($user_id, $status_info[
'failed'][$sco_id]))
94 switch($status_info[
"subtype"])
99 include_once
'./Modules/ScormAicc/classes/SCORM/class.ilObjSCORMTracking.php';
104 include_once(
"./Modules/Scorm2004/classes/class.ilSCORM2004Tracking.php");
109 if($has_max_attempts)
111 $status_info[
'failed'][$sco_id][] = $user_id;
117 $users = array_merge($users,(array) $status_info[
'failed'][$sco_id]);
119 return array_unique($users);
126 include_once
'./Services/Tracking/classes/class.ilLPCollectionCache.php';
129 $status_info[
'num_scos'] = count($status_info[
'scos']);
132 include_once
'./Modules/ScormAicc/classes/class.ilObjSAHSLearningModule.php';
135 switch($status_info[
'subtype'])
139 include_once
'./Modules/ScormAicc/classes/SCORM/class.ilObjSCORMTracking.php';
142 include_once
'./Modules/ScormAicc/classes/class.ilObjAICCLearningModule.php';
145 if(in_array($item[
'obj_id'],$status_info[
'scos']))
147 $status_info[
'scos_title'][
"$item[obj_id]"] = $item[
'title'];
154 include_once
'./Modules/ScormAicc/classes/SCORM/class.ilObjSCORMTracking.php';
157 include_once
'./Modules/ScormAicc/classes/SCORM/class.ilSCORMItem.php';
158 foreach($status_info[
'scos'] as $sco_id)
166 include_once
'./Modules/Scorm2004/classes/class.ilSCORM2004Tracking.php';
168 include_once
'./Modules/Scorm2004/classes/class.ilObjSCORM2004LearningModule.php';
169 foreach($status_info[
'scos'] as $sco_id)
178 $status_info[
'completed'] = array();
179 $status_info[
'failed'] = array();
180 $status_info[
'in_progress'] = array();
181 foreach($status_info[
'scos'] as $sco_id)
183 $status_info[
'completed'][$sco_id] = $info[
'completed'][$sco_id] ? $info[
'completed'][$sco_id] : array();
184 $status_info[
'failed'][$sco_id] = $info[
'failed'][$sco_id] ? $info[
'failed'][$sco_id] : array();
185 $status_info[
'in_progress'][$sco_id] = $info[
'in_progress'][$sco_id] ? $info[
'in_progress'][$sco_id] : array();
201 global $ilObjDataCache, $ilDB,
$ilLog;
207 include_once(
"./Services/Tracking/classes/class.ilChangeEvent.php");
214 include_once
'./Services/Tracking/classes/class.ilLPCollectionCache.php';
215 include_once
'./Modules/ScormAicc/classes/class.ilObjSAHSLearningModule.php';
225 include_once(
"./Modules/ScormAicc/classes/SCORM/class.ilObjSCORMTracking.php");
230 include_once(
"./Modules/Scorm2004/classes/class.ilSCORM2004Tracking.php");
235 switch ($scorm_status)
262 include_once
'./Services/Tracking/classes/class.ilLPCollectionCache.php';
264 $reqscos = count($scos);
266 include_once
'./Modules/ScormAicc/classes/class.ilObjSAHSLearningModule.php';
269 if ($subtype !=
"scorm2004")
271 include_once(
"./Modules/ScormAicc/classes/SCORM/class.ilObjSCORMTracking.php");
276 include_once(
"./Modules/Scorm2004/classes/class.ilSCORM2004Tracking.php");
282 $per = min(100, 100 / $reqscos * $compl);
297 include_once(
"./Services/Tracking/classes/class.ilLPStatusWrapper.php");
301 $all_active_users = array_unique(array_merge($in_progress, $completed,
$failed));
304 include_once
'./Modules/ScormAicc/classes/class.ilObjSAHSLearningModule.php';
306 if ($subtype !=
"scorm2004")
308 include_once(
"./Modules/ScormAicc/classes/SCORM/class.ilObjSCORMTracking.php");
313 include_once(
"./Modules/Scorm2004/classes/class.ilSCORM2004Tracking.php");
317 $not_attempted_users = array_diff($all_tracked_users, $all_active_users);
318 unset($all_tracked_users);
319 unset($all_active_users);
322 if($not_attempted_users)
324 foreach($not_attempted_users as
$usr_id)