- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/location/import/compiler/db/exporttree.php
- Класс: BitrixSaleLocationImportCompilerDbExportTreeTable
- Вызов: ExportTreeTable::waklInDeepBundle
private function waklInDeepBundle($callbacks, $ignoreThisAndDeeper = array(), $parentCode = '', $depth = 1)
{
if($depth > static::RECURSION_MAX_DEPTH)
throw new MainSystemException('Too deep recursion');
$res = $this->getList(array('filter' => array('PARENT_CODE' => $parentCode)));
while($item = $res->fetch())
{
array_push($this->exportPath, $item);
$goDeeper = true;
if(call_user_func($callbacks['ITEM'], $item, $this) === false)
$goDeeper = false;
if(isset($ignoreThisAndDeeper[$item['TYPE_CODE']]))
$goDeeper = false;
if($goDeeper)
$this->waklInDeepBundle($callbacks, $ignoreThisAndDeeper, $item['CODE'], $depth + 1);
array_pop($this->exportPath);
}
}