- Модуль: ui
- Путь к файлу: ~/bitrix/modules/ui/lib/infohelper.php
- Класс: BitrixUIInfoHelper
- Вызов: InfoHelper::getParameters
static function getParameters(?string $currentUrl = null): array
{
global $APPLICATION;
$currentUser = CurrentUser::get();
$isBitrix24Cloud = Loader::includeModule('bitrix24');
$application = BitrixMainHttpApplication::getInstance();
$host = self::getHostName();
$userId = $currentUser->getId();
$parameters = [
'url' => $currentUrl ?? 'https://' . $_SERVER['HTTP_HOST'] . $APPLICATION->GetCurPageParam(),
'is_admin' => ($isBitrix24Cloud && CBitrix24::isPortalAdmin($userId))
|| (!$isBitrix24Cloud && $currentUser->isAdmin()) ? 1 : 0,
'tariff' => Option::get('main', '~controller_group_name', ''),
'is_cloud' => $isBitrix24Cloud ? '1' : '0',
'portal_date_register' => $isBitrix24Cloud ? Option::get('main', '~controller_date_create', '') : '',
'host' => $host,
'languageId' => LANGUAGE_ID,
'user_id' => $userId,
'user_email' => $currentUser->getEmail(),
'user_name' => Encoding::convertEncoding($currentUser->getFirstName(), SITE_CHARSET, 'utf-8'),
'user_last_name' => Encoding::convertEncoding($currentUser->getLastName(), SITE_CHARSET, 'utf-8'),
];
if (Loader::includeModule('intranet'))
{
$parameters['user_date_register'] = BitrixIntranetCurrentUser::get()->getDateRegister()?->getTimestamp();
}
if (Loader::includeModule('imbot'))
{
$parameters['support_partner_code'] = Partner24::getBotCode();
$partnerName = Encoding::convertEncoding(Partner24::getPartnerName(), SITE_CHARSET, 'utf-8');
$parameters['support_partner_name'] = $partnerName;
$supportBotId = 0;
if (
class_exists('\Bitrix\ImBot\Bot\Support24')
&& (Support24::getSupportLevel() === Network::SUPPORT_LEVEL_PAID)
&& Support24::isEnabled()
)
{
$supportBotId = (int)Support24::getBotId();
}
elseif (
method_exists('\Bitrix\ImBot\Bot\SupportBox', 'isEnabled')
&& SupportBox::isEnabled()
)
{
$supportBotId = SupportBox::getBotId();
}
$parameters['support_bot'] = $supportBotId;
}
if (!$isBitrix24Cloud)
{
$parameters['head'] = md5("BITRIX" . $application->getLicense()->getKey() . 'LICENCE');
$parameters['key'] = md5($host . $userId . $parameters['head']);
}
else
{
$parameters['key'] = CBitrix24::requestSign($host . $userId);
}
return $parameters;
}