APIv4 - Fix checkAccess for CiviCase or other entities with nonstandard class names
authorColeman Watts <coleman@civicrm.org>
Wed, 17 Nov 2021 15:55:30 +0000 (10:55 -0500)
committerColeman Watts <coleman@civicrm.org>
Wed, 17 Nov 2021 15:57:01 +0000 (10:57 -0500)
Fixes dev/core#2950

Civi/Api4/Generic/AbstractEntity.php

index 735327f88fb977de795f811f03020d8407ecdef0..7b4022a4d806beb72d36835f6000534021cdde20 100644 (file)
@@ -52,7 +52,7 @@ abstract class AbstractEntity {
    * @return \Civi\Api4\Generic\CheckAccessAction
    */
   public static function checkAccess() {
-    return new CheckAccessAction(self::getEntityName(), __FUNCTION__);
+    return new CheckAccessAction(static::getEntityName(), __FUNCTION__);
   }
 
   /**
@@ -64,7 +64,7 @@ abstract class AbstractEntity {
     $permissions = \CRM_Core_Permission::getEntityActionPermissions();
 
     // For legacy reasons the permissions are keyed by lowercase entity name
-    $lcentity = \CRM_Core_DAO_AllCoreTables::convertEntityNameToLower(self::getEntityName());
+    $lcentity = \CRM_Core_DAO_AllCoreTables::convertEntityNameToLower(static::getEntityName());
     // Merge permissions for this entity with the defaults
     return ($permissions[$lcentity] ?? []) + $permissions['default'];
   }