You are here

function auto_entityqueue_add_entity_to_queue in Auto Entityqueue 7

Same name and namespace in other branches
  1. 8 auto_entityqueue.module \auto_entityqueue_add_entity_to_queue()

Helper function to add an entity to a queue.

Parameters

$entity: The entity object.

$queue: The entityqueue object.

1 call to auto_entityqueue_add_entity_to_queue()
auto_entityqueue_entity_insert in ./auto_entityqueue.module
Implements hook_entity_insert().

File

./auto_entityqueue.module, line 55
Automatically adds entities to entityqueues.

Code

function auto_entityqueue_add_entity_to_queue($entity, $queue) {

  // Get the target field name.
  $field_name = _entityqueue_get_target_field_name($queue->target_type);

  // Get the entity id.
  $entity_wrapper = entity_metadata_wrapper($queue->target_type, $entity);
  $entity_id = $entity_wrapper
    ->getIdentifier();

  // Get subqueues.
  $subqueues = auto_entityqueue_get_subqueues_for_queue($queue->name);
  if (count($subqueues)) {

    // Add to each subqueue.
    foreach ($subqueues as $subqueue) {
      $wrapper = entity_metadata_wrapper('entityqueue_subqueue', $subqueue);
      $wrapper->{$field_name}[] = $entity_id;
      $wrapper
        ->save();
    }
  }
}