locale_system_update(array $components)
Imports translations when new modules or themes are installed.
This function will start a batch to import translations for the added components.
Parameters
array $components: An array of arrays of component (theme and/or module) names to import translations for, indexed by type.
File
- core/modules/locale/locale.module, line 401
- Enables the translation of the user interface to languages other than English.
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | function locale_system_update( array $components ) { $components += array ( 'module' => array (), 'theme' => array ()); $list = array_merge ( $components [ 'module' ], $components [ 'theme' ]); // Skip running the translation imports if in the installer, // because it would break out of the installer flow. We have // built-in support for translation imports in the installer. if (!drupal_installation_attempted() && locale_translatable_language_list()) { if (\Drupal::config( 'locale.settings' )->get( 'translation.import_enabled' )) { module_load_include( 'compare.inc' , 'locale' ); // Update the list of translatable projects and start the import batch. // Only when new projects are added the update batch will be triggered. // Not each enabled module will introduce a new project. E.g. sub modules. $projects = array_keys (locale_translation_build_projects()); if ( $list = array_intersect ( $list , $projects )) { module_load_include( 'fetch.inc' , 'locale' ); // Get translation status of the projects, download and update // translations. $options = _locale_translation_default_update_options(); $batch = locale_translation_batch_update_build( $list , [], $options ); batch_set( $batch ); } } // Construct a batch to update configuration for all components. Installing // this component may have installed configuration from any number of other // components. Do this even if import is not enabled because parsing new // configuration may expose new source strings. \Drupal::moduleHandler()->loadInclude( 'locale' , 'bulk.inc' ); if ( $batch = locale_config_batch_update_components([])) { batch_set( $batch ); } } } |
Please login to continue.