From 0ff6294faaadda9b6a74602a124abe9e261b504d Mon Sep 17 00:00:00 2001 From: Clemens Schwaighofer Date: Fri, 17 Jan 2025 14:34:41 +0900 Subject: [PATCH] Fix ACL Login cuid <-> id pk lookups Used the wrong SESSION var for lookup --- www/admin/class_test.login.php | 12 +++++++++++- www/lib/CoreLibs/ACL/Login.php | 8 ++++---- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/www/admin/class_test.login.php b/www/admin/class_test.login.php index 2049635e..31a7bfea 100644 --- a/www/admin/class_test.login.php +++ b/www/admin/class_test.login.php @@ -117,7 +117,7 @@ if (isset($login->loginGetAcl()['unit'])) { if ($login->loginCheckEditAccessCuid($edit_access_cuid)) { print "Set new:" . $edit_access_cuid . "
"; } else { - print "Load default unit id: " . $login->loginGetAcl()['unit_id'] . "
"; + print "Load default unit id: " . $login->loginGetAcl()['unit_cuid'] . "
"; } } else { print "Something went wrong with the login
"; @@ -140,4 +140,14 @@ $login->writeLog( write_type:'JSON' ); +echo "
"; +print "

Legacy Lookups

"; + +$edit_access_id = 1; +$edit_access_cuid = $login->loginGetEditAccessCuidFromId($edit_access_id); +$edit_access_id_rev = $login->loginGetEditAccessIdFromCuid($edit_access_cuid); +print "EA ID: " . $edit_access_id . "
"; +print "EA CUID: " . $edit_access_cuid . "
"; +print "REV EA CUID: " . $edit_access_id_rev . "
"; + print ""; diff --git a/www/lib/CoreLibs/ACL/Login.php b/www/lib/CoreLibs/ACL/Login.php index 86e44388..fbf5870b 100644 --- a/www/lib/CoreLibs/ACL/Login.php +++ b/www/lib/CoreLibs/ACL/Login.php @@ -3290,10 +3290,10 @@ HTML; */ public function loginGetEditAccessCuidFromId(int $id): string|false { - if (!isset($_SESSION['LOGIN_UNIT_ACL_LEVEL'][$id])) { + if (!isset($_SESSION['LOGIN_UNIT_LEGACY'][$id])) { return false; } - return (string)$_SESSION['LOGIN_UNIT_ACL_LEVEL'][$id]['cuid']; + return (string)$_SESSION['LOGIN_UNIT_LEGACY'][$id]['cuid']; } /** @@ -3304,10 +3304,10 @@ HTML; */ public function loginGetEditAccessIdFromCuid(string $cuid): int|false { - if (!isset($_SESSION['LOGIN_UNIT_LEGACY'][$cuid])) { + if (!isset($_SESSION['LOGIN_UNIT'][$cuid])) { return false; } - return $_SESSION['LOGIN_UNIT_LEGACY'][$cuid]; + return $_SESSION['LOGIN_UNIT'][$cuid]['id']; } /**