• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/Relation/StorageStrategy/ContactToFactory.php
  • Класс: Bitrix\Crm\Relation\StorageStrategy\ContactToFactory
  • Вызов: ContactToFactory::editBinding
protected function editBinding(string $method, ItemIdentifier $parent, ItemIdentifier $child): Result
{
	$item = $this->childFactory->getItem($child->getEntityId());
	if (!$item)
	{
		return (new Result())->addError(new Error('The child item does not exist: ' . $child));
	}

	/** @see Item::bindContacts() */
	/** @see Item::unbindContacts() */
	$item->$method(
		EntityBinding::prepareEntityBindings(\CCrmOwnerType::Contact, [$parent->getEntityId()])
	);

	$operation = $this->childFactory->getUpdateOperation($item);

	$operation->disableCheckAccess();

	$operation->excludeItemsFromTimelineRelationEventsRegistration([$parent]);

	return $operation->launch();
}