diff --git a/views/entityreference.views.inc b/views/entityreference.views.inc index 76cbc2b..c1ae405 100644 --- a/views/entityreference.views.inc +++ b/views/entityreference.views.inc @@ -29,6 +29,11 @@ function entityreference_field_views_data($field) { 'title' => t('Referenced Entity'), 'help' => t('A bridge to the @entity entity that is referenced via !field_name', $parameters), ); + // Set the entity id filter to use the in_operator handler with our + // own callback to return the values. + $data[$table_name][$field_name]['filter']['handler'] = 'views_handler_filter_in_operator'; + $data[$table_name][$field_name]['filter']['options callback'] = 'entityreference_views_handler_options_list'; + $data[$table_name][$field_name]['filter']['options arguments'] = array($field['field_name']); } } @@ -36,6 +41,14 @@ function entityreference_field_views_data($field) { } /** + * Options callback for Views handler views_handler_filter_in_operator. + */ +function entityreference_views_handler_options_list($field_name) { + $field = field_info_field($field_name); + return entityreference_options_list($field); +} + +/** * Implements hook_field_views_data_views_data_alter(). * * Views integration to provide reverse relationships on entityreference fields.