summaryrefslogtreecommitdiffstats
path: root/modules-available/remoteaccess
diff options
context:
space:
mode:
authorSimon Rettberg2020-09-17 16:32:41 +0200
committerSimon Rettberg2020-09-17 16:32:41 +0200
commit97aefcf975f23dc7cd453622da27c76a788e9bd2 (patch)
treee0aedb3bd033a3dc5288a5d4ccd8b90c727fd51b /modules-available/remoteaccess
parent[locations] install: Make openingtime migration a bit more robust (diff)
downloadslx-admin-97aefcf975f23dc7cd453622da27c76a788e9bd2.tar.gz
slx-admin-97aefcf975f23dc7cd453622da27c76a788e9bd2.tar.xz
slx-admin-97aefcf975f23dc7cd453622da27c76a788e9bd2.zip
[exams/runmode/remoteaccess] Tweak baseconfig hook (runmode/format)
Diffstat (limited to 'modules-available/remoteaccess')
-rw-r--r--modules-available/remoteaccess/baseconfig/getconfig.inc.php38
1 files changed, 23 insertions, 15 deletions
diff --git a/modules-available/remoteaccess/baseconfig/getconfig.inc.php b/modules-available/remoteaccess/baseconfig/getconfig.inc.php
index 8aa6430e..4d54c183 100644
--- a/modules-available/remoteaccess/baseconfig/getconfig.inc.php
+++ b/modules-available/remoteaccess/baseconfig/getconfig.inc.php
@@ -1,21 +1,29 @@
<?php
-// Locations from closest to furthest (order)
-$locationId = ConfigHolder::get('SLX_LOCATIONS');
-if ($locationId !== false) {
- $locationId = (int)$locationId;
- $ret = Database::queryFirst("SELECT l.locationid FROM remoteaccess_x_location l
+(function ($machineUuid) {
+ // Leave clients in any runmode alone
+ $res = Database::queryFirst('SELECT machineuuid FROM runmode WHERE machineuuid = :uuid',
+ array('uuid' => $machineUuid), true);
+ if (is_array($res))
+ return;
+
+ // Locations from closest to furthest (order)
+ $locationId = ConfigHolder::get('SLX_LOCATIONS');
+ if ($locationId !== false) {
+ $locationId = (int)$locationId;
+ $ret = Database::queryFirst("SELECT l.locationid FROM remoteaccess_x_location l
INNER JOIN remoteaccess_group g USING (groupid)
WHERE locationid = :lid AND g.active = 1",
- ['lid' => $locationId], true); // TODO Remove true after next point release (2020-05-12)
- if ($ret !== false) {
- // TODO Properly merge
- if (Property::get(RemoteAccess::PROP_TRY_VIRT_HANDOVER)) {
- ConfigHolder::add("SLX_REMOTE_VNC", 'vmware virtualbox');
- } else {
- ConfigHolder::add("SLX_REMOTE_VNC", 'x11vnc');
+ ['lid' => $locationId], true); // TODO Remove true after next point release (2020-05-12)
+ if ($ret !== false) {
+ // TODO Properly merge
+ if (Property::get(RemoteAccess::PROP_TRY_VIRT_HANDOVER)) {
+ ConfigHolder::add("SLX_REMOTE_VNC", 'vmware virtualbox');
+ } else {
+ ConfigHolder::add("SLX_REMOTE_VNC", 'x11vnc');
+ }
+ ConfigHolder::add("SLX_REMOTE_HOST_ACCESS", Property::get(RemoteAccess::PROP_ALLOWED_VNC_NET));
+ ConfigHolder::add('SLX_RUNMODE_MODULE', 'remoteaccess');
}
- ConfigHolder::add("SLX_REMOTE_HOST_ACCESS", Property::get(RemoteAccess::PROP_ALLOWED_VNC_NET));
- ConfigHolder::add('SLX_RUNMODE_MODULE', 'remoteaccess');
}
-}
+})($uuid); \ No newline at end of file