ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
LSItemOnlineStatus.php
Go to the documentation of this file.
1 <?php
2 
3 declare(strict_types=1);
4 
22 {
23  public const S_LEARNMODULE_IL = "lm";
24  public const S_LEARNMODULE_HTML = "htlm";
25  public const S_SAHS = "sahs";
26  public const S_TEST = "tst";
27  public const S_SURVEY = "svy";
28  public const S_CONTENTPAGE = "copa";
29  public const S_EXERCISE = "exc";
30  public const S_IND_ASSESSMENT = "iass";
31  public const S_FILE = "file";
32 
33  private static array $obj_with_online_status = array(
34  self::S_LEARNMODULE_IL,
35  self::S_LEARNMODULE_HTML,
36  self::S_SAHS,
37  self::S_TEST,
38  self::S_SURVEY,
39  self::S_CONTENTPAGE
40  );
41 
42  public function setOnlineStatus(int $ref_id, bool $status): void
43  {
45  $obj->setOfflineStatus(!$status);
46  $obj->update();
47  }
48 
49  public function getOnlineStatus(int $ref_id): bool
50  {
51  if (!$this->hasOnlineStatus($ref_id)) {
52  return true;
53  }
55  }
56 
57  public function hasOnlineStatus(int $ref_id): bool
58  {
59  $type = $this->getObjectTypeFor($ref_id);
60  return in_array($type, self::$obj_with_online_status);
61  }
62 
63  protected function getObjectTypeFor(int $ref_id): string
64  {
65  return \ilObject::_lookupType($ref_id, true);
66  }
67 }
$type
hasOnlineStatus(int $ref_id)
setOnlineStatus(int $ref_id, bool $status)
static array $obj_with_online_status
static _lookupObjId(int $ref_id)
static lookupOfflineStatus(int $obj_id)
Lookup offline status using objectDataCache.
getObjectTypeFor(int $ref_id)
$ref_id
Definition: ltiauth.php:67
static getInstanceByRefId(int $ref_id, bool $stop_on_error=true)
get an instance of an Ilias object by reference id
getOnlineStatus(int $ref_id)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...