diff options
Diffstat (limited to 'modules-available/remoteaccess/baseconfig/getconfig.inc.php')
-rw-r--r-- | modules-available/remoteaccess/baseconfig/getconfig.inc.php | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/modules-available/remoteaccess/baseconfig/getconfig.inc.php b/modules-available/remoteaccess/baseconfig/getconfig.inc.php index 3d0c4470..84923dc6 100644 --- a/modules-available/remoteaccess/baseconfig/getconfig.inc.php +++ b/modules-available/remoteaccess/baseconfig/getconfig.inc.php @@ -18,6 +18,15 @@ ['lid' => $locationId], true); // TODO Remove true after next point release (2020-05-12) if ($ret === false) return; + // Special case – location admin can limit accessibility of this machine to never, or only when room is closed + $opts = Scheduler::getLocationOptions($locationId); + if ($opts['ra-mode'] === Scheduler::RA_NEVER) + return; // Completely disallowed + if ($opts['ra-mode'] === Scheduler::RA_SELECTIVE) { + // Only when room is closed + if (OpeningTimes::isRoomOpen($locationId, $opts['wol-offset'], $opts['sd-offset'])) + return; // Open, do not interfere with ongoing lectures etc., do nothing + } // TODO Properly merge if (Property::get(RemoteAccess::PROP_TRY_VIRT_HANDOVER)) { ConfigHolder::add("SLX_REMOTE_VNC", 'vmware virtualbox'); |