The tracker2_page() function is returning all recent post, regardless of language.

Comments

toemaz’s picture

Title: Tracker2 not locale aware » Filter tracker2_page by language
Category: bug » feature

Here is the implementation of hook_db_rewrite_sql() to filter the (not filtered by account) tracker2_page:

/**
 * Implementation of hook_db_rewrite_sql
 * to rewrite tracker 2
 */ 
function MODULE_db_rewrite_sql($query, $primary_table, $primary_field, $args) {
  global $language;
  
  switch ($primary_table) {
    case 't2n':
      // this query deals with node objects
      $return = array();
      $return['join'] = "LEFT JOIN {node} n ON $primary_table.nid = n.nid";
      $return['where'] = "n.language = '$language->language'";
      if ($language->language == language_default('language')) {
        $return['where'] .= " OR n.language = ''";
      }
      return $return;
      break;
  }
}
toemaz’s picture

Priority: Normal » Minor

It does require a patch to work as advertised: #838180: Missing primary table param in db_rewrite_sql