From aed053fc746883bea02745c2c299c05e47a8a99f Mon Sep 17 00:00:00 2001 From: Lester Caine Date: Sat, 16 May 2026 18:57:08 +0100 Subject: Tidy loadPermissions to ignore anonymous block --- includes/classes/RolePermUser.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/includes/classes/RolePermUser.php b/includes/classes/RolePermUser.php index f9249ed..61377b4 100755 --- a/includes/classes/RolePermUser.php +++ b/includes/classes/RolePermUser.php @@ -685,7 +685,7 @@ class RolePermUser extends RoleUser { */ public function loadPermissions( $pForceReload=false ) { $this->mPerms = []; - if( $this->isValid() && (empty( $this->mPerms ) || $pForceReload) ) { + if( empty( $this->mPerms ) || $pForceReload ) { // the double up.`perm_name` is intentional - the first is for hash key, the second is for hash value $query = " SELECT up.`perm_name` AS `hash_key`, up.`perm_name`, up.`perm_desc`, up.`perm_level`, up.`package` @@ -736,6 +736,16 @@ class RolePermUser extends RoleUser { * @param $pPermission value of a given permission * @return void */ + public function hasPermission( $pPerm ) { + if( !isset( $this->mPerms ) ) { + $this->loadPermissions(); + } + if( $this->isAdmin() ) { + return true; + } + return isset( $this->mPerms[$pPerm] ); + } + public function verifyPermission( $pPermission, $pMsg = null ) { global $gBitSmarty, $gBitSystem, ${$pPermission}; if( empty( $pPermission ) || $this->hasPermission( $pPermission ) ) { -- cgit v1.3