• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/lib/V2/Settings/Preset/Preset.php
  • Класс: BitrixImV2SettingsPresetPreset
  • Вызов: Preset::bindToUser
public function bindToUser(int $userId, array $bindingConfiguration): Result
{
	$result = new Result();

	$binding = [];
	if (in_array(self::BIND_GENERAL, $bindingConfiguration, true))
	{
		$binding['GENERAL_GROUP_ID'] = $this->id;
	}
	if (in_array(self::BIND_NOTIFY, $bindingConfiguration, true))
	{
		$binding['NOTIFY_GROUP_ID'] = $this->id;
	}

	if (empty($binding))
	{
		return $result->addError(new PresetError(PresetError::BINDING_NOT_SPECIFIED));
	}

	$updateResult = OptionUserTable::update($userId, $binding);

	if (!$updateResult->isSuccess())
	{
		return $result->addErrors($updateResult->getErrors());
	}

	return $result->setResult(true);
}