- Модуль: lists
- Путь к файлу: ~/bitrix/modules/lists/lib/importer.php
- Класс: BitrixListsImporter
- Вызов: Importer::loadDataProcesses
static function loadDataProcesses($lang, $systemProcesses = true, &$fileData, $path = null)
{
if (empty($lang))
throw new MainArgumentNullException("lang");
if(in_array($lang, self::$listRuLanguage))
$lang = 'ru';
if(!empty($path))
{
$path = rtrim($path, "/");
$path = $path."/";
}
else
{
$path = self::getPathToProcesses($lang, $systemProcesses);
}
$dir = new MainIODirectory($path);
if (!$dir->isExists() && $lang === 'en')
{
return;
}
if ($dir->isExists())
{
$children = $dir->getChildren();
foreach ($children as $key => $child)
{
/** @var MainIOFile $child */
if ($child->isFile() && ($child->getExtension() == "prc"))
{
$data = self::getDataProcess($path.$child->getName());
$fileData[$data['CODE']]['FILE_NAME'] = $child->getName();
$fileData[$data['CODE']]['FILE_PATH'] = str_replace(MainLoader::getDocumentRoot(), '', $child->getPath());
$fileData[$data['CODE']]['NAME'] = $data['NAME'];
$fileData[$data['CODE']]['DESCRIPTION'] = $data['DESCRIPTION'];
$fileData[$data['CODE']]['CODE'] = $data['CODE'];
$fileData[$data['CODE']]['IBLOCK_TYPE_ID'] = $data['IBLOCK_TYPE_ID'];
$fileData[$data['CODE']]['DIRECTORY_NAME'] = $child->getDirectory()->getName();
}
elseif($child->isDirectory())
{
self::loadDataProcesses($lang, $systemProcesses, $fileData, $child->getPath());
}
}
}
else
{
$path = self::getPathToProcesses("en", $systemProcesses);
self::loadDataProcesses('en', $systemProcesses, $fileData, $path);
}
}