68 $act = $obj->getLSActivation();
69 $online = $act->getIsOnline();
72 && ($act->getActivationStart() !==
null ||
73 $act->getActivationEnd() !==
null)
76 $activation_start = $act->getActivationStart();
77 if ($activation_start !==
null) {
78 $after_activation_start = $ts_now >= $activation_start->getTimestamp();
80 $after_activation_start =
true;
82 $activation_end = $act->getActivationEnd();
83 if ($activation_end !==
null) {
84 $before_activation_end = $ts_now <= $activation_end->getTimestamp();
86 $before_activation_end =
true;
89 $online = ($after_activation_start && $before_activation_end);
92 if ($act->getEffectiveOnlineStatus() ===
false && $online ===
true) {
93 $obj->setEffectiveOnlineStatus(
true);
94 $obj->announceLSOOnline();
96 if ($act->getEffectiveOnlineStatus() ===
true && $online ===
false) {
97 $obj->setEffectiveOnlineStatus(
false);
98 $obj->announceLSOOffline();
101 $new_status = ($online)
102 ? $obj->getObjectProperties()->getPropertyIsOnline()->withOnline()
103 : $obj->getObjectProperties()->getPropertyIsOnline()->withOffline();
104 $obj->getObjectProperties()->storePropertyIsOnline($new_status);
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
static getInstanceByRefId(int $ref_id, bool $stop_on_error=true)
get an instance of an Ilias object by reference id