locale_batch_by_component
includes/locale.inc, строка 2537
- Версии
- 6
locale_batch_by_component($components, $finished = '_locale_batch_system_finished')
Подготовка пакетной обработки при инсталяции модулей или включении темы. Она импортирует переводы для недавно добавленных компонентов на всех языках, уже настроенных на сайте.
Параметры
$components
Имя массива компонента (темы и/или модуля) для импорта перевода.
$finished
Дополнительный коллбэк для пакетной обработки.
Связанные темы
Код
<?php
function locale_batch_by_component($components, $finished = '_locale_batch_system_finished') {
$files = array();
$languages = language_list('enabled');
unset($languages[1]['en']);
if (count($languages[1])) {
$language_list = join('|', array_keys($languages[1]));
// Collect all files to import for all $components.
$result = db_query("SELECT name, filename FROM {system} WHERE status = 1");
while ($component = db_fetch_object($result)) {
if (in_array($component->name, $components)) {
// Collect all files for this component in all enabled languages, named
// as $langcode.po or with names ending with $langcode.po. This allows
// for filenames like node-module.de.po to let translators use small
// files and be able to import in smaller chunks.
$files = array_merge($files, file_scan_directory(dirname($component->filename) .'/translations', '(^|\.)('. $language_list .')\.po$', array('.', '..', 'CVS'), 0, FALSE));
}
}
return _locale_batch_build($files, $finished);
}
return FALSE;
}
?>
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии