Commit b83602e3 authored by Wanderson Reis's avatar Wanderson Reis Committed by Wanderson Reis
Browse files

Issue #2940498 by wasare: Does not work for custom entities created with drupal console

parent d6ff7103
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -253,10 +253,14 @@ class RoleLimit extends EntityLimitPluginBase implements ContainerFactoryPluginI
      $uid = $this->account->id();
    }

    $fields = \Drupal::service('entity_field.manager')
      ->getFieldStorageDefinitions($entityLimit->getEntityLimitType());
    $uid_field = !empty($fields['user_id']) ? 'user_id' : 'uid';

    $access = TRUE;
    $query = \Drupal::entityQuery($entityLimit->getEntityLimitType());
    $query->condition('type', $entityLimit->getEntityLimitBundles(), 'IN');
    $query->condition('uid', $uid);
    $query->condition($uid_field, $uid);
    $count = count($query->execute());
    if ($count >= (int) $limit) {
      $access = FALSE;
+5 −1
Original line number Diff line number Diff line
@@ -244,10 +244,14 @@ class UserLimit extends EntityLimitPluginBase implements ContainerFactoryPluginI
      $uid = $this->account->id();
    }

    $fields = \Drupal::service('entity_field.manager')
      ->getFieldStorageDefinitions($entityLimit->getEntityLimitType());
    $uid_field = !empty($fields['user_id']) ? 'user_id' : 'uid';

    $access = TRUE;
    $query = \Drupal::entityQuery($entityLimit->getEntityLimitType());
    $query->condition('type', $entityLimit->getEntityLimitBundles(), 'IN');
    $query->condition('uid', $uid);
    $query->condition($uid_field, $uid);
    $count = count($query->execute());
    if ($count >= (int) $limit) {
      $access = FALSE;