35 define(
"LP_MODE_DEACTIVATED",0);
36 define(
"LP_MODE_TLT",1);
37 define(
"LP_MODE_VISITS",2);
38 define(
"LP_MODE_MANUAL",3);
39 define(
"LP_MODE_OBJECTIVES",4);
40 define(
"LP_MODE_COLLECTION",5);
41 define(
"LP_MODE_SCORM",6);
42 define(
"LP_MODE_TEST_FINISHED",7);
43 define(
"LP_MODE_TEST_PASSED",8);
44 define(
"LP_MODE_EXERCISE_RETURNED",9);
45 define(
"LP_MODE_EVENT",10);
46 define(
"LP_MODE_MANUAL_BY_TUTOR",11);
47 define(
"LP_MODE_SCORM_PACKAGE",12);
48 define(
"LP_MODE_UNDEFINED",13);
50 define(
"LP_DEFAULT_VISITS",30);
68 global $ilObjDataCache,
$ilDB;
72 $this->obj_id = $a_obj_id;
76 $this->obj_type = $ilObjDataCache->lookupType($this->obj_id);
92 $query =
"INSERT INTO ut_lp_settings (obj_id,obj_type,u_mode,visits) ".
94 $this->db->quote($a_new_obj_id ,
'integer').
", ".
95 $this->db->quote($this->
getObjType() ,
'text').
", ".
96 $this->db->quote($this->
getMode() ,
'integer').
", ".
97 $this->db->quote($this->
getVisits() ,
'integer').
110 $this->visits = $a_visits;
115 $this->obj_mode = $a_mode;
135 if(!$this->is_stored)
139 $query =
"UPDATE ut_lp_settings SET u_mode = ".$ilDB->quote($this->
getMode() ,
'integer').
", ".
140 "visits = ".$ilDB->quote($this->
getVisits() ,
'integer').
" ".
141 "WHERE obj_id = ".$ilDB->quote($this->
getObjId() ,
'integer');
146 include_once(
"./Services/Tracking/classes/class.ilLPStatusWrapper.php");
158 $query =
"INSERT INTO ut_lp_settings (obj_id,obj_type,u_mode,visits) ".
160 $ilDB->quote($this->
getObjId() ,
'integer').
", ".
161 $ilDB->quote($this->
getObjType(),
'text').
", ".
162 $ilDB->quote($this->
getMode(),
'integer').
", ".
163 $ilDB->quote(0,
'integer').
169 include_once(
"./Services/Tracking/classes/class.ilLPStatusWrapper.php");
181 $query =
"SELECT visits FROM ut_lp_settings ".
182 "WHERE obj_id = ".$ilDB->quote($a_obj_id ,
'integer');
205 $query =
"DELETE FROM ut_lp_settings WHERE obj_id = ".$ilDB->quote($a_obj_id ,
'integer');
213 global
$ilDB,$ilObjDataCache;
215 if (isset(self::$mode_by_obj_id[$a_obj_id]))
217 return self::$mode_by_obj_id[$a_obj_id];
231 $query =
"SELECT u_mode FROM ut_lp_settings ".
232 "WHERE obj_id = ".$ilDB->quote($a_obj_id ,
'integer');
237 self::$mode_by_obj_id[$a_obj_id] =
$row->u_mode;
243 self::$mode_by_obj_id[$a_obj_id] = $def_mode;
252 switch($this->obj_type)
269 LP_MODE_DEACTIVATE => $lng->txt(
'trac_mode_deactivated')
282 include_once
'./Services/Tracking/classes/class.ilLPCollections.php';
283 include_once
"./Modules/ScormAicc/classes/class.ilObjSAHSLearningModule.php";
286 if ($subtype !=
"scorm2004")
290 return array(
LP_MODE_SCORM => $lng->txt(
'trac_mode_scorm_aicc'));
303 return array(
LP_MODE_SCORM => $lng->txt(
'trac_mode_scorm_aicc'),
336 return array(
LP_MODE_EVENT => $this->lng->txt(
'trac_mode_event'));
350 return $lng->txt(
'trac_mode_deactivated');
353 return $lng->txt(
'trac_mode_tlt');
356 return $lng->txt(
'trac_mode_visits');
359 return $lng->txt(
'trac_mode_manual');
362 return $lng->txt(
'trac_mode_manual_by_tutor');
365 return $lng->txt(
'trac_mode_objectives');
368 return $lng->txt(
'trac_mode_collection');
371 return $lng->txt(
'trac_mode_scorm');
374 return $lng->txt(
'trac_mode_test_finished');
377 return $lng->txt(
'trac_mode_test_passed');
380 return $lng->txt(
'trac_mode_exercise_returned');
383 return $lng->txt(
'trac_mode_scorm_package');
386 return $lng->txt(
'trac_mode_event');
407 return $lng->txt(
'trac_mode_deactivated_info_new');
410 return $lng->txt(
'trac_mode_tlt_info');
413 return $lng->txt(
'trac_mode_visits_info');
416 return $lng->txt(
'trac_mode_manual_info');
419 return $lng->txt(
'trac_mode_manual_by_tutor_info');
422 return $lng->txt(
'trac_mode_objectives_info');
425 return $lng->txt(
'trac_mode_collection_info');
428 return $lng->txt(
'trac_mode_scorm_info');
431 return $lng->txt(
'trac_mode_test_finished_info');
434 return $lng->txt(
'trac_mode_test_passed_info');
437 return $lng->txt(
'trac_mode_exercise_returned_info');
440 return $lng->txt(
'trac_mode_scorm_package_info');
443 return $lng->txt(
'trac_mode_event_info');
454 global
$ilDB,$ilObjDataCache;
457 if($ilObjDataCache->lookupType($a_obj_id) ==
'crs')
459 include_once
'Modules/Course/classes/class.ilObjCourse.php';
471 global $ilObjDataCache;
473 if($ilObjDataCache->lookupType($a_obj_id) !=
'sahs')
477 include_once(
'./Services/AccessControl/classes/class.ilConditionHandler.php');
489 $res = $this->db->query(
"SELECT * FROM ut_lp_settings WHERE obj_id = ".
490 $this->db->quote($this->obj_id ,
'integer'));
493 $this->is_stored =
true;
494 $this->obj_type =
$row->obj_type;
495 $this->obj_mode =
$row->u_mode;
496 $this->visits =
$row->visits;
517 #$type = strlen($a_type) ? $a_type : $this->obj_type;