X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FCore%2FPermission%2FWordPress.php;h=dfcc6c34a3f2bba7704feabf2365c6c1b3184b45;hb=94a0a5499ab27f49326e184a1a74438adea2442c;hp=3325d0fc117c3f23a4ba3dee0e04cf42b6f4ff6f;hpb=843a46fb80b6caaf8ecb6827f0d1717d0ebdfa85;p=civicrm-core.git diff --git a/CRM/Core/Permission/WordPress.php b/CRM/Core/Permission/WordPress.php index 3325d0fc11..dfcc6c34a3 100644 --- a/CRM/Core/Permission/WordPress.php +++ b/CRM/Core/Permission/WordPress.php @@ -60,14 +60,14 @@ class CRM_Core_Permission_WordPress extends CRM_Core_Permission_Base { $user = $userId ? get_userdata($userId) : wp_get_current_user(); - if ($user->has_cap('super admin') || $user->has_cap('administrator')) { + if ($userId !== 0 && ($user->has_cap('super admin') || $user->has_cap('administrator'))) { return TRUE; } // Make string lowercase and convert spaces into underscore $str = CRM_Utils_String::munge(strtolower($str)); - if ($user->exists()) { + if ($userId !== 0 && $user->exists()) { // Check whether the logged in user has the capabilitity if ($user->has_cap($str)) { return TRUE; @@ -76,10 +76,8 @@ class CRM_Core_Permission_WordPress extends CRM_Core_Permission_Base { else { //check the capabilities of Anonymous user) $roleObj = new WP_Roles(); - if ( - $roleObj->get_role('anonymous_user') != NULL && - array_key_exists($str, $roleObj->get_role('anonymous_user')->capabilities) - ) { + $anonObj = $roleObj->get_role('anonymous_user'); + if (!empty($anonObj->capabilities) && array_key_exists($str, $anonObj->capabilities)) { return TRUE; } }