When the i18n module is enabled, the "Translator assigment" page only list node in the current user language. So to translate English content in Dutch, the user must be be using the English interface. This is because of query rewriting in i18n which automatically filter nodes by language. This filtering can be disabled by calling i18n_selection_mode('off')
before query rewriting.
The fix would be to add a conditional invocation of i18n_selection_mode('off')
at the beginning of translation_overview_assignment_page($language)
function translation_overview_assignment_page($language) {
if(function_exists('i18n_selection_mode')) {
i18n_selection_mode('off');
}
drupal_add_css(drupal_get_path('module', 'translation_overview') .'/translation_overview.css');
...
}
A workaround is to "fix" the page callback in another module, like this
function MODULE_menu_alter(&$items) {
foreach (language_list() as $language) {
if ($language->enabled) {
$items['admin/content/translation_overview_assignments/'. $language->language]['page callback'] = '_wMODULE_translation_overview_assignment_page';
}
}
}
function _MODULE_translation_overview_assignment_page($language) {
i18n_selection_mode('off');
return translation_overview_assignment_page($language);
}
Comments
Comment #1
pbuyle CreditAttribution: pbuyle commentedComment #2
pbuyle CreditAttribution: pbuyle commentedThe same issue with the same fix and workaround apply to the Translation overview page.
Comment #3
nick.dap CreditAttribution: nick.dap commentedThanks for posting this. If you want the overview page to show all content as well:
REPLACE 'common' WITH NAME OF YOUR MODULE
Comment #4
stefan.r CreditAttribution: stefan.r commentedMarking as won't fix since 6.x is not longer supported.