示例#1
0
  /**
   * Returns the number of items in a subqueue or the number of subqueues.
   *
   * @param \Drupal\entityqueue\EntityQueueInterface $queue
   *   An entity queue object.
   *
   * @return string
   *   The number of items in a subqueue or the number of subqueues.
   */
  protected function getQueueItemsStatus(EntityQueueInterface $queue) {
    $handler = $queue->getHandlerPlugin();

    $items = NULL;
    if ($handler->supportsMultipleSubqueues()) {
      $subqueues_count = $this->entityManager->getStorage('entity_subqueue')->getQuery()
        ->condition('queue', $queue->id(), '=')
        ->count()
        ->execute();

      $items = $this->t('@count subqueues', ['@count' => $subqueues_count]);
    }
    else {
      $subqueue = EntitySubqueue::load($queue->id());

      $items = $this->t('@count items', ['@count' => count($subqueue->items)]);
    }

    return $items;
  }
示例#2
0
 /**
  * Returns a form to add a new subqeue.
  *
  * @param \Drupal\entityqueue\EntityQueueInterface $entity_queue
  *   The queue this subqueue will be added to.
  *
  * @return array
  *   The entity subqueue add form.
  */
 public function addForm(EntityQueueInterface $entity_queue) {
   $subqueue = $this->entityManager()->getStorage('entity_subqueue')->create(['queue' => $entity_queue->id()]);
   return $this->entityFormBuilder()->getForm($subqueue);
 }
示例#3
0
文件: Simple.php 项目: jkyto/agolf
 /**
  * {@inheritdoc}
  */
 public function onQueuePostDelete(EntityQueueInterface $queue, EntityStorageInterface $storage) {
   // Delete the subqueue when the parent queue is deleted.
   if ($subqueue = EntitySubqueue::load($queue->id())) {
     $subqueue->delete();
   }
 }
示例#4
0
 /**
  * {@inheritdoc}
  */
 public function setQueue(EntityQueueInterface $queue) {
   $this->set('queue', $queue->id());
   return $this;
 }