diff options
author | Simon Rettberg | 2017-07-11 12:08:53 +0200 |
---|---|---|
committer | Simon Rettberg | 2017-07-11 12:08:53 +0200 |
commit | 1cfb2dc5e668bd82f62a5606e80ad61b56b8596c (patch) | |
tree | 8d6dbe1756ae043a45b65539a316ef55ae7dae0b | |
parent | [baseconfig] Make ConfigHolder static, change default prio, add getter (diff) | |
download | slx-admin-1cfb2dc5e668bd82f62a5606e80ad61b56b8596c.tar.gz slx-admin-1cfb2dc5e668bd82f62a5606e80ad61b56b8596c.tar.xz slx-admin-1cfb2dc5e668bd82f62a5606e80ad61b56b8596c.zip |
[*] Adapt to new baseconfig API
5 files changed, 22 insertions, 20 deletions
diff --git a/modules-available/exams/baseconfig/getconfig.inc.php b/modules-available/exams/baseconfig/getconfig.inc.php index 5e506755..325badb0 100644 --- a/modules-available/exams/baseconfig/getconfig.inc.php +++ b/modules-available/exams/baseconfig/getconfig.inc.php @@ -1,16 +1,17 @@ <?php -if (isset($configVars["SLX_LOCATIONS"])) { - $locationIds = explode(' ', $configVars["SLX_LOCATIONS"]); +$locations = ConfigHolder::get('SLX_LOCATIONS'); +if ($locations === false) { + $locationIds = []; } else { - $locationIds = array(); + $locationIds = explode(' ', $locations); } if (Exams::isInExamMode($locationIds, $lectureId, $autoLogin)) { - $configVars['SLX_EXAM'] = 'yes'; + ConfigHolder::add('SLX_EXAM', 'yes', 100000); if (strlen($lectureId) > 0) { - $configVars['SLX_EXAM_START'] = $lectureId; + ConfigHolder::add('SLX_EXAM_START', $lectureId, 100000); } if (strlen($autoLogin) > 0) { - $configVars['SLX_AUTOLOGIN'] = $autoLogin; + ConfigHolder::add('SLX_AUTOLOGIN', $autoLogin, 100000); } } diff --git a/modules-available/locations/baseconfig/getconfig.inc.php b/modules-available/locations/baseconfig/getconfig.inc.php index 3a0c918f..f21503f1 100644 --- a/modules-available/locations/baseconfig/getconfig.inc.php +++ b/modules-available/locations/baseconfig/getconfig.inc.php @@ -17,7 +17,7 @@ $matchingLocations = array(); if ($locationId !== false) { // Get all parents $matchingLocations = Location::getLocationRootChain($locationId); - $configVars["SLX_LOCATIONS"] = implode(' ', $matchingLocations); + ConfigHolder::add("SLX_LOCATIONS", implode(' ', $matchingLocations), 100); } // Query location specific settings (from bottom to top) @@ -31,14 +31,15 @@ if (!empty($matchingLocations)) { } // $matchingLocations contains the location ids sorted from closest to furthest, so we use it to make sure the order // in which they override is correct (closest setting wins, e.g. room setting beats department setting) + $prio = count($matchingLocations) + 1; foreach ($matchingLocations as $lid) { if (!isset($tmp[$lid])) continue; + ConfigHolder::setContext('location-' . $lid); foreach ($tmp[$lid] as $setting => $value) { - if (!isset($configVars[$setting])) { - $configVars[$setting] = $value; - } + ConfigHolder::add($setting, $value, $prio); } + $prio -= 1; } unset($tmp); } diff --git a/modules-available/roomplanner/baseconfig/getconfig.inc.php b/modules-available/roomplanner/baseconfig/getconfig.inc.php index 8518f751..92e7a8d3 100644 --- a/modules-available/roomplanner/baseconfig/getconfig.inc.php +++ b/modules-available/roomplanner/baseconfig/getconfig.inc.php @@ -1,12 +1,12 @@ <?php -$configVars["SLX_PVS_CONFIG_URL"] = 'http://' . $_SERVER['SERVER_ADDR'] . $_SERVER['SCRIPT_NAME'] . '?do=roomplanner'; +ConfigHolder::add("SLX_PVS_CONFIG_URL", 'http://' . $_SERVER['SERVER_ADDR'] . $_SERVER['SCRIPT_NAME'] . '?do=roomplanner'); $res = Database::queryFirst('SELECT dedicatedmgr FROM location_roomplan WHERE managerip = :ip LIMIT 1', ['ip' => $ip]); if ($res !== false) { if ((int)$res['dedicatedmgr'] !== 0) { - $configVars["SLX_PVS_DEDICATED"] = 'yes'; + ConfigHolder::add("SLX_PVS_DEDICATED", 'yes'); } else { - $configVars["SLX_PVS_HYBRID"] = 'yes'; + ConfigHolder::add("SLX_PVS_HYBRID", 'yes'); } }
\ No newline at end of file diff --git a/modules-available/syslog/baseconfig/getconfig.inc.php b/modules-available/syslog/baseconfig/getconfig.inc.php index 9706eea1..23102af9 100644 --- a/modules-available/syslog/baseconfig/getconfig.inc.php +++ b/modules-available/syslog/baseconfig/getconfig.inc.php @@ -1,4 +1,4 @@ <?php // Remote log URL -$configVars["SLX_REMOTE_LOG"] = 'http://' . $_SERVER['SERVER_ADDR'] . $_SERVER['SCRIPT_NAME'] . '?do=clientlog'; +ConfigHolder::add("SLX_REMOTE_LOG", 'http://' . $_SERVER['SERVER_ADDR'] . $_SERVER['SCRIPT_NAME'] . '?do=clientlog'); diff --git a/modules-available/vmstore/baseconfig/getconfig.inc.php b/modules-available/vmstore/baseconfig/getconfig.inc.php index e34c502a..75f7279b 100644 --- a/modules-available/vmstore/baseconfig/getconfig.inc.php +++ b/modules-available/vmstore/baseconfig/getconfig.inc.php @@ -5,18 +5,18 @@ $vmstore = Property::getVmStoreConfig(); if (is_array($vmstore) && isset($vmstore['storetype'])) { switch ($vmstore['storetype']) { case 'internal'; - $configVars["SLX_VM_NFS"] = $_SERVER['SERVER_ADDR'] . ":/srv/openslx/nfs"; + ConfigHolder::add("SLX_VM_NFS", $_SERVER['SERVER_ADDR'] . ":/srv/openslx/nfs"); break; case 'nfs'; - $configVars["SLX_VM_NFS"] = $vmstore['nfsaddr']; + ConfigHolder::add("SLX_VM_NFS", $vmstore['nfsaddr']); break; case 'cifs'; - $configVars["SLX_VM_NFS"] = $vmstore['cifsaddr']; - $configVars["SLX_VM_NFS_USER"] = $vmstore['cifsuserro']; - $configVars["SLX_VM_NFS_PASSWD"] = $vmstore['cifspasswdro']; + ConfigHolder::add("SLX_VM_NFS", $vmstore['cifsaddr']); + ConfigHolder::add("SLX_VM_NFS_USER", $vmstore['cifsuserro']); + ConfigHolder::add("SLX_VM_NFS_PASSWD", $vmstore['cifspasswdro']); break; } } // vm list url. doesn't really fit anywhere, seems to be a tie between here and dozmod -$configVars["SLX_VMCHOOSER_BASE_URL"] = 'http://' . $_SERVER['SERVER_ADDR'] . '/vmchooser/'; +ConfigHolder::add("SLX_VMCHOOSER_BASE_URL", 'http://' . $_SERVER['SERVER_ADDR'] . '/vmchooser/'); |