diff --git a/lib/bootstrap.php b/lib/bootstrap.php index 1c3af707ff317cce0d7e24cdcf2e9dbbc3c734f3..3950eefc8c7bc064aba77a349d59bc13616190bb 100644 --- a/lib/bootstrap.php +++ b/lib/bootstrap.php @@ -65,7 +65,14 @@ if (isset($_SERVER['SERVER_NAME'])) { $GLOBALS['ASSETS_URL'] = $ABSOLUTE_URI_STUDIP . 'assets/'; require __DIR__ . '/classes/StudipFileloader.php'; -$added = StudipFileloader::load('config_defaults.inc.php config_local.inc.php', $GLOBALS, compact('STUDIP_BASE_PATH', 'ABSOLUTE_URI_STUDIP', 'ASSETS_URL', 'CANONICAL_RELATIVE_PATH_STUDIP'), true); + +$added_configs = []; + +StudipFileloader::load('config_defaults.inc.php config_local.inc.php', $added_configs, compact('STUDIP_BASE_PATH', 'ABSOLUTE_URI_STUDIP', 'ASSETS_URL', 'CANONICAL_RELATIVE_PATH_STUDIP'), true); + +foreach($added_configs as $key => $value) { + $GLOBALS[$key] = $value; +} // If no ENV setting was found in the config files, assume ENV=production if (!defined('Studip\ENV')) { diff --git a/lib/phplib/Seminar_Auth.class.php b/lib/phplib/Seminar_Auth.class.php index c1c2b860b8b57de1d884f7cce56954c3fdaa8cac..3a915e56fb1a324916cd505da26a7966c9c62f73 100644 --- a/lib/phplib/Seminar_Auth.class.php +++ b/lib/phplib/Seminar_Auth.class.php @@ -356,7 +356,7 @@ class Seminar_Auth if ($check_auth['uid']) { $uid = $check_auth['uid']; - if ($check_auth['need_email_activation'] == $uid) { + if (isset($check_auth['need_email_activation']) && $check_auth['need_email_activation'] == $uid) { $this->need_email_activation = $uid; $_SESSION['semi_logged_in'] = $uid; return false; diff --git a/lib/phplib/Seminar_Session.class.php b/lib/phplib/Seminar_Session.class.php index a5bc5927ab90b844fe88c60d10dd2f6ee3dee011..937a865a10a346fb3bec1de12328e417fff49a9b 100644 --- a/lib/phplib/Seminar_Session.class.php +++ b/lib/phplib/Seminar_Session.class.php @@ -314,7 +314,7 @@ class Seminar_Session $this->delete(); $this->start(); foreach ($keep_session_vars as $k) { - $_SESSION[$k] = $keep[$k]; + $_SESSION[$k] = $keep[$k] ?? null; } } diff --git a/tests/functional/_bootstrap.php b/tests/functional/_bootstrap.php index 4a71787b14144346eb4d4fcae404d0608fe6d21f..8feb13ea66ed8f5cd4dd180b63ba62ba13877c01 100644 --- a/tests/functional/_bootstrap.php +++ b/tests/functional/_bootstrap.php @@ -32,12 +32,16 @@ StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/plugins/db'); StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/plugins/engine'); // load config-variables +$added_configs = []; StudipFileloader::load( 'config_defaults.inc.php config_local.inc.php', - $GLOBALS, + $added_configs, compact('STUDIP_BASE_PATH', 'ABSOLUTE_URI_STUDIP', 'ASSETS_URL', 'CANONICAL_RELATIVE_PATH_STUDIP'), true ); +foreach($added_configs as $key => $value) { + $GLOBALS[$key] = $value; +} require 'config/config.inc.php'; // Do not send mails of any kind during tests