function _locale_invalidate_js

Force the JavaScript translation file(s) to be refreshed.

This function sets a refresh flag for a specified language, or all languages except English, if none specified. JavaScript translation files are rebuilt (with locale_update_js_files()) the next time a request is served in that language.

Parameters

$langcode: The language code for which the file needs to be refreshed.

Return value

New content of the 'system.javascript_parsed' variable.

4 calls to _locale_invalidate_js()
locale_js_alter in drupal/core/modules/locale/locale.module
Implements hook_js_alter().
locale_language_delete in drupal/core/modules/locale/locale.module
Implements hook_language_delete().
locale_language_insert in drupal/core/modules/locale/locale.module
Implements hook_language_insert().
locale_language_update in drupal/core/modules/locale/locale.module
Implements hook_language_update().
1 string reference to '_locale_invalidate_js'
_locale_refresh_translations in drupal/core/modules/locale/locale.module
Refresh related information after string translations have been updated.

File

drupal/core/modules/locale/locale.module, line 918
Enables the translation of the user interface to languages other than English.

Code

function _locale_invalidate_js($langcode = NULL) {
  $parsed = state()
    ->get('system.javascript_parsed') ?: array();
  if (empty($langcode)) {

    // Invalidate all languages.
    $languages = locale_translatable_language_list();
    foreach ($languages as $lcode => $data) {
      $parsed['refresh:' . $lcode] = 'waiting';
    }
  }
  else {

    // Invalidate single language.
    $parsed['refresh:' . $langcode] = 'waiting';
  }
  state()
    ->set('system.javascript_parsed', $parsed);
  return $parsed;
}