Custom preprocess_function does not fetch translated value of the content type Drupal 7.34 core 
Using custom theme from Themebrain TB Sirate
Multilingual setup works properly
Content type has both English and Russian values


English Language mode: When open/viewing a node, page-title display content type that is "Article" (English)



Russian Language mode: When open/viewing a node, page-title display content type that is "Article" (still English, must be Russian)



Question how to display Russian value of content type.

Here code from preprocess_funcion.inc of the custom theme

/**
 * @file
 * Override of theme_preprocess_...
 */

function tb_sirate_preprocess_html(&amp;$vars) {
  $current_skin = theme_get_setting('skin');
  if (isset($_COOKIE['nucleus_skin'])) {
    $current_skin = $_COOKIE['nucleus_skin'];
  }
  $vars['classes_array'][] = !empty($current_skin) ? (" " . $current_skin . "-skin") : "";  
}

/**
 * Override or insert variables into the page template.
 *
 * @param array $vars
 *   An array of variables to pass to the theme template.
 */
function tb_sirate_preprocess_page(&amp;$vars) {
  if (isset($vars['node'])) {
    if ($vars['node']-&gt;type != 'page') {
      $result = db_select('node_type', NULL, array('fetch' =&gt; PDO::FETCH_ASSOC))
        -&gt;fields('node_type', array('name'))
        -&gt;condition('type', $vars['node']-&gt;type)
        -&gt;execute();
      foreach ($result as $item) {
        $vars['title'] = $item['name'];
      }
    }
  }
}

/**
 * Override or insert variables into the node template.
 *
 * @param array $vars
 *   An array of variables to pass to the theme template.
 */
function tb_sirate_preprocess_node(&amp;$vars) {
  $vars['page'] = ($vars['type'] == 'page') ? TRUE : FALSE;
}

It seems to me that problem is here

    function tb_sirate_preprocess_page(&amp;$vars) {
  if (isset($vars['node'])) {
    if ($vars['node']-&gt;type != 'page') {
      $result = db_select('node_type', NULL, array('fetch' =&gt; PDO::FETCH_ASSOC))
        -&gt;fields('node_type', array('name'))
        -&gt;condition('type', $vars['node']-&gt;type)
        -&gt;execute();
      foreach ($result as $item) {
        $vars['title'] = $item['name'];
      }
    }
  }
}


What can I do to pull Russian value of the content type from DB?

Thanks in advance for any help!
You can confirm this by looking under the "Overview" tab of the translation interface:



If the percentage in the "Node types" for your second language is ("Norwegian Bokmål" in the image above) is 0%, the translated strings for the Node types has not been imported into the translation interface.  This means that even after you enable that language, the fallback English strings will be used.

However, it should now be possible to add these translation by hand.  Navigate to the translate tab of the translation interface, and limit search to Node types.



The strikethrough over the string with the two letters in the Languages column means that the translation is missing.  Click "edit" to add the missing translation.

This exact procedure fixed it for me as can be seen from the "Overview" tab below.  The percentage for "Node types" for "Norwegian Bokmål" in now 100%.