- Модуль: im
- Путь к файлу: ~/bitrix/modules/im/classes/general/im_settings.php
- Класс: CIMSettings
- Вызов: CIMSettings::Get
static function Get($userId = false)
{
$userId = $userId === false ? null : $userId;
$userId = Common::getUserId($userId);
if (!$userId)
{
return null;
}
if (Manager::isSettingsMigrated() || Manager::isUserMigrated($userId))
{
$result = Manager::getUserSettings($userId);
if (!$result->isSuccess())
{
return null;
}
$settings = $result->getData();
if(empty($settings['notify']) || empty($settings['general']))
{
return null;
}
return [
self::NOTIFY => self::convertNotifySettingsToOldFormat($settings['notify']['settings']),
self::SETTINGS => $settings['general']['settings'],
];
}
$arSettings[self::SETTINGS] = CUserOptions::GetOption('im', self::SETTINGS, [], $userId);
$arSettings[self::NOTIFY] = CUserOptions::GetOption('im', self::NOTIFY, [], $userId);
// Check fields and add default values
$arSettings[self::SETTINGS] = self::checkValues(self::SETTINGS, $arSettings[self::SETTINGS]);
$arSettings[self::NOTIFY] = self::checkValues(self::NOTIFY, $arSettings[self::NOTIFY]);
return $arSettings;
}