Go to the documentation of this file.00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00033 include_once 'Services/Tracking/classes/class.ilLPStatus.php';
00034 include_once 'Services/Tracking/classes/class.ilLPObjSettings.php';
00035 include_once 'Services/Tracking/classes/class.ilLearningProgress.php';
00036
00037 class ilLPStatusVisits extends ilLPStatus
00038 {
00039
00040 function ilLPStatusVisits($a_obj_id)
00041 {
00042 global $ilDB;
00043
00044 parent::ilLPStatus($a_obj_id);
00045 $this->db =& $ilDB;
00046 }
00047
00048 function _getInProgress($a_obj_id)
00049 {
00050 global $ilDB;
00051
00052 $status_info = ilLPStatusWrapper::_getStatusInfo($a_obj_id);
00053 $required_visits = $status_info['visits'];
00054
00055 $query = "SELECT DISTINCT(user_id) FROM ut_learning_progress ".
00056 "WHERE visits < '".$required_visits."' ".
00057 "AND obj_id = '".$a_obj_id."'";
00058
00059 $res = $ilDB->query($query);
00060 while($row = $res->fetchRow(DB_FETCHMODE_OBJECT))
00061 {
00062 $user_ids[] = $row->user_id;
00063 }
00064 return $user_ids ? $user_ids : array();
00065 }
00066
00067 function _getCompleted($a_obj_id)
00068 {
00069 global $ilDB;
00070
00071 $status_info = ilLPStatusWrapper::_getStatusInfo($a_obj_id);
00072 $required_visits = $status_info['visits'];
00073
00074 $query = "SELECT DISTINCT(user_id) FROM ut_learning_progress ".
00075 "WHERE visits >= '".$required_visits."' ".
00076 "AND obj_id = '".$a_obj_id."'";
00077
00078
00079 $res = $ilDB->query($query);
00080 while($row = $res->fetchRow(DB_FETCHMODE_OBJECT))
00081 {
00082 $user_ids[] = $row->user_id;
00083 }
00084 return $user_ids ? $user_ids : array();
00085 }
00086
00087 function _getStatusInfo($a_obj_id)
00088 {
00089 include_once 'Services/Tracking/classes/class.ilLPObjSettings.php';
00090 $status_info['visits'] = ilLPObjSettings::_lookupVisits($a_obj_id);
00091
00092 return $status_info;
00093 }
00094
00095
00096
00097
00098 }
00099 ?>