• Модуль: intranet
  • Путь к файлу: ~/bitrix/modules/intranet/lib/integration/wizards/portal/ids.php
  • Класс: BitrixIntranetIntegrationWizardsPortalIds
  • Вызов: Ids::getForumId
static function getForumId(string $xmlForumId): ?string
{
	if (empty(self::$forumIds))
	{
		$cacheId = 'forumId';
		$val = self::getFormCache($cacheId);

		if (!is_array($val) && MainLoader::IncludeModule('forum'))
		{
			$val = [];
			$dbRes = BitrixForumForumTable::getList([
				'select' => ['ID', 'XML_ID'],
				'filter' => [
					'=XML_ID' => [
						"PHOTOGALLERY_COMMENTS", // #PHOTOGALLERY_COMMENTS#
						"DOCS_SHARED_COMMENTS",// #SHARED_FILES_FORUM_ID#
						"GENERAL", // #GENERAL_FORUM_ID# - deprecated
						"DOCS_SALES_COMMENTS", // #SALE_FILES_FORUM_ID#
						"DOCS_DIRECTORS_COMMENTS", // #DIRECTORS_FILES_FORUM_ID#
						"GROUPS_AND_USERS_FILES_COMMENTS", // #GROUPS_AND_USERS_FILES_COMMENTS# #FILES_FORUM_ID#
						"NEWS_COMMENTS", // #NEWS_COMMENTS_FORUM_ID#
						"USERS_AND_GROUPS", // #FORUM_ID#

						'intranet_tasks', // #FORUM_ID#,
						'GROUPS_AND_USERS_TASKS_COMMENTS_EXTRANET',
						'bizproc_workflow',
						'WIKI',
						'WIKI_GROUP_COMMENTS',

						'car_forum_demo',
					]
				]
			]);
			while ($res = $dbRes->Fetch())
			{
				$val[$res['XML_ID']] = $res['ID'];
			}

			self::putIntoCache($cacheId, $val);
		}
		self::$forumIds = $val;
	}
	return isset(self::$forumIds[$xmlForumId]) ? (string) self::$forumIds[$xmlForumId] : null;
}