• Модуль: intranet
  • Путь к файлу: ~/bitrix/modules/intranet/lib/DepartmentStructure.php
  • Класс: BitrixIntranetDepartmentStructure
  • Вызов: DepartmentStructure::getBaseDepartmentId
public function getBaseDepartmentId(): ?int
{
	if (isset($this->baseDepartmentId))
	{
		return $this->baseDepartmentId;
	}
	$this->baseDepartmentId = null;
	if (MainLoader::includeModule('iblock'))
	{
		$filter = (($iblockId = $this->getInfoblockId()) ?
			['=IBLOCK.ID' => $iblockId] :
			['=IBLOCK.CODE' => self::DEPARTMENT_IBLOCK_CODE]
		);

		if ($rootSectionInfo = IblockSectionTable::getList([
			'select' => ['ID'],
			'filter' => array_merge(
				$filter,
				[
					'=IBLOCK_SECTION_ID' => 0,
					'=ACTIVE' => 'Y'
				]
			),
			'order' => ['LEFT_MARGIN' => 'asc'],
			'limit' => 1,
			'cache' => ['ttl' => 84600]
		])->fetch())
		{
			$this->baseDepartmentId = $rootSectionInfo['ID'];
		}
	}
	return $this->baseDepartmentId;
}