ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
ilLearningProgressBaseGUI Class Reference
+ Inheritance diagram for ilLearningProgressBaseGUI:
+ Collaboration diagram for ilLearningProgressBaseGUI:

Public Member Functions

 __construct ($a_mode, $a_ref_id=0, $a_usr_id=0)
 
 isAnonymized ()
 
 getMode ()
 
 getRefId ()
 
 getObjId ()
 
 getUserId ()
 
 __getDefaultCommand ()
 
 __setSubTabs ($a_active)
 
 __buildFooter ()
 
 __buildHeader ()
 
 __insertPath (&$a_tpl, $a_ref_id)
 insert path More...
 
 __showImageByStatus (&$tpl, $a_status, $tpl_prefix="")
 
__initTableGUI ()
 
 __showObjectDetails (&$info, $item_id=0, $add_section=true)
 show details about current object. More...
 
 __appendUserInfo (&$info, $a_user)
 
 __appendLPDetails (&$info, $item_id, $user_id)
 
 __sort ($a_ids, $a_table, $a_field, $a_id_name)
 Function that sorts ids by a given table field using WHERE IN E.g: __sort(array(6,7),'usr_data','lastname','usr_id') => sorts by lastname. More...
 
 __getPercent ($max, $reached)
 
 __readItemStatusInfo ($a_items)
 
 __getLegendHTML ()
 
 __showEditUser ($a_user_id, $a_ref_id, $a_cancel, $a_sub_id=false)
 
 __updateUser ($user_id, $obj_id)
 

Static Public Member Functions

static _showImageByStatus (&$tpl, $a_status, $tpl_prefix="")
 
static _getImagePathForStatus ($a_status)
 Get image path for status. More...
 
static _getStatusText ($a_status, $a_lng=null)
 Get status alt text. More...
 
static __readStatus ($a_obj_id, $user_id)
 
static isObjectOffline ($a_obj_id, $a_type=null)
 

Data Fields

 $tpl = null
 
 $ctrl = null
 
 $lng = null
 
 $ref_id = 0
 
 $mode = 0
 
const LP_CONTEXT_PERSONAL_DESKTOP = 1
 
const LP_CONTEXT_ADMINISTRATION = 2
 
const LP_CONTEXT_REPOSITORY = 3
 
const LP_CONTEXT_USER_FOLDER = 4
 
const LP_CONTEXT_ORG_UNIT = 5
 
const LP_ACTIVE_SETTINGS = 1
 
const LP_ACTIVE_OBJECTS = 2
 
const LP_ACTIVE_PROGRESS = 3
 
const LP_ACTIVE_USERS = 5
 
const LP_ACTIVE_SUMMARY = 6
 
const LP_ACTIVE_OBJSTATACCESS = 7
 
const LP_ACTIVE_OBJSTATTYPES = 8
 
const LP_ACTIVE_OBJSTATDAILY = 9
 
const LP_ACTIVE_OBJSTATADMIN = 10
 
const LP_ACTIVE_MATRIX = 11
 

Protected Member Functions

 initEditUserForm ($a_user_id, $a_obj_id, $a_cancel=null)
 

Protected Attributes

 $anonymized
 
 $logger
 
 $tabs_gui
 

Detailed Description

Definition at line 21 of file class.ilLearningProgressBaseGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilLearningProgressBaseGUI::__construct (   $a_mode,
  $a_ref_id = 0,
  $a_usr_id = 0 
)

Definition at line 60 of file class.ilLearningProgressBaseGUI.php.

References $DIC, $GLOBALS, $ilCtrl, $lng, $tpl, ilObjUserTracking\_enabledUserRelatedData(), and ilObjectLP\getInstance().

61  {
62  global $DIC;
63 
64  $tpl = $DIC['tpl'];
65  $ilCtrl = $DIC['ilCtrl'];
66  $lng = $DIC['lng'];
67  $ilObjDataCache = $DIC['ilObjDataCache'];
68  $ilTabs = $DIC['ilTabs'];
69 
70  $this->tpl = $tpl;
71  $this->ctrl = $ilCtrl;
72  $this->lng = $lng;
73  $this->lng->loadLanguageModule('trac');
74  $this->tabs_gui = $ilTabs;
75 
76  $this->mode = $a_mode;
77  $this->ref_id = $a_ref_id;
78  $this->obj_id = $ilObjDataCache->lookupObjId($this->ref_id);
79  $this->obj_type = $ilObjDataCache->lookupType($this->obj_id);
80  $this->usr_id = $a_usr_id;
81 
82  $this->anonymized = (bool) !ilObjUserTracking::_enabledUserRelatedData();
83  if (!$this->anonymized && $this->obj_id) {
84  include_once "Services/Object/classes/class.ilObjectLP.php";
85  $olp = ilObjectLP::getInstance($this->obj_id);
86  $this->anonymized = $olp->isAnonymized();
87  }
88 
89  $this->logger = $GLOBALS['DIC']->logger()->trac();
90  }
global $DIC
Definition: saml.php:7
global $ilCtrl
Definition: ilias.php:18
static _enabledUserRelatedData()
check wether user related tracking is enabled or not
static getInstance($a_obj_id)
$GLOBALS['JPEG_Segment_Names']
Global Variable: XMP_tag_captions.
+ Here is the call graph for this function:

Member Function Documentation

◆ __appendLPDetails()

ilLearningProgressBaseGUI::__appendLPDetails ( $info,
  $item_id,
  $user_id 
)

Definition at line 502 of file class.ilLearningProgressBaseGUI.php.

References $comment, $DIC, $info, $mode, $type, __readStatus(), _getImagePathForStatus(), ilLearningProgress\_getProgress(), _getStatusText(), ilLPMarks\_lookupComment(), ilLPMarks\_lookupMark(), ilLPStatus\_lookupPercentage(), ilObject\_lookupTitle(), ilDatePresentation\formatDate(), ilObjectLP\getInstance(), IL_CAL_UNIX, ilUtil\img(), ilLPObjSettings\LP_MODE_SCORM, ilLPObjSettings\LP_MODE_TEST_PASSED, ilLPObjSettings\LP_MODE_TLT, ilLPObjSettings\LP_MODE_VISITS, ilDatePresentation\secondsToString(), ilObjectLP\supportsMark(), and ilObjectLP\supportsSpentSeconds().

Referenced by ilLPListOfProgressGUI\saveProgress().

503  {
504  global $DIC;
505 
506  $ilObjDataCache = $DIC['ilObjDataCache'];
507 
508  $type = $ilObjDataCache->lookupType($item_id);
509 
510  // Section learning_progress
511  // $info->addSection($this->lng->txt('trac_learning_progress'));
512  // see ilLPTableBaseGUI::parseTitle();
513  $info->addSection($this->lng->txt("trac_progress") . ": " . ilObject::_lookupTitle($item_id));
514 
515  $olp = ilObjectLP::getInstance($item_id);
516  $info->addProperty(
517  $this->lng->txt('trac_mode'),
518  $olp->getModeText($olp->getCurrentMode())
519  );
520 
521  switch ($type) {
522  case 'lm':
523  case 'htlm':
524  include_once 'Services/Tracking/classes/class.ilLearningProgress.php';
525  $progress = ilLearningProgress::_getProgress($user_id, $item_id);
526 
527  if ($progress['access_time']) {
528  $info->addProperty(
529  $this->lng->txt('last_access'),
530  ilDatePresentation::formatDate(new ilDateTime($progress['access_time'], IL_CAL_UNIX))
531  );
532  } else {
533  $info->addProperty($this->lng->txt('last_access'), $this->lng->txt('trac_not_accessed'));
534  }
535  $info->addProperty($this->lng->txt('trac_visits'), (int) $progress['visits']);
537  $info->addProperty($this->lng->txt('trac_spent_time'), ilDatePresentation::secondsToString($progress['spent_seconds']));
538  }
539  // fallthrough
540 
541  // no break
542  case 'exc':
543  case 'tst':
544  case 'file':
545  case 'mcst':
546  case 'svy':
547  case 'crs':
548  case 'sahs':
549  case 'grp':
550  case 'iass':
551  case 'copa':
552  case 'sess':
553  case 'lso':
554  // display status as image
555  include_once("./Services/Tracking/classes/class.ilLearningProgressBaseGUI.php");
556  $status = $this->__readStatus($item_id, $user_id);
558  $status_text = ilLearningProgressBaseGUI::_getStatusText($status);
559  $info->addProperty(
560  $this->lng->txt('trac_status'),
561  ilUtil::img($status_path, $status_text) . " " . $status_text
562  );
563 
564  // #15334 - see ilLPTableBaseGUI::isPercentageAvailable()
565  $mode = $olp->getCurrentMode();
566  if (in_array($mode, array(ilLPObjSettings::LP_MODE_TLT,
568  // ilLPObjSettings::LP_MODE_OBJECTIVES,
571  include_once 'Services/Tracking/classes/class.ilLPStatus.php';
572  $perc = ilLPStatus::_lookupPercentage($item_id, $user_id);
573  $info->addProperty($this->lng->txt('trac_percentage'), (int) $perc . "%");
574  }
575  break;
576 
577  }
578 
579  include_once 'Services/Tracking/classes/class.ilLPMarks.php';
580 
582  if (strlen($mark = ilLPMarks::_lookupMark($user_id, $item_id))) {
583  $info->addProperty($this->lng->txt('trac_mark'), $mark);
584  }
585  }
586 
587  if (strlen($comment = ilLPMarks::_lookupComment($user_id, $item_id))) {
588  $info->addProperty($this->lng->txt('trac_comment'), $comment);
589  }
590  }
static _getImagePathForStatus($a_status)
Get image path for status.
$type
global $DIC
Definition: saml.php:7
static _getStatusText($a_status, $a_lng=null)
Get status alt text.
static _lookupPercentage($a_obj_id, $a_user_id)
Lookup percentage.
static _lookupTitle($a_id)
lookup object title
const IL_CAL_UNIX
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false, $include_seconds=false)
Format a date public.
static secondsToString($seconds, $force_with_seconds=false, $a_lng=null)
converts seconds to string: Long: 7 days 4 hour(s) ...
Date and time handling
$comment
Definition: buildRTE.php:83
static img($a_src, $a_alt=null, $a_width="", $a_height="", $a_border=0, $a_id="", $a_class="")
Build img tag.
static supportsMark($a_obj_type)
static __readStatus($a_obj_id, $user_id)
static supportsSpentSeconds($a_obj_type)
static _lookupMark($a_usr_id, $a_obj_id)
static _lookupComment($a_usr_id, $a_obj_id)
$info
Definition: index.php:5
static getInstance($a_obj_id)
static _getProgress($a_user_id, $a_obj_id)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __appendUserInfo()

ilLearningProgressBaseGUI::__appendUserInfo ( $info,
  $a_user 
)

Definition at line 473 of file class.ilLearningProgressBaseGUI.php.

References $DIC, $ilUser, $info, ilDatePresentation\formatDate(), ilObjectFactory\getInstanceByObjId(), IL_CAL_DATETIME, and ilDatePresentation\secondsToString().

Referenced by ilLPListOfProgressGUI\__showProgressList(), ilLPListOfObjectsGUI\editUser(), ilLPListOfProgressGUI\saveProgress(), and ilLPListOfObjectsGUI\userDetails().

474  {
475  global $DIC;
476 
477  $ilUser = $DIC['ilUser'];
478 
479  // #13525 - irrelevant personal data is not to be presented
480  return;
481 
482  if (!is_object($a_user)) {
483  $a_user = ilObjectFactory::getInstanceByObjId($a_user);
484  }
485 
486  if ($a_user->getId() != $ilUser->getId()) {
487  $info->addSection($this->lng->txt("trac_user_data"));
488  // $info->addProperty($this->lng->txt('username'),$a_user->getLogin());
489  // $info->addProperty($this->lng->txt('name'),$a_user->getFullname());
490  $info->addProperty(
491  $this->lng->txt('last_login'),
492  ilDatePresentation::formatDate(new ilDateTime($a_user->getLastLogin(), IL_CAL_DATETIME))
493  );
494  $info->addProperty(
495  $this->lng->txt('trac_total_online'),
496  ilDatePresentation::secondsToString(ilOnlineTracking::getOnlineTime($a_user->getId()))
497  );
498  return true;
499  }
500  }
const IL_CAL_DATETIME
global $DIC
Definition: saml.php:7
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false, $include_seconds=false)
Format a date public.
static secondsToString($seconds, $force_with_seconds=false, $a_lng=null)
converts seconds to string: Long: 7 days 4 hour(s) ...
Date and time handling
$ilUser
Definition: imgupload.php:18
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
$info
Definition: index.php:5
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildFooter()

ilLearningProgressBaseGUI::__buildFooter ( )

Definition at line 271 of file class.ilLearningProgressBaseGUI.php.

References getMode().

Referenced by ilLearningProgressGUI\executeCommand().

272  {
273  switch ($this->getMode()) {
274  case self::LP_CONTEXT_PERSONAL_DESKTOP:
275 
276  $this->tpl->show(true);
277  }
278  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildHeader()

ilLearningProgressBaseGUI::__buildHeader ( )

Definition at line 280 of file class.ilLearningProgressBaseGUI.php.

References getMode(), and ilUtil\infoPanel().

Referenced by ilLearningProgressGUI\executeCommand().

281  {
282  if ($this->getMode() == self::LP_CONTEXT_PERSONAL_DESKTOP) {
283  //$this->tpl->setTitle($this->lng->txt("learning_progress"));
284 
285  // set locator
286  /*
287  $this->tpl->setVariable("TXT_LOCATOR", $this->lng->txt("locator"));
288  $this->tpl->touchBlock("locator_separator");
289  $this->tpl->touchBlock("locator_item");
290  //$this->tpl->setCurrentBlock("locator_item");
291  //$this->tpl->setVariable("ITEM", $this->lng->txt("personal_desktop"));
292  //$this->tpl->setVariable("LINK_ITEM",
293  // $this->ctrl->getLinkTargetByClass("ilpersonaldesktopgui"));
294  //$this->tpl->parseCurrentBlock();
295 
296  $this->tpl->setCurrentBlock("locator_item");
297  $this->tpl->setVariable("ITEM", $this->lng->txt("learning_progress"));
298  $this->tpl->setVariable("LINK_ITEM",
299  $this->ctrl->getLinkTargetByClass('illearningprogressgui'));
300  $this->tpl->parseCurrentBlock();
301  */
302 
303  // display infopanel if something happened
305  }
306  }
static infoPanel($a_keep=true)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __getDefaultCommand()

ilLearningProgressBaseGUI::__getDefaultCommand ( )

Definition at line 124 of file class.ilLearningProgressBaseGUI.php.

Referenced by ilLPListOfProgressGUI\executeCommand(), ilLPListOfSettingsGUI\executeCommand(), ilLPListOfObjectsGUI\executeCommand(), and ilLPObjectStatisticsGUI\executeCommand().

125  {
126  if (strlen($cmd = $this->ctrl->getCmd())) {
127  return $cmd;
128  }
129  return 'show';
130  }
+ Here is the caller graph for this function:

◆ __getLegendHTML()

ilLearningProgressBaseGUI::__getLegendHTML ( )

Definition at line 692 of file class.ilLearningProgressBaseGUI.php.

References $DIC, $lng, $tpl, ilUtil\getImagePath(), ilPanelGUI\getInstance(), and ilPanelGUI\PANEL_STYLE_SECONDARY.

Referenced by ilLPListOfObjectsGUI\__listObjects(), ilLPListOfProgressGUI\__showProgressList(), ilLPListOfObjectsGUI\__showUsersList(), ilLPListOfProgressGUI\saveProgress(), ilLPListOfObjectsGUI\showUserObjectMatrix(), and ilLPListOfObjectsGUI\userDetails().

693  {
694  global $DIC;
695 
696  $lng = $DIC['lng'];
697 
698  $tpl = new ilTemplate("tpl.lp_legend.html", true, true, "Services/Tracking");
699  $tpl->setVariable(
700  "IMG_NOT_ATTEMPTED",
701  ilUtil::getImagePath("scorm/not_attempted.svg")
702  );
703  $tpl->setVariable(
704  "IMG_IN_PROGRESS",
705  ilUtil::getImagePath("scorm/incomplete.svg")
706  );
707  $tpl->setVariable(
708  "IMG_COMPLETED",
709  ilUtil::getImagePath("scorm/completed.svg")
710  );
711  $tpl->setVariable(
712  "IMG_FAILED",
713  ilUtil::getImagePath("scorm/failed.svg")
714  );
715  $tpl->setVariable(
716  "TXT_NOT_ATTEMPTED",
717  $lng->txt("trac_not_attempted")
718  );
719  $tpl->setVariable(
720  "TXT_IN_PROGRESS",
721  $lng->txt("trac_in_progress")
722  );
723  $tpl->setVariable(
724  "TXT_COMPLETED",
725  $lng->txt("trac_completed")
726  );
727  $tpl->setVariable(
728  "TXT_FAILED",
729  $lng->txt("trac_failed")
730  );
731 
732  include_once "Services/UIComponent/Panel/classes/class.ilPanelGUI.php";
733  $panel = ilPanelGUI::getInstance();
734  $panel->setPanelStyle(ilPanelGUI::PANEL_STYLE_SECONDARY);
735  $panel->setBody($tpl->get());
736 
737  return $panel->getHTML();
738  }
global $DIC
Definition: saml.php:7
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
special template class to simplify handling of ITX/PEAR
static getInstance()
Get instance.
const PANEL_STYLE_SECONDARY
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __getPercent()

ilLearningProgressBaseGUI::__getPercent (   $max,
  $reached 
)

Definition at line 654 of file class.ilLearningProgressBaseGUI.php.

655  {
656  if (!$max) {
657  return "0%";
658  }
659 
660  return sprintf("%d%%", $reached / $max * 100);
661  }

◆ __initTableGUI()

& ilLearningProgressBaseGUI::__initTableGUI ( )

Definition at line 429 of file class.ilLearningProgressBaseGUI.php.

430  {
431  include_once "./Services/Table/classes/class.ilTableGUI.php";
432 
433  return new ilTableGUI(0, false);
434  }
Class ilTableGUI.

◆ __insertPath()

ilLearningProgressBaseGUI::__insertPath ( $a_tpl,
  $a_ref_id 
)

insert path

Definition at line 311 of file class.ilLearningProgressBaseGUI.php.

References $data, $DIC, $path, and $tree.

312  {
313  global $DIC;
314 
315  $tree = $DIC['tree'];
316 
317  $path_arr = $tree->getPathFull($a_ref_id);
318  $counter = 0;
319  foreach ($tree->getPathFull($a_ref_id) as $data) {
320  if ($counter++) {
321  $path .= " -> ";
322  }
323  $path .= $data['title'];
324  }
325  $a_tpl->setCurrentBlock("path_item");
326  $a_tpl->setVariable("PATH_ITEM", $path);
327  $a_tpl->parseCurrentBlock();
328 
329  $a_tpl->setCurrentBlock("path");
330  $a_tpl->parseCurrentBlock();
331 
332  return $path;
333  }
$path
Definition: aliased.php:25
global $DIC
Definition: saml.php:7
$data
Definition: bench.php:6

◆ __readItemStatusInfo()

ilLearningProgressBaseGUI::__readItemStatusInfo (   $a_items)

Definition at line 663 of file class.ilLearningProgressBaseGUI.php.

References $DIC, ilMDEducational\_getTypicalLearningTimeSeconds(), ilLPObjSettings\_lookupVisits(), ilObjectLP\getInstance(), ilLPObjSettings\LP_MODE_SCORM, ilLPObjSettings\LP_MODE_TLT, and ilLPObjSettings\LP_MODE_VISITS.

664  {
665  global $DIC;
666 
667  $ilObjDataCache = $DIC['ilObjDataCache'];
668 
669  include_once 'Services/Object/classes/class.ilObjectLP.php';
670 
671  foreach ($a_items as $item_id) {
672  $olp = ilObjectLP::getInstance($item_id);
673 
674  $this->obj_data[$item_id]['type'] = $ilObjDataCache->lookupType($item_id);
675  $this->obj_data[$item_id]['mode'] = $olp->getCurrentMode();
676  if ($this->obj_data[$item_id]['mode'] == ilLPObjSettings::LP_MODE_TLT) {
677  include_once './Services/MetaData/classes/class.ilMDEducational.php';
678  $this->obj_data[$item_id]['tlt'] = ilMDEducational::_getTypicalLearningTimeSeconds($item_id);
679  }
680  if ($this->obj_data[$item_id]['mode'] == ilLPObjSettings::LP_MODE_VISITS) {
681  $this->obj_data[$item_id]['visits'] = ilLPObjSettings::_lookupVisits($item_id);
682  }
683  if ($this->obj_data[$item_id]['mode'] == ilLPObjSettings::LP_MODE_SCORM) {
684  $collection = $olp->getCollectionInstance();
685  if ($collection) {
686  $this->obj_data[$item_id]['scos'] = count($collection->getItems());
687  }
688  }
689  }
690  }
static _getTypicalLearningTimeSeconds($a_rbac_id, $a_obj_id=0)
global $DIC
Definition: saml.php:7
static _lookupVisits($a_obj_id)
static getInstance($a_obj_id)
+ Here is the call graph for this function:

◆ __readStatus()

static ilLearningProgressBaseGUI::__readStatus (   $a_obj_id,
  $user_id 
)
static

Definition at line 592 of file class.ilLearningProgressBaseGUI.php.

References ilLPStatus\_lookupStatus(), ilLPStatus\LP_STATUS_COMPLETED, ilLPStatus\LP_STATUS_COMPLETED_NUM, ilLPStatus\LP_STATUS_FAILED, ilLPStatus\LP_STATUS_FAILED_NUM, ilLPStatus\LP_STATUS_IN_PROGRESS, ilLPStatus\LP_STATUS_IN_PROGRESS_NUM, ilLPStatus\LP_STATUS_NOT_ATTEMPTED, and ilLPStatus\LP_STATUS_NOT_ATTEMPTED_NUM.

Referenced by __appendLPDetails(), and ilObjSCORMLearningModule\exportSelected().

593  {
594  include_once 'Services/Tracking/classes/class.ilLPStatus.php';
595  $status = ilLPStatus::_lookupStatus($a_obj_id, $user_id);
596 
597  include_once("./Services/Tracking/classes/class.ilLPStatus.php");
598  switch ($status) {
601 
604 
607 
610 
611  default:
612  return $status;
613  }
614  }
const LP_STATUS_COMPLETED_NUM
const LP_STATUS_NOT_ATTEMPTED
const LP_STATUS_IN_PROGRESS_NUM
const LP_STATUS_IN_PROGRESS
const LP_STATUS_FAILED
const LP_STATUS_NOT_ATTEMPTED_NUM
const LP_STATUS_COMPLETED
static _lookupStatus($a_obj_id, $a_user_id, $a_create=true)
Lookup status.
const LP_STATUS_FAILED_NUM
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __setSubTabs()

ilLearningProgressBaseGUI::__setSubTabs (   $a_active)

Definition at line 132 of file class.ilLearningProgressBaseGUI.php.

References $DIC, ilObjUserTracking\_enabledUserRelatedData(), ilObjUserTracking\_hasLearningProgressLearner(), ilObjUserTracking\_hasLearningProgressOtherUsers(), ilLearningProgressAccess\checkPermission(), ilObjectLP\getInstance(), getMode(), getRefId(), getUserId(), isAnonymized(), and ilObjectLP\supportsMatrixView().

Referenced by ilLearningProgressGUI\executeCommand().

133  {
134  global $DIC;
135 
136  $rbacsystem = $DIC['rbacsystem'];
137  $ilObjDataCache = $DIC['ilObjDataCache'];
138 
139 
140 
141  switch ($this->getMode()) {
142  case self::LP_CONTEXT_PERSONAL_DESKTOP:
143 
144  include_once("Services/Tracking/classes/class.ilObjUserTracking.php");
147  $this->tabs_gui->addSubTabTarget(
148  'trac_progress',
149  $this->ctrl->getLinkTargetByClass('illplistofprogressgui', ''),
150  "",
151  "",
152  "",
153  $a_active == self::LP_ACTIVE_PROGRESS
154  );
155  }
156 
158  $this->tabs_gui->addSubTabTarget(
159  'trac_objects',
160  $this->ctrl->getLinkTargetByClass("illplistofobjectsgui", ''),
161  "",
162  "",
163  "",
164  $a_active == self::LP_ACTIVE_OBJECTS
165  );
166  }
167  break;
168 
169 
170  case self::LP_CONTEXT_REPOSITORY:
171  // #12771 - do not show status if learning progress is deactivated
172  include_once './Services/Object/classes/class.ilObjectLP.php';
173  $olp = ilObjectLP::getInstance($this->obj_id);
174  if ($olp->isActive()) {
175  include_once './Services/Tracking/classes/class.ilLearningProgressAccess.php';
176  $has_read = ilLearningProgressAccess::checkPermission('read_learning_progress', $this->getRefId());
177 
178  if ($this->isAnonymized() || !$has_read) {
179  $this->ctrl->setParameterByClass('illplistofprogressgui', 'user_id', $this->getUserId());
180  $this->tabs_gui->addSubTabTarget(
181  'trac_progress',
182  $this->ctrl->getLinkTargetByClass('illplistofprogressgui', ''),
183  "",
184  "",
185  "",
186  $a_active == self::LP_ACTIVE_PROGRESS
187  );
188  } else {
189  // Check if it is a course
190  $sub_tab = ($ilObjDataCache->lookupType($ilObjDataCache->lookupObjId($this->getRefId())) == 'crs') ?
191  'trac_crs_objects' :
192  'trac_objects';
193 
194  $this->tabs_gui->addSubTabTarget(
195  $sub_tab,
196  $this->ctrl->getLinkTargetByClass("illplistofobjectsgui", ''),
197  "",
198  "",
199  "",
200  $a_active == self::LP_ACTIVE_OBJECTS
201  );
202  }
203 
204  if ($has_read) {
205  if (!$this->isAnonymized() &&
206  !($olp instanceof ilPluginLP) &&
207  ilObjectLP::supportsMatrixView($this->obj_type)) {
208  $this->tabs_gui->addSubTabTarget(
209  "trac_matrix",
210  $this->ctrl->getLinkTargetByClass("illplistofobjectsgui", 'showUserObjectMatrix'),
211  "",
212  "",
213  "",
214  $a_active == self::LP_ACTIVE_MATRIX
215  );
216  }
217 
218  $this->tabs_gui->addSubTabTarget(
219  "trac_summary",
220  $this->ctrl->getLinkTargetByClass("illplistofobjectsgui", 'showObjectSummary'),
221  "",
222  "",
223  "",
224  $a_active == self::LP_ACTIVE_SUMMARY
225  );
226  }
227  }
228  include_once './Services/Tracking/classes/class.ilLearningProgressAccess.php';
229  if (!($olp instanceof ilPluginLP) &&
230  ilLearningProgressAccess::checkPermission('edit_learning_progress', $this->getRefId())) {
231  $this->tabs_gui->addSubTabTarget(
232  'trac_settings',
233  $this->ctrl->getLinkTargetByClass('illplistofsettingsgui', ''),
234  "",
235  "",
236  "",
237  $a_active == self::LP_ACTIVE_SETTINGS
238  );
239  }
240  break;
241 
242  case self::LP_CONTEXT_ADMINISTRATION:
243  /*
244  $this->tabs_gui->addSubTabTarget('trac_progress',
245  $this->ctrl->getLinkTargetByClass('illplistofprogressgui',''),
246  "","","",$a_active == self::LP_ACTIVE_PROGRESS);
247  */
248  $this->tabs_gui->addSubTabTarget(
249  'trac_objects',
250  $this->ctrl->getLinkTargetByClass("illplistofobjectsgui", ''),
251  "",
252  "",
253  "",
254  $a_active == self::LP_ACTIVE_OBJECTS
255  );
256  break;
257 
258  case self::LP_CONTEXT_USER_FOLDER:
259  case self::LP_CONTEXT_ORG_UNIT:
260  // No tabs default class is lpprogressgui
261  break;
262 
263  default:
264  die('No valid mode given');
265  break;
266  }
267 
268  return true;
269  }
global $DIC
Definition: saml.php:7
static checkPermission($a_permission, $a_ref_id, $a_user_id=null)
wrapper for rbac access checks
static _enabledUserRelatedData()
check wether user related tracking is enabled or not
static supportsMatrixView($a_obj_type)
static getInstance($a_obj_id)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __showEditUser()

ilLearningProgressBaseGUI::__showEditUser (   $a_user_id,
  $a_ref_id,
  $a_cancel,
  $a_sub_id = false 
)

Definition at line 797 of file class.ilLearningProgressBaseGUI.php.

References $DIC, $form, $ilCtrl, ilObject\_lookupObjId(), and initEditUserForm().

Referenced by ilLPListOfObjectsGUI\editUser().

798  {
799  global $DIC;
800 
801  $ilCtrl = $DIC['ilCtrl'];
802 
803  if (!$a_sub_id) {
804  $obj_id = ilObject::_lookupObjId($a_ref_id);
805  } else {
806  $ilCtrl->setParameter($this, 'userdetails_id', $a_sub_id);
807  $obj_id = ilObject::_lookupObjId($a_sub_id);
808  }
809 
810  $ilCtrl->setParameter($this, 'user_id', $a_user_id);
811  $ilCtrl->setParameter($this, 'details_id', $a_ref_id);
812 
813  $form = $this->initEditUserForm($a_user_id, $obj_id, $a_cancel);
814 
815  return $form->getHTML();
816  }
global $DIC
Definition: saml.php:7
global $ilCtrl
Definition: ilias.php:18
initEditUserForm($a_user_id, $a_obj_id, $a_cancel=null)
if(isset($_POST['submit'])) $form
static _lookupObjId($a_id)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __showImageByStatus()

ilLearningProgressBaseGUI::__showImageByStatus ( $tpl,
  $a_status,
  $tpl_prefix = "" 
)

Definition at line 335 of file class.ilLearningProgressBaseGUI.php.

References $tpl, and _showImageByStatus().

336  {
337  return ilLearningProgressBaseGUI::_showImageByStatus($tpl, $a_status, $tpl_prefix);
338  }
static _showImageByStatus(&$tpl, $a_status, $tpl_prefix="")
+ Here is the call graph for this function:

◆ __showObjectDetails()

ilLearningProgressBaseGUI::__showObjectDetails ( $info,
  $item_id = 0,
  $add_section = true 
)

show details about current object.

Uses an existing info_gui object.

Definition at line 440 of file class.ilLearningProgressBaseGUI.php.

References $DIC, $info, $mode, ilMDEducational\_getTypicalLearningTimeSeconds(), ilLPObjSettings\_lookupVisits(), ilObjectLP\getInstance(), ilLPObjSettings\LP_MODE_VISITS, and ilDatePresentation\secondsToString().

Referenced by ilLPListOfObjectsGUI\details(), ilLPListOfObjectsGUI\editUser(), ilLPListOfProgressGUI\saveProgress(), ilLPListOfObjectsGUI\showUserObjectMatrix(), and ilLPListOfObjectsGUI\userDetails().

441  {
442  global $DIC;
443 
444  $ilObjDataCache = $DIC['ilObjDataCache'];
445 
446  $details_id = $item_id ? $item_id : $this->details_id;
447 
448  include_once 'Services/Object/classes/class.ilObjectLP.php';
449  $olp = ilObjectLP::getInstance($details_id);
450  $mode = $olp->getCurrentMode();
451 
452  include_once './Services/MetaData/classes/class.ilMDEducational.php';
455  // Section object details
456  if ($add_section) {
457  $info->addSection($this->lng->txt('details'));
458  }
459 
461  $info->addProperty($this->lng->txt('trac_required_visits'), ilLPObjSettings::_lookupVisits($details_id));
462  }
463 
464  if ($seconds = ilMDEducational::_getTypicalLearningTimeSeconds($details_id)) {
465  $info->addProperty($this->lng->txt('meta_typical_learning_time'), ilDatePresentation::secondsToString($seconds));
466  }
467 
468  return true;
469  }
470  return false;
471  }
static _getTypicalLearningTimeSeconds($a_rbac_id, $a_obj_id=0)
global $DIC
Definition: saml.php:7
static secondsToString($seconds, $force_with_seconds=false, $a_lng=null)
converts seconds to string: Long: 7 days 4 hour(s) ...
static _lookupVisits($a_obj_id)
$info
Definition: index.php:5
static getInstance($a_obj_id)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __sort()

ilLearningProgressBaseGUI::__sort (   $a_ids,
  $a_table,
  $a_field,
  $a_id_name 
)

Function that sorts ids by a given table field using WHERE IN E.g: __sort(array(6,7),'usr_data','lastname','usr_id') => sorts by lastname.

Parameters
arrayArray of ids
stringtable name
stringtable field
stringid name
Returns
array sorted ids

protected

Definition at line 628 of file class.ilLearningProgressBaseGUI.php.

References $DIC, $ilDB, $query, $res, $row, and ilDBConstants\FETCHMODE_OBJECT.

629  {
630  global $DIC;
631 
632  $ilDB = $DIC['ilDB'];
633 
634  if (!$a_ids) {
635  return array();
636  }
637 
638  // comment by mjansen: Requesting database in gui classes?
639 
640  // use database to sort user array
641  $where = "WHERE " . $ilDB->in($a_id_name, $a_ids, false, 'integer') . " ";
642 
643  $query = "SELECT " . $a_id_name . " FROM " . $a_table . " " .
644  $where .
645  "ORDER BY " . $a_field;
646 
647  $res = $ilDB->query($query);
648  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
649  $ids[] = $row->$a_id_name;
650  }
651  return $ids ? $ids : array();
652  }
global $DIC
Definition: saml.php:7
foreach($_POST as $key=> $value) $res
$query
$row
global $ilDB

◆ __updateUser()

ilLearningProgressBaseGUI::__updateUser (   $user_id,
  $obj_id 
)

Definition at line 818 of file class.ilLearningProgressBaseGUI.php.

References $form, ilLPStatusWrapper\_updateStatus(), and initEditUserForm().

Referenced by ilLPListOfObjectsGUI\updateUser().

819  {
820  $form = $this->initEditUserForm($user_id, $obj_id);
821  if ($form->checkInput()) {
822  include_once 'Services/Tracking/classes/class.ilLPMarks.php';
823 
824  $marks = new ilLPMarks($obj_id, $user_id);
825  $marks->setMark($form->getInput("mark"));
826  $marks->setComment($form->getInput("comment"));
827 
828  $do_lp = false;
829 
830  // status/completed is optional
831  $status = $form->getItemByPostVar("completed");
832  if (is_object($status)) {
833  if ($marks->getCompleted() != $form->getInput("completed")) {
834  $marks->setCompleted($form->getInput("completed"));
835  $do_lp = true;
836  }
837  }
838 
839  $marks->update();
840 
841  // #11600
842  if ($do_lp) {
843  include_once("./Services/Tracking/classes/class.ilLPStatusWrapper.php");
844  ilLPStatusWrapper::_updateStatus($obj_id, $user_id);
845  }
846  }
847  }
static _updateStatus($a_obj_id, $a_usr_id, $a_obj=null, $a_percentage=false, $a_force_raise=false)
Update status.
initEditUserForm($a_user_id, $a_obj_id, $a_cancel=null)
if(isset($_POST['submit'])) $form
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _getImagePathForStatus()

static ilLearningProgressBaseGUI::_getImagePathForStatus (   $a_status)
static

Get image path for status.

Definition at line 359 of file class.ilLearningProgressBaseGUI.php.

References ilUtil\getImagePath(), ilLPStatus\LP_STATUS_COMPLETED, ilLPStatus\LP_STATUS_COMPLETED_NUM, ilLPStatus\LP_STATUS_FAILED, ilLPStatus\LP_STATUS_FAILED_NUM, ilLPStatus\LP_STATUS_IN_PROGRESS, ilLPStatus\LP_STATUS_IN_PROGRESS_NUM, ilLPStatus\LP_STATUS_NOT_ATTEMPTED, ilLPStatus\LP_STATUS_NOT_PARTICIPATED, ilLPStatus\LP_STATUS_NOT_REGISTERED, ilLPStatus\LP_STATUS_PARTICIPATED, and ilLPStatus\LP_STATUS_REGISTERED.

Referenced by __appendLPDetails(), ilLPObjectStatisticsLPTableGUI\__construct(), _showImageByStatus(), ilLMExplorerGUI\checkLPIcon(), ilLPProgressTableGUI\fillRow(), ilTrUserObjectsPropsTableGUI\fillRow(), ilLPObjectStatisticsLPTableGUI\getDetailItems(), ilTrSummaryTableGUI\getItems(), ilDclRecordListTableGUI\getStatus(), ilMyStaffGUI\getUserLpStatusAsHtml(), ilLearningProgressGUI\initCollectionManualForm(), ilSCORMTrackingItemsTableGUI\parseValue(), ilSCORM2004TrackingItemsTableGUI\parseValue(), ilLPTableBaseGUI\parseValue(), ilLPStatus\preloadListGUIData(), ilPortfolioPageGUI\renderMyCourses(), and ilLearningProgressGUI\showtlt().

360  {
361  include_once("./Services/Tracking/classes/class.ilLPStatus.php");
362 
363  // constants are either number or string, so make comparison string-based
364  switch ((string) $a_status) {
368  return ilUtil::getImagePath('scorm/incomplete.svg');
369  break;
370 
374  return ilUtil::getImagePath('scorm/complete.svg');
375  break;
376 
380  return ilUtil::getImagePath('scorm/not_attempted.svg');
381  break;
382 
385  return ilUtil::getImagePath('scorm/failed.svg');
386  break;
387 
388  default:
389  return ilUtil::getImagePath('scorm/not_attempted.svg');
390  break;
391  }
392  }
const LP_STATUS_COMPLETED_NUM
const LP_STATUS_PARTICIPATED
const LP_STATUS_NOT_ATTEMPTED
const LP_STATUS_IN_PROGRESS_NUM
const LP_STATUS_IN_PROGRESS
const LP_STATUS_NOT_PARTICIPATED
const LP_STATUS_FAILED
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
const LP_STATUS_REGISTERED
const LP_STATUS_COMPLETED
const LP_STATUS_NOT_REGISTERED
const LP_STATUS_FAILED_NUM
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _getStatusText()

static ilLearningProgressBaseGUI::_getStatusText (   $a_status,
  $a_lng = null 
)
static

Get status alt text.

Definition at line 397 of file class.ilLearningProgressBaseGUI.php.

References $DIC, $lng, ilLPStatus\LP_STATUS_COMPLETED, ilLPStatus\LP_STATUS_COMPLETED_NUM, ilLPStatus\LP_STATUS_FAILED, ilLPStatus\LP_STATUS_FAILED_NUM, ilLPStatus\LP_STATUS_IN_PROGRESS, ilLPStatus\LP_STATUS_IN_PROGRESS_NUM, ilLPStatus\LP_STATUS_NOT_ATTEMPTED, and ilLPStatus\LP_STATUS_NOT_ATTEMPTED_NUM.

Referenced by __appendLPDetails(), ilLPObjectStatisticsLPTableGUI\__construct(), ilTrSummaryTableGUI\fillHeaderCSV(), ilTrSummaryTableGUI\fillHeaderExcel(), ilLPProgressTableGUI\fillRow(), ilTrUserObjectsPropsTableGUI\fillRow(), ilSCORMTrackingItemsTableGUI\fillRowCSV(), ilSCORM2004TrackingItemsTableGUI\fillRowCSV(), ilLPProgressTableGUI\fillRowCSV(), ilTrObjectUsersPropsTableGUI\fillRowCSV(), ilTrUserObjectsPropsTableGUI\fillRowCSV(), ilTrMatrixTableGUI\fillRowCSV(), ilSCORMTrackingItemsTableGUI\fillRowExcel(), ilSCORM2004TrackingItemsTableGUI\fillRowExcel(), ilLPProgressTableGUI\fillRowExcel(), ilTrObjectUsersPropsTableGUI\fillRowExcel(), ilTrUserObjectsPropsTableGUI\fillRowExcel(), ilTrMatrixTableGUI\fillRowExcel(), ilScormMailTemplateLPContext\getDescription(), ilCourseMailTemplateTutorContext\getDescription(), ilLPObjectStatisticsLPTableGUI\getDetailItems(), ilLPObjectStatisticsLPTableGUI\getGraph(), ilTrSummaryTableGUI\getItems(), ilMyStaffGUI\getUserLpStatusAsHtml(), ilMyStaffGUI\getUserLpStatusAsText(), ilLearningProgressGUI\initCollectionManualForm(), ilLPObjectStatisticsLPTableGUI\initFilter(), ilSCORMTrackingItemsTableGUI\parseValue(), ilSCORM2004TrackingItemsTableGUI\parseValue(), ilLPTableBaseGUI\parseValue(), ilLPStatus\preloadListGUIData(), ilPortfolioPageGUI\renderMyCourses(), and ilLearningProgressGUI\showtlt().

398  {
399  global $DIC;
400 
401  $lng = $DIC['lng'];
402 
403  if (!$a_lng) {
404  $a_lng = $lng;
405  }
406 
407  include_once("./Services/Tracking/classes/class.ilLPStatus.php");
408  //echo "#".$a_status."#";
409  switch ($a_status) {
411  return $a_lng->txt(ilLPStatus::LP_STATUS_IN_PROGRESS);
412 
414  return $a_lng->txt(ilLPStatus::LP_STATUS_COMPLETED);
415 
417  return $a_lng->txt(ilLPStatus::LP_STATUS_FAILED);
418 
419  default:
420  if ($a_status === ilLPStatus::LP_STATUS_NOT_ATTEMPTED_NUM) {
421  return $a_lng->txt(ilLPStatus::LP_STATUS_NOT_ATTEMPTED);
422  }
423  return $a_lng->txt($a_status);
424  }
425  }
const LP_STATUS_COMPLETED_NUM
global $DIC
Definition: saml.php:7
const LP_STATUS_NOT_ATTEMPTED
const LP_STATUS_IN_PROGRESS_NUM
const LP_STATUS_IN_PROGRESS
const LP_STATUS_FAILED
const LP_STATUS_NOT_ATTEMPTED_NUM
const LP_STATUS_COMPLETED
const LP_STATUS_FAILED_NUM
+ Here is the caller graph for this function:

◆ _showImageByStatus()

static ilLearningProgressBaseGUI::_showImageByStatus ( $tpl,
  $a_status,
  $tpl_prefix = "" 
)
static

Definition at line 341 of file class.ilLearningProgressBaseGUI.php.

References $DIC, $lng, $tpl, and _getImagePathForStatus().

Referenced by __showImageByStatus().

342  {
343  global $DIC;
344 
345  $lng = $DIC['lng'];
346 
347  $tpl->setVariable(
348  $tpl_prefix . "STATUS_IMG",
350  );
351  $tpl->setVariable($tpl_prefix . "STATUS_ALT", $lng->txt($a_status));
352 
353  return true;
354  }
static _getImagePathForStatus($a_status)
Get image path for status.
global $DIC
Definition: saml.php:7
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getMode()

◆ getObjId()

◆ getRefId()

◆ getUserId()

ilLearningProgressBaseGUI::getUserId ( )

Definition at line 112 of file class.ilLearningProgressBaseGUI.php.

References $_GET.

Referenced by __setSubTabs(), ilLearningProgressGUI\executeCommand(), ilLPListOfProgressGUI\executeCommand(), and ilLPListOfProgressGUI\show().

113  {
114  if ($this->usr_id) {
115  return $this->usr_id;
116  }
117  if ((int) $_GET['user_id']) {
118  return (int) $_GET['user_id'];
119  }
120  return 0;
121  }
$_GET["client_id"]
+ Here is the caller graph for this function:

◆ initEditUserForm()

ilLearningProgressBaseGUI::initEditUserForm (   $a_user_id,
  $a_obj_id,
  $a_cancel = null 
)
protected

Definition at line 740 of file class.ilLearningProgressBaseGUI.php.

References $DIC, $form, $ilCtrl, $lng, $user, ilLPStatus\_lookupStatus(), ilObject\_lookupTitle(), ilObject\_lookupType(), ilObjectLP\getInstance(), ilUserUtil\getNamePresentation(), ilLPObjSettings\LP_MODE_MANUAL, ilLPObjSettings\LP_MODE_MANUAL_BY_TUTOR, ilLPStatus\LP_STATUS_COMPLETED_NUM, ilCheckboxInputGUI\setChecked(), ilTextInputGUI\setValue(), and ilObjectLP\supportsMark().

Referenced by __showEditUser(), and __updateUser().

741  {
742  global $DIC;
743 
744  $lng = $DIC['lng'];
745  $ilCtrl = $DIC['ilCtrl'];
746 
747  include_once 'Services/Object/classes/class.ilObjectLP.php';
748  $olp = ilObjectLP::getInstance($a_obj_id);
749  $lp_mode = $olp->getCurrentMode();
750 
751  include_once './Services/Form/classes/class.ilPropertyFormGUI.php';
752  $form = new ilPropertyFormGUI();
753 
754  $form->setFormAction($ilCtrl->getFormAction($this, "updateUser"));
755 
756  $form->setTitle($lng->txt("edit") . ": " . ilObject::_lookupTitle($a_obj_id));
757  $form->setDescription($lng->txt('trac_mode') . ": " . $olp->getModeText($lp_mode));
758 
759  include_once "Services/User/classes/class.ilUserUtil.php";
760  $user = new ilNonEditableValueGUI($lng->txt("user"), null, true);
761  $user->setValue(ilUserUtil::getNamePresentation($a_user_id, true));
762  $form->addItem($user);
763 
764  include_once 'Services/Tracking/classes/class.ilLPMarks.php';
765  $marks = new ilLPMarks($a_obj_id, $a_user_id);
766 
768  $mark = new ilTextInputGUI($lng->txt("trac_mark"), "mark");
769  $mark->setValue($marks->getMark());
770  $mark->setMaxLength(32);
771  $form->addItem($mark);
772  }
773 
774  $comm = new ilTextInputGUI($lng->txt("trac_comment"), "comment");
775  $comm->setValue($marks->getComment());
776  $form->addItem($comm);
777 
778  if ($lp_mode == ilLPObjSettings::LP_MODE_MANUAL ||
780  include_once("./Services/Tracking/classes/class.ilLPStatus.php");
781  $completed = ilLPStatus::_lookupStatus($a_obj_id, $a_user_id);
782 
783  $status = new ilCheckboxInputGUI($lng->txt('trac_completed'), "completed");
784  $status->setChecked(($completed == ilLPStatus::LP_STATUS_COMPLETED_NUM));
785  $form->addItem($status);
786  }
787 
788  $form->addCommandButton("updateUser", $lng->txt('save'));
789 
790  if ($a_cancel) {
791  $form->addCommandButton($a_cancel, $lng->txt('cancel'));
792  }
793 
794  return $form;
795  }
const LP_STATUS_COMPLETED_NUM
This class represents a property form user interface.
global $DIC
Definition: saml.php:7
This class represents a checkbox property in a property form.
static _lookupTitle($a_id)
lookup object title
global $ilCtrl
Definition: ilias.php:18
setChecked($a_checked)
Set Checked.
if(isset($_POST['submit'])) $form
This class represents a text property in a property form.
static getNamePresentation( $a_user_id, $a_user_image=false, $a_profile_link=false, $a_profile_back_link="", $a_force_first_lastname=false, $a_omit_login=false, $a_sortable=true, $a_return_data_array=false, $a_ctrl_path="ilpublicuserprofilegui")
Default behaviour is:
$user
Definition: migrateto20.php:57
static _lookupType($a_id, $a_reference=false)
lookup object type
static supportsMark($a_obj_type)
This class represents a non editable value in a property form.
setValue($a_value)
Set Value.
static getInstance($a_obj_id)
static _lookupStatus($a_obj_id, $a_user_id, $a_create=true)
Lookup status.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isAnonymized()

ilLearningProgressBaseGUI::isAnonymized ( )

◆ isObjectOffline()

static ilLearningProgressBaseGUI::isObjectOffline (   $a_obj_id,
  $a_type = null 
)
static

Definition at line 849 of file class.ilLearningProgressBaseGUI.php.

References $a_type, and $DIC.

Referenced by ilLPProgressTableGUI\getItems(), and ilTrSummaryTableGUI\getItems().

850  {
851  global $DIC;
852 
853  $objDefinition = $DIC['objDefinition'];
854  $ilObjDataCache = $DIC['ilObjDataCache'];
855 
856  if (!$a_type) {
857  $a_type = $ilObjDataCache->lookupType($a_obj_id);
858  }
859 
860  if ($objDefinition->isPluginTypeName($a_type)) {
861  return false;
862  }
863 
864  $class = "ilObj" . $objDefinition->getClassName($a_type) . "Access";
865  include_once $objDefinition->getLocation($a_type) . "/class." . $class . ".php";
866  return call_user_func(array($class,'_isOffline'), $a_obj_id);
867 
868  // PHP 5.3 only ?
869  //return $class::_isOffline($obj_id);
870  }
global $DIC
Definition: saml.php:7
$a_type
Definition: workflow.php:92
+ Here is the caller graph for this function:

Field Documentation

◆ $anonymized

ilLearningProgressBaseGUI::$anonymized
protected

Definition at line 29 of file class.ilLearningProgressBaseGUI.php.

Referenced by isAnonymized().

◆ $ctrl

ilLearningProgressBaseGUI::$ctrl = null

Definition at line 24 of file class.ilLearningProgressBaseGUI.php.

◆ $lng

◆ $logger

ilLearningProgressBaseGUI::$logger
protected

Definition at line 34 of file class.ilLearningProgressBaseGUI.php.

◆ $mode

ilLearningProgressBaseGUI::$mode = 0

◆ $ref_id

ilLearningProgressBaseGUI::$ref_id = 0

◆ $tabs_gui

ilLearningProgressBaseGUI::$tabs_gui
protected

Definition at line 39 of file class.ilLearningProgressBaseGUI.php.

◆ $tpl

◆ LP_ACTIVE_MATRIX

const ilLearningProgressBaseGUI::LP_ACTIVE_MATRIX = 11

Definition at line 58 of file class.ilLearningProgressBaseGUI.php.

◆ LP_ACTIVE_OBJECTS

const ilLearningProgressBaseGUI::LP_ACTIVE_OBJECTS = 2

Definition at line 49 of file class.ilLearningProgressBaseGUI.php.

◆ LP_ACTIVE_OBJSTATACCESS

const ilLearningProgressBaseGUI::LP_ACTIVE_OBJSTATACCESS = 7

Definition at line 54 of file class.ilLearningProgressBaseGUI.php.

◆ LP_ACTIVE_OBJSTATADMIN

const ilLearningProgressBaseGUI::LP_ACTIVE_OBJSTATADMIN = 10

Definition at line 57 of file class.ilLearningProgressBaseGUI.php.

◆ LP_ACTIVE_OBJSTATDAILY

const ilLearningProgressBaseGUI::LP_ACTIVE_OBJSTATDAILY = 9

Definition at line 56 of file class.ilLearningProgressBaseGUI.php.

◆ LP_ACTIVE_OBJSTATTYPES

const ilLearningProgressBaseGUI::LP_ACTIVE_OBJSTATTYPES = 8

Definition at line 55 of file class.ilLearningProgressBaseGUI.php.

◆ LP_ACTIVE_PROGRESS

const ilLearningProgressBaseGUI::LP_ACTIVE_PROGRESS = 3

Definition at line 50 of file class.ilLearningProgressBaseGUI.php.

◆ LP_ACTIVE_SETTINGS

const ilLearningProgressBaseGUI::LP_ACTIVE_SETTINGS = 1

Definition at line 48 of file class.ilLearningProgressBaseGUI.php.

◆ LP_ACTIVE_SUMMARY

const ilLearningProgressBaseGUI::LP_ACTIVE_SUMMARY = 6

Definition at line 53 of file class.ilLearningProgressBaseGUI.php.

◆ LP_ACTIVE_USERS

const ilLearningProgressBaseGUI::LP_ACTIVE_USERS = 5

Definition at line 52 of file class.ilLearningProgressBaseGUI.php.

◆ LP_CONTEXT_ADMINISTRATION

const ilLearningProgressBaseGUI::LP_CONTEXT_ADMINISTRATION = 2

◆ LP_CONTEXT_ORG_UNIT

const ilLearningProgressBaseGUI::LP_CONTEXT_ORG_UNIT = 5

◆ LP_CONTEXT_PERSONAL_DESKTOP

const ilLearningProgressBaseGUI::LP_CONTEXT_PERSONAL_DESKTOP = 1

◆ LP_CONTEXT_REPOSITORY

◆ LP_CONTEXT_USER_FOLDER

const ilLearningProgressBaseGUI::LP_CONTEXT_USER_FOLDER = 4

Definition at line 45 of file class.ilLearningProgressBaseGUI.php.

Referenced by ilObjUserGUI\executeCommand().


The documentation for this class was generated from the following file: