• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/lib/copy/implement/section.php
  • Класс: BitrixIblockCopyImplementSection
  • Вызов: Section::copyChildren
public function copyChildren(Container $container, $sectionId, $copiedSectionId)
{
	$results = [];

	$results[] = $copyChildrenResult = $this->copyChildSections($sectionId, $copiedSectionId);

	$copyResult = $copyChildrenResult->getData();
	$sectionsRatio[$sectionId] = $this->getSectionsMapIds($copyResult);
	$sectionsRatio[$sectionId] = $sectionsRatio[$sectionId] + [$sectionId => $copiedSectionId];

	$enumRatio = [];

	foreach ($this->child as $child)
	{
		if ($child instanceof ElementChild)
		{
			$child->setEnumRatio($enumRatio);
			$child->setSectionsRatio($sectionsRatio);
		}

		$results[] = $child->copy($sectionId, $copiedSectionId);

		if (method_exists($child, "getEnumRatio"))
		{
			$enumRatio = $child->getEnumRatio();
		}
	}

	return $this->getResult();
}