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.ilLPStatusWrapper.php';
00035
00036 class ilLPStatusEvent extends ilLPStatus
00037 {
00038
00039 function ilLPStatusEvent($a_obj_id)
00040 {
00041 global $ilDB;
00042
00043 parent::ilLPStatus($a_obj_id);
00044 $this->db =& $ilDB;
00045 }
00046
00047 function _getNotAttempted($a_obj_id)
00048 {
00049 global $ilObjDataCache;
00050
00051 $status_info = ilLPStatusWrapper::_getStatusInfoByType($a_obj_id,'event');
00052 var_dump("<pre>","STATUS_INFO",$status_info,"<pre>");
00053
00054 include_once 'course/classes/class.ilCourseMembers.php';
00055 $members = ilCourseMembers::_getMembers($status_info['crs_id']);
00056
00057
00058 $users = array_diff((array) $members,$inp = ilLPStatusWrapper::_getInProgressByType($a_obj_id,'event'));
00059 $users = array_diff((array) $users,$com = ilLPStatusWrapper::_getCompletedByType($a_obj_id,'event'));
00060 return $users;
00061 }
00062
00063 function _getInProgress($a_obj_id)
00064 {
00065 $status_info = ilLPStatusWrapper::_getStatusInfoByType($a_obj_id,'event');
00066
00067
00068 if(!$status_info['registration'])
00069 {
00070 return array();
00071 }
00072
00073 if($status_info['starting_time'] < time())
00074 {
00075 return array();
00076 }
00077
00078
00079 return $status_info['registered_users'] ? $status_info['registered_users'] : array();
00080 }
00081
00082 function _getCompleted($a_obj_id)
00083 {
00084
00085 $status_info = ilLPStatusWrapper::_getStatusInfoByType($a_obj_id,'event');
00086 return $status_info['participated_users'] ? $status_info['participated_users'] : array();
00087 }
00088
00089 function _getStatusInfo($a_obj_id)
00090 {
00091 include_once 'course/classes/Event/class.ilEvent.php';
00092 include_once 'course/classes/Event/class.ilEventParticipants.php';
00093
00094 $event = new ilEvent($a_obj_id);
00095
00096 $status_info['crs_id'] = $event->getObjId();
00097 $status_info['registration'] = $event->enabledRegistration();
00098 $status_info['title'] = $event->getTitle();
00099 $status_info['description'] = $event->getDescription();
00100
00101 $appointment =& $event->getFirstAppointment();
00102 $status_info['starting_time'] = $appointment->getStartingTime();
00103 $status_info['ending_time'] = $appointment->getEndingTime();
00104
00105 $status_info['registered_users'] = ilEventParticipants::_getRegistered($a_obj_id);
00106 $status_info['participated_users'] = ilEventParticipants::_getParticipated($a_obj_id);
00107
00108 return $status_info;
00109 }
00110
00111 }
00112 ?>