• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/composite/engine.php
  • Класс: BitrixMainCompositeEngine
  • Вызов: Engine::setEnable
static function setEnable($isEnabled = true)
{
	if ($isEnabled && !self::$isEnabled)
	{
		self::$onBeforeHandleKey = AddEventHandler(
			"main",
			"OnBeforeEndBufferContent",
			array(__CLASS__, "onBeforeEndBufferContent")
		);
		self::$onRestartBufferHandleKey = AddEventHandler(
			"main",
			"OnBeforeRestartBuffer",
			array(__CLASS__, "onBeforeRestartBuffer")
		);
		self::$onBeforeLocalRedirect = AddEventHandler(
			"main",
			"OnBeforeLocalRedirect",
			array(__CLASS__, "onBeforeLocalRedirect"),
			2
		);
		self::$isEnabled = true;
		CJSCore::init(array("fc"));
	}
	elseif (!$isEnabled && self::$isEnabled)
	{
		if (self::$onBeforeHandleKey >= 0)
		{
			RemoveEventHandler("main", "OnBeforeEndBufferContent", self::$onBeforeHandleKey);
		}

		if (self::$onRestartBufferHandleKey >= 0)
		{
			RemoveEventHandler("main", "OnBeforeRestartBuffer", self::$onRestartBufferHandleKey);
		}

		if (self::$onBeforeLocalRedirect >= 0)
		{
			RemoveEventHandler("main", "OnBeforeLocalRedirect", self::$onBeforeLocalRedirect);
		}

		self::$isEnabled = false;
	}
}