- Модуль: fileman
- Путь к файлу: ~/bitrix/modules/fileman/classes/general/html_editor.php
- Класс: CHTMLEditor
- Вызов: CHTMLEditor::_HandleComponentElement
static function _HandleComponentElement($arEls, $path)
{
foreach ($arEls as $elName => $arEl)
{
$arEl['*'] = $arEl['*'] ?? null;
if (mb_strpos($path, ",") !== false)
{
if (isset($arEl['*']))
{
$thirdLevelName = '__bx_thirdLevel_'.self::$thirdLevelId;
self::$thirdLevelId++;
foreach ($arEl['*'] as $name => $comp)
{
self::$arComponents['items'][] = array(
"path" => $path,
"name" => $name,
"type" => $comp['TYPE'],
"title" => $comp['TITLE'],
"complex" => $comp['COMPLEX'],
"params" => array("DESCRIPTION" => $comp['DESCRIPTION']),
"thirdlevel" => $thirdLevelName
);
}
}
continue;
}
$realPath = (($path == '') ? $elName : $path.','.$elName);
// Group
self::$arComponents['groups'][] = array(
"path" => $path,
"name" => $elName,
"title" => (isset($arEl['@']['NAME']) && $arEl['@']['NAME'] !== '') ? $arEl['@']['NAME'] : $elName
);
if (isset($arEl['#']))
{
self::_HandleComponentElement($arEl['#'], $realPath);
}
if (is_array($arEl['*']) && !empty($arEl['*']))
{
foreach ($arEl['*'] as $name => $comp)
{
self::$arComponents['items'][] = array(
"path" => $realPath,
"name" => $name,
"type" => $comp['TYPE'],
"title" => $comp['TITLE'],
"complex" => $comp['COMPLEX'],
"params" => array("DESCRIPTION" => $comp['DESCRIPTION']),
"thirdlevel" => false
);
}
}
}
}