• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/location/tree.php
  • Класс: BitrixSaleLocationis
  • Вызов: is::walkTreeInDeep
static function walkTreeInDeep($primary, $edges, &$nodes, $margin, $depth = 0, $dontCareEvents = false)
{
	$lMargin = $margin;

	if(empty($edges[$primary]))
		$rMargin = $margin + 1;
	else
	{
		$offset = $margin + 1;
		foreach($edges[$primary] as $sNode)
			$offset = self::walkTreeInDeep($sNode, $edges, $nodes, $offset, $depth+1, $dontCareEvents);

		$rMargin = $offset;
	}

	// update !
	if($primary != 'ROOT')
	{
		$nodes[$primary]['LEFT_MARGIN'] = intval($lMargin);
		$nodes[$primary]['RIGHT_MARGIN'] = intval($rMargin);
		$nodes[$primary]['DEPTH_LEVEL'] = $depth;
	}

	return $rMargin + 1;
}