diff --git a/search_api_ranges.module b/search_api_ranges.module index ec7c254..3db006d 100644 --- a/search_api_ranges.module +++ b/search_api_ranges.module @@ -183,9 +183,17 @@ function search_api_ranges_minmax($variables, $order = 'ASC') { $result_ids = array(); foreach ($results['results'] as $result) { - $result_ids[] = $result['id']; + // Support search_api_et module (multilingual indexes) + if (strpos($index->item_type, 'search_api_et_') !== FALSE) { + // search_api_et prefixes the entity id with a language code, so we'll + // just remove any non-numeric characters to get the entity id + $result_ids[] = preg_replace('/[^0-9]/', '', $result['id']); + } + else { + $result_ids[] = $result['id']; + } } - $entities = entity_load($index->item_type, $result_ids); + $entities = entity_load($index->getEntityType(), $result_ids); $index->dataAlter($entities); @@ -687,4 +695,4 @@ function search_api_ranges_map_label(array $values, array $options) { } return $map; -} \ No newline at end of file +}