function locale_translation_load_sources

Same name and namespace in other branches
  1. 9 core/modules/locale/locale.translation.inc \locale_translation_load_sources()
  2. 8.9.x core/modules/locale/locale.translation.inc \locale_translation_load_sources()
  3. 11.x core/modules/locale/locale.translation.inc \locale_translation_load_sources()

Loads cached translation sources containing current translation status.

Parameters

array $projects: Array of project names. Defaults to all translatable projects.

array $langcodes: Array of language codes. Defaults to all translatable languages.

Return value

array Array of source objects. Keyed with <project name>:<language code>.

See also

locale_translation_source_build()

File

core/modules/locale/locale.translation.inc, line 104

Code

function locale_translation_load_sources(?array $projects = NULL, ?array $langcodes = NULL) {
  $sources = [];
  $projects = $projects ? $projects : array_keys(locale_translation_get_projects());
  $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
  // Load source data from locale_translation_status cache.
  $status = locale_translation_get_status();
  // Use only the selected projects and languages for update.
  foreach ($projects as $project) {
    foreach ($langcodes as $langcode) {
      $sources[$project][$langcode] = $status[$project][$langcode] ?? NULL;
    }
  }
  return $sources;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.