• Модуль: b24connector
  • Путь к файлу: ~/bitrix/modules/b24connector/lib/helper.php
  • Класс: BitrixB24ConnectorHelper
  • Вызов: Helper::onBeforeProlog
static function onBeforeProlog()
{
	global $APPLICATION;

	if(defined('ADMIN_SECTION') && ADMIN_SECTION === true)
		return;

	if (defined('B24CONNECTOR_SKIP') && B24CONNECTOR_SKIP === true)
	{
		return;
	}

	if($connection = Connection::getFields())
	{
		$result = '';

		$restrictions = ButtonSiteTable::getAllRestrictions();

		$dbRes = ButtonTable::getList(array(
			'filter' => array(
				'=APP_ID' => $connection['ID']
			)
		));

		while ($button = $dbRes->fetch())
		{
			$allowedSites = $restrictions[$button['ID']] ?? [SITE_ID];

			if($button['SCRIPT'] !== '' && in_array(SITE_ID, $allowedSites))
			{
				$result .= $button['SCRIPT']."n";
			}
		}

		if ($result !== '')
		{
			Asset::getInstance()->addString($result, false, AssetLocation::BODY_END);

			ob_start();
			$APPLICATION->IncludeComponent('bitrix:b24connector.openline.info', '', ['COMPOSITE_FRAME_TYPE' => 'STATIC']);
			$saoRes = ob_get_contents();
			ob_end_clean();

			Asset::getInstance()->addString($saoRes, false, AssetLocation::BODY_END);
		}
	}
}