- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/main.php
- Класс: CAllMain
- Вызов: CAllMain::EndBufferContent
public function EndBufferContent($content="")
{
if ($this->buffer_man)
{
$this->auto_buffer_cleaned = true;
return "";
}
CompositeEngine::checkAdminPanel();
if (function_exists("getmoduleevents"))
{
foreach (GetModuleEvents("main", "OnBeforeEndBufferContent", true) as $arEvent)
{
ExecuteModuleEventEx($arEvent, array());
}
}
$asset = Asset::getInstance();
$asset->addString(CJSCore::GetCoreMessagesScript(), false, AssetLocation::AFTER_CSS, AssetMode::STANDARD);
$asset->addString(CJSCore::GetCoreMessagesScript(true), false, AssetLocation::AFTER_CSS, AssetMode::COMPOSITE);
$asset->addString($this->GetSpreadCookieHTML(), false, AssetLocation::AFTER_JS, AssetMode::STANDARD);
if ($asset->canMoveJsToBody() && CJSCore::IsCoreLoaded())
{
$asset->addString(CJSCore::GetInlineCoreJs(), false, AssetLocation::BEFORE_CSS, AssetMode::ALL);
}
if (is_object($GLOBALS["APPLICATION"])) //php 5.1.6 fix: http://bugs.php.net/bug.php?id=40104
{
$cnt = count($this->buffer_content_type);
for ($i = 0; $i < $cnt; $i++)
{
$this->buffer_content[$i*2+1] = call_user_func_array($this->buffer_content_type[$i]["F"], $this->buffer_content_type[$i]["P"]);
}
}
$compositeContent = CompositeEngine::startBuffering($content);
$content = implode("", $this->buffer_content).$content;
if (function_exists("getmoduleevents"))
{
foreach (GetModuleEvents("main", "OnEndBufferContent", true) as $arEvent)
{
ExecuteModuleEventEx($arEvent, array(&$content));
}
}
$wasContentModified = CompositeEngine::endBuffering($content, $compositeContent);
if (!$wasContentModified && $asset->canMoveJsToBody())
{
$asset->moveJsToBody($content);
}
return $content;
}