• Модуль: mobileapp
  • Путь к файлу: ~/bitrix/modules/mobileapp/lib/janative/entity/component.php
  • Класс: BitrixMobileAppJanativeEntityComponent
  • Вызов: Component::getEnvContent
public function getEnvContent(): string {
	global $USER;

	$result = Utils::jsonEncode($this->getResult());
	$object = Utils::jsonEncode($this->getInfo());

	$isExtranetModuleInstalled = Loader::includeModule('extranet');

	if ($isExtranetModuleInstalled)
	{
		$extranetSiteId = CExtranet::getExtranetSiteId();
		if (!$extranetSiteId)
		{
			$isExtranetModuleInstalled = false;
		}
	}
	$isExtranetUser = $isExtranetModuleInstalled && !CExtranet::IsIntranetUser();
	$siteId = (
	$isExtranetUser
		? $extranetSiteId
		: SITE_ID
	);


	$siteDir = SITE_DIR;
	if ($isExtranetUser)
	{
		$res = CSite::getById($siteId);
		if (
			($extranetSiteFields = $res->fetch())
			&& ($extranetSiteFields['ACTIVE'] != 'N')
		)
		{
			$siteDir = $extranetSiteFields['DIR'];
		}
	}


	$env = Utils::jsonEncode([
		'siteId' => $siteId,
		'languageId' => LANGUAGE_ID,
		'siteDir' => $siteDir,
		'userId' => $USER->GetId(),
		'extranet' => $isExtranetUser
	]);
	$file = new File(Application::getDocumentRoot()."/bitrix/js/mobileapp/platform.js");
	$export = $file->getContents();
	$inlineContent = <<name' ---------- 
$export
(()=>
{
     this.result = $result;
     this.component = $object;
     this.env = $env;
})();
							
JS;

	return $inlineContent;
}