You are here

function install_find_translations in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/includes/install.core.inc \install_find_translations()

Finds all .po files that are useful to the installer.

Return value

An associative array of file URIs keyed by language code. URIs as returned by file_scan_directory().

See also

file_scan_directory()

1 call to install_find_translations()
install_select_language in core/includes/install.core.inc
Selects which language to use during installation.

File

core/includes/install.core.inc, line 1250
API functions for installing Drupal.

Code

function install_find_translations() {
  $translations = array();
  $files = \Drupal::service('string_translator.file_translation')
    ->findTranslationFiles();

  // English does not need a translation file.
  array_unshift($files, (object) array(
    'name' => 'en',
  ));
  foreach ($files as $uri => $file) {

    // Strip off the file name component before the language code.
    $langcode = preg_replace('!^(.+\\.)?([^\\.]+)$!', '\\2', $file->name);

    // Language codes cannot exceed 12 characters to fit into the {language}
    // table.
    if (strlen($langcode) <= 12) {
      $translations[$langcode] = $uri;
    }
  }
  return $translations;
}