• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/classes/general/taskfilterctrl.php
  • Класс: CTaskFilterCtrl
  • Вызов: CTaskFilterCtrl::convertPresetsListToTreeHelper
private function convertPresetsListToTreeHelper($arPresets, $curRoot)
{
	$rc = array();

	foreach ($arPresets as $presetId => $arPresetData)
	{
		// current level items
		if ($arPresetData['Parent'] === $curRoot)
		{
			$rc[$presetId] = $arPresetData;
			unset ($arPresets[$presetId]);

			// collect children
			$arSubItems = $this->ConvertPresetsListToTreeHelper($arPresets, $presetId);
			if (count($arSubItems))
			{
				$rc[$presetId]['#Children'] = $arSubItems;

				foreach ($arSubItems as $subItemPresetId => $v)
					unset ($arPresets[$subItemPresetId]);
			}

			continue;
		}
	}

	return ($rc);
}