You are here

function _search_api_grouping_index_immediatley_hijack in Search API Grouping 7.2

Ensure the ids are adjusted if index immediately is enabled.

2 calls to _search_api_grouping_index_immediatley_hijack()
search_api_grouping_entity_insert in ./search_api_grouping.module
Implements hook_entity_insert().
search_api_grouping_entity_update in ./search_api_grouping.module
Implements hook_entity_update().

File

./search_api_grouping.module, line 141
Module search_api_grouping.

Code

function _search_api_grouping_index_immediatley_hijack($type, $ids) {
  if ($queue =& search_api_index_specific_items_delayed()) {
    $indexes = search_api_index_load_multiple(FALSE, array(
      'enabled' => 1,
      'item_type' => search_api_grouping_get_type($type),
    ));
    foreach ($indexes as $index) {
      if (!empty($queue[$index->machine_name])) {
        $item_ids = db_select('search_api_denormalized_entity')
          ->fields('search_api_denormalized_entity', array(
          'item_id',
        ))
          ->condition('etid', $ids)
          ->condition('index_id', $index->id)
          ->condition('entity_type', $type)
          ->execute()
          ->fetchAll(PDO::FETCH_COLUMN, 0);
        $queue[$index->machine_name] = drupal_map_assoc($item_ids);
      }
    }
  }
}