EntityReferenceBehavior_ViewsFilterSelect.class.php 824 B

123456789101112131415161718
  1. <?php
  2. class EntityReferenceBehavior_ViewsFilterSelect extends EntityReference_BehaviorHandler_Abstract {
  3. public function views_data_alter(&$data, $field) {
  4. $entity_info = entity_get_info($field['settings']['target_type']);
  5. $field_name = $field['field_name'] . '_target_id';
  6. foreach ($data as $table_name => &$table_data) {
  7. if (isset($table_data[$field_name])) {
  8. // Set the entity id filter to use the in_operator handler with our
  9. // own callback to return the values.
  10. $table_data[$field_name]['filter']['handler'] = 'views_handler_filter_in_operator';
  11. $table_data[$field_name]['filter']['options callback'] = 'entityreference_views_handler_options_list';
  12. $table_data[$field_name]['filter']['options arguments'] = array($field['field_name']);
  13. }
  14. }
  15. }
  16. }