/**
  * Overrides EntityReference_SelectionHandler_Generic_taxonomy_term::entityFieldQueryAlter().
  * Adds language filtering logic.
  */
 public function entityFieldQueryAlter(SelectQueryInterface $query)
 {
     parent::entityFieldQueryAlter($query);
     $base_table = $this->ensureBaseTable($query);
     $entity_info = entity_get_info($this->field['settings']['target_type']);
     if ($this->field['settings']['handler_settings']['filter']['language'] == 1 && $entity_info['translation']['locale'] == TRUE) {
         $term_language = i18n_taxonomy_i18n_context_language();
         if (isset($term_language->language) && !is_null($term_language->language)) {
             $query->condition("{$base_table}.language", $term_language->language);
         }
     } else {
         global $language;
         $query->condition("{$base_table}.language", $language->language);
     }
 }