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::__construct($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:
74 return $this->details();
76 case self::LP_CONTEXT_USER_FOLDER:
77 case self::LP_CONTEXT_ORG_UNIT:
89 global $ilToolbar,
$ilCtrl,$rbacsystem, $ilAccess;
97 if((
int)
$_GET[
'crs_id'])
99 $this->ctrl->setParameter($this,
'details_id',(
int) $_GET[
'crs_id']);
101 $ilToolbar->addButton($this->lng->txt(
'trac_view_crs'),
102 $this->ctrl->getLinkTarget($this,
'details'));
104 elseif($this->
getMode() == self::LP_CONTEXT_PERSONAL_DESKTOP
or 105 $this->
getMode() == self::LP_CONTEXT_ADMINISTRATION
or 106 $this->
getMode() == self::LP_CONTEXT_USER_FOLDER)
108 $ilToolbar->addButton($this->lng->txt(
'trac_view_list'),
109 $this->ctrl->getLinkTarget($this,
'show'));
112 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.lp_progress_container.html',
'Services/Tracking');
114 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
116 $info->setFormAction($ilCtrl->getFormAction($this));
122 $this->tpl->setVariable(
"LM_INFO",
$info->getHTML());
124 include_once
'./Services/Object/classes/class.ilObjectLP.php';
126 $collection = $olp->getCollectionInstance();
130 foreach($collection->getItems() as $item_id)
135 if ($ilAccess->checkAccessOfUser($this->tracked_user->getId(),
'visible',
'', $item_id)) {
136 $obj_ids[$obj_id] =
array( $item_id );
141 $obj_ids[] = $item_id;
150 include_once
'./Services/Tracking/classes/class.ilLearningProgressAccess.php';
153 include_once(
"./Services/Tracking/classes/repository_statistics/class.ilLPProgressTableGUI.php");
154 $lp_table =
new ilLPProgressTableGUI($this,
"details", $this->tracked_user, $obj_ids,
true, $this->details_mode, $personal_only, $this->details_obj_id, $this->details_id);
155 $this->tpl->setVariable(
"LP_OBJECTS", $lp_table->getHTML());
165 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.lp_list_progress.html',
'Services/Tracking');
168 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
170 $info->setFormAction($ilCtrl->getFormAction($this));
174 $this->tpl->setCurrentBlock(
"info_user");
175 $this->tpl->setVariable(
"USER_INFO",
$info->getHTML());
176 $this->tpl->parseCurrentBlock();
179 include_once(
"./Services/Tracking/classes/repository_statistics/class.ilLPProgressTableGUI.php");
181 $this->tpl->setVariable(
"LP_OBJECTS", $lp_table->getHTML());
188 global
$ilUser,$rbacreview,$rbacsystem;
192 $a_usr_id =
$_POST[
'user_id'];
193 $this->ctrl->setParameter($this,
'user_id',
$_POST[
'user_id']);
206 if($this->mode == self::LP_CONTEXT_USER_FOLDER && $rbacsystem->checkAccess(
'read',$this->ref_id))
217 if(!$rbacreview->isAssigned($ilUser->getId(),SYSTEM_ROLE_ID))
227 global $ilObjDataCache;
237 $this->details_id = $a_details_id;
238 $this->details_obj_id = $ilObjDataCache->lookupObjId($this->details_id);
239 $this->details_type = $ilObjDataCache->lookupType($this->details_obj_id);
241 include_once
'Services/Object/classes/class.ilObjectLP.php';
243 $this->details_mode = $olp->getCurrentMode();
__construct($a_mode, $a_ref_id, $a_user_id=0)
__appendLPDetails(&$info, $item_id, $user_id)
static checkPermission($a_permission, $a_ref_id, $a_user_id=null)
wrapper for rbac access checks
TableGUI class for learning progress.
static _getAllReferences($a_id)
get all reference ids of object
__showObjectDetails(&$info, $item_id=0, $add_section=true)
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
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
Create styles array
The data for the language used.
__appendUserInfo(&$info, $a_user)
static getInstance($a_obj_id)
static _checkAccessToUserLearningProgress($ref_id, $usr_id)