5 include_once
'Services/Tracking/classes/class.ilLPStatus.php';
44 include_once
'./Services/Tracking/classes/class.ilChangeEvent.php';
53 $users = array_intersect(self::getMembers($a_obj_id), (array)$users);
64 foreach($status_info[
'objective_result'] as $user_id => $completed)
66 if(count($completed) == $status_info[
'num_objectives'])
68 $usr_ids[] = $user_id;
75 $usr_ids = array_intersect(self::getMembers($a_obj_id), (array)$usr_ids);
78 return $usr_ids ? $usr_ids : array();
86 include_once
'Modules/Course/classes/class.ilCourseObjective.php';
88 $status_info = array();
89 $status_info[
'objective_result'] = array();
91 $status_info[
'num_objectives'] = count($status_info[
'objectives']);
93 if($status_info[
'num_objectives'])
95 $in = $ilDB->in(
'objective_id',$status_info[
'objectives'],
false,
'integer');
97 $query =
"SELECT * FROM crs_objective_status WHERE ".$in;
101 $status_info[
'completed'][
$row->objective_id][] =
$row->user_id;
102 $status_info[
'objective_result'][
$row->user_id][
$row->objective_id] =
$row->objective_id;
106 $query =
"SELECT * FROM crs_objectives WHERE ".$in;
110 $status_info[
'objective_title'][
$row->objective_id] =
$row->title;
111 $status_info[
'objective_description'][
$row->objective_id] =
$row->description;
128 global $ilObjDataCache, $ilDB;
141 switch ($ilObjDataCache->lookupType($a_obj_id))
144 include_once(
"./Services/Tracking/classes/class.ilChangeEvent.php");
149 include_once
'Modules/Course/classes/class.ilCourseObjective.php';
153 $set = $ilDB->query(
"SELECT count(objective_id) cnt FROM crs_objective_status ".
154 "WHERE ".$ilDB->in(
'objective_id',$objectives,
false,
'integer').
155 " AND user_id = ".$ilDB->quote($a_user_id,
"integer"));
156 if ($rec = $ilDB->fetchAssoc($set))
158 if ($rec[
"cnt"] == count($objectives))
177 include_once
'Modules/Course/classes/class.ilCourseParticipants.php';
179 return $member_obj->getMembers();