commit 13a971bd975d30508e87dfd24d4e64f4f5d331a0
parent b9244485c77e889a6b4553e5cff2803bfb3d3e95
Author: Jan Dankert <develop@jandankert.de>
Date: Wed, 28 Aug 2019 00:35:32 +0200
Fix: Remember-me ist readonly, daher die READ-Konfiguration der Datenbank verwenden.
Diffstat:
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/modules/cms-core/auth/RememberAuth.class.php b/modules/cms-core/auth/RememberAuth.class.php
@@ -24,9 +24,21 @@ class RememberAuth implements Auth
list( $selector,$token) = array_pad( explode('.',$_COOKIE['or_token']),2,'');
$dbid = $_COOKIE['or_dbid'];
- global $conf;
- $db = new Database( $conf['database'][$dbid] );
- $db->id = $dbid;
+ $dbConfig = config()->subset('database');
+
+ if ( ! $dbConfig->has( $dbid ) ) {
+
+ Logger::info( 'unknown DB-Id for token-login: '.$dbid );
+ return null;
+ }
+
+ $dbConfig = $dbConfig->subset($dbid );
+
+
+ $key = 'read'; // Only reading in database.
+
+ $db = new Database( $dbConfig->subset($key)->getConfig() + $dbConfig->getConfig() );
+ $db->id = $dbid;
$db->start();
$stmt = $db->sql( <<<SQL