--- ../../../baloghzoltan.info/modules/l10n_client/l10n_client.module 2011-05-16 14:44:05.000000000 +0200 +++ l10n_client.module 2012-01-07 11:23:35.000000000 +0100 @@ -141,19 +141,19 @@ $header = $table = array(); $query = db_select('locales_source', 's')->extend('PagerDefault'); - $query->join('locales_target', 't', 's.lid = t.lid'); + $query->leftJoin('locales_target', 't', "s.lid = t.lid AND COALESCE(t.language, '{$language->language}') = '{$language->language}'"); $query->fields('s', array('source')) ->fields('t', array('translation', 'language')) - ->condition('t.language', $language->language) ->orderBy('s.source'); if ($display_translated) { $header = array(t('Source string'), t('Translation')); $query->condition('t.translation', '', '!='); + $query->condition('t.language', $language->language); } else { $header = array(t('Source string')); - $query->condition('t.translation', ''); + $query->isNull('t.lid'); } if (!empty($textgroup)) { $query->condition('s.textgroup', $textgroup); @@ -163,7 +163,7 @@ $allow_translation = (($textgroup == 'default') && ($language->language == 'en')) ? FALSE : $allow_translation; $result = $query - ->limit( L10N_CLIENT_STRINGS) + ->limit(L10N_CLIENT_STRINGS) ->execute(); foreach ($result as $data) { @@ -182,7 +182,7 @@ } if (!empty($table)) { $pager = theme('pager'); - $output = $pager . theme('table', $header, $table) . $pager; + $output = $pager . theme('table', array('header' => $header, 'rows' => $table, 'empty' => t('No strings available.'))) . $pager; } else { $output = t('No strings found to translate.'); }