17 include_once
'./Services/Tracking/classes/class.ilLearningProgressBaseGUI.php';
18 include_once
'./Services/Tracking/classes/class.ilLPStatusWrapper.php';
19 require_once
'./Modules/OrgUnit/classes/class.ilObjOrgUnitAccess.php';
30 parent::ilLearningProgressBaseGUI($a_mode,$a_ref_id,$a_user_id);
35 $this->ctrl->saveParameter($this,
'details_id',
$_REQUEST[
'details_id']);
46 $this->ctrl->setReturn($this,
"show");
47 $this->ctrl->saveParameter($this,
'user_id',$this->
getUserId());
48 switch($this->ctrl->getNextClass())
50 case 'illpprogresstablegui':
51 include_once
'./Services/Tracking/classes/repository_statistics/class.ilLPProgressTableGUI.php';
53 $this->ctrl->setReturn($this,
'show');
54 $this->ctrl->forwardCommand($table_gui);
67 global $ilObjDataCache;
72 case self::LP_CONTEXT_REPOSITORY:
76 case self::LP_CONTEXT_USER_FOLDER:
77 case self::LP_CONTEXT_ORG_UNIT:
89 global $ilObjDataCache,
$ilCtrl,$rbacsystem;
93 if((
int)
$_GET[
'crs_id'])
95 $this->ctrl->setParameter($this,
'details_id',(
int) $_GET[
'crs_id']);
96 $this->
__showButton($this->ctrl->getLinkTarget($this,
'details'),$this->lng->txt(
'trac_view_crs'));
98 elseif($this->
getMode() == self::LP_CONTEXT_PERSONAL_DESKTOP or
99 $this->
getMode() == self::LP_CONTEXT_ADMINISTRATION or
100 $this->
getMode() == self::LP_CONTEXT_USER_FOLDER)
102 $this->
__showButton($this->ctrl->getLinkTarget($this,
'show'),$this->lng->txt(
'trac_view_list'));
105 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.lp_progress_container.html',
'Services/Tracking');
107 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
109 $info->setFormAction($ilCtrl->getFormAction($this));
112 $this->
__appendLPDetails($info,$this->details_obj_id,$this->tracked_user->getId());
115 $this->tpl->setVariable(
"LM_INFO",$info->getHTML());
117 include_once
'./Services/Object/classes/class.ilObjectLP.php';
119 $collection = $olp->getCollectionInstance();
123 foreach($collection->getItems() as $item_id)
132 $obj_ids[] = $item_id;
137 $personal_only = !$rbacsystem->checkAccess(
'edit_learning_progress',$this->
getRefId());
139 include_once(
"./Services/Tracking/classes/repository_statistics/class.ilLPProgressTableGUI.php");
140 $lp_table =
new ilLPProgressTableGUI($this,
"details", $this->tracked_user, $obj_ids,
true, $this->details_mode, $personal_only, $this->details_obj_id);
141 $this->tpl->setVariable(
"LP_OBJECTS", $lp_table->getHTML());
150 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.lp_list_progress.html',
'Services/Tracking');
153 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
155 $info->setFormAction($ilCtrl->getFormAction($this));
159 $this->tpl->setCurrentBlock(
"info_user");
160 $this->tpl->setVariable(
"USER_INFO",$info->getHTML());
161 $this->tpl->parseCurrentBlock();
164 include_once(
"./Services/Tracking/classes/repository_statistics/class.ilLPProgressTableGUI.php");
166 $this->tpl->setVariable(
"LP_OBJECTS", $lp_table->getHTML());
173 global
$ilUser,$rbacreview,$rbacsystem;
177 $a_usr_id =
$_POST[
'user_id'];
178 $this->ctrl->setParameter($this,
'user_id',
$_POST[
'user_id']);
191 if($this->mode == self::LP_CONTEXT_USER_FOLDER && $rbacsystem->checkAccess(
'read',$this->ref_id))
202 if(!$rbacreview->isAssigned($ilUser->getId(),SYSTEM_ROLE_ID))
212 global $ilObjDataCache;
222 $this->details_id = $a_details_id;
223 $this->details_obj_id = $ilObjDataCache->lookupObjId($this->details_id);
224 $this->details_type = $ilObjDataCache->lookupType($this->details_obj_id);
226 include_once
'Services/Object/classes/class.ilObjectLP.php';
228 $this->details_mode = $olp->getCurrentMode();
ilLPListOfProgressGUI($a_mode, $a_ref_id, $a_user_id=0)
__appendLPDetails(&$info, $item_id, $user_id)
TableGUI class for learning progress.
static _getAllReferences($a_id)
get all reference ids of object
__showButton($a_link, $a_text, $a_target='')
__showObjectDetails(&$info, $item_id=0)
show details about current object.
__initDetails($a_details_id)
static _lookupObjectId($a_ref_id)
lookup object id
LP collection of repository objects.
& executeCommand()
execute command
getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
__appendUserInfo(&$info, $a_user)
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
static getInstance($a_obj_id)
static _checkAccessToUserLearningProgress($ref_id, $usr_id)