ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
LSItemOnlineStatus.php
Go to the documentation of this file.
1 <?php
2 
3 declare(strict_types=1);
4 
6 {
7  const S_LEARNMODULE_IL = "lm";
8  const S_LEARNMODULE_HTML = "htlm";
9  const S_SAHS = "sahs";
10  const S_TEST = "tst";
11  const S_SURVEY = "svy";
12  const S_CONTENTPAGE = "copa";
13  const S_EXERCISE = "exc";
14  const S_IND_ASSESSMENT = "iass";
15  const S_FILE = "file";
16 
17  private static $obj_with_online_status = array(
18  self::S_LEARNMODULE_IL,
19  self::S_LEARNMODULE_HTML,
20  self::S_SAHS,
21  self::S_TEST,
22  self::S_SURVEY
23  );
24 
25  public function setOnlineStatus(int $ref_id, bool $status)
26  {
28  $obj->setOfflineStatus(!$status);
29  $obj->update();
30  }
31 
32  public function getOnlineStatus(int $ref_id) : bool
33  {
34  if(!$this->hasOnlineStatus($ref_id)) {
35  return true;
36  }
38  }
39 
40  public function hasOnlineStatus(int $ref_id) : bool
41  {
42  $type = $this->getObjectTypeFor($ref_id);
43  if (in_array($type, self::$obj_with_online_status)) {
44  return true;
45  }
46 
47  return false;
48  }
49 
50  protected function getObjectTypeFor(int $ref_id) : string
51  {
52  return \ilObject::_lookupType($ref_id, true);
53  }
54 }
$type
hasOnlineStatus(int $ref_id)
setOnlineStatus(int $ref_id, bool $status)
getObjectTypeFor(int $ref_id)
static lookupOfflineStatus($a_obj_id)
Lookup offline status using objectDataCache.
static _lookupObjId($a_id)
getOnlineStatus(int $ref_id)
static getInstanceByRefId($a_ref_id, $stop_on_error=true)
get an instance of an Ilias object by reference id