diff options
| author | Lester Caine <lester@lsces.co.uk> | 2026-05-16 18:57:08 +0100 |
|---|---|---|
| committer | Lester Caine <lester@lsces.co.uk> | 2026-05-16 18:57:08 +0100 |
| commit | aed053fc746883bea02745c2c299c05e47a8a99f (patch) | |
| tree | d784c4495e4fe52607bbbba8c9fd60a6efdf8c84 /includes | |
| parent | 9772cfff77f3edb7df7fd640078d4124439d18d2 (diff) | |
| download | users-aed053fc746883bea02745c2c299c05e47a8a99f.tar.gz users-aed053fc746883bea02745c2c299c05e47a8a99f.tar.bz2 users-aed053fc746883bea02745c2c299c05e47a8a99f.zip | |
Tidy loadPermissions to ignore anonymous block
Diffstat (limited to 'includes')
| -rwxr-xr-x | includes/classes/RolePermUser.php | 12 |
1 files changed, 11 insertions, 1 deletions
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 ) ) { |
