• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/Field/Category.php
  • Класс: Bitrix\Crm\Field\Category
  • Вызов: Category::processAfterSave
public function processAfterSave(Item $itemBeforeSave, Item $item, Context $context = null): FieldAfterSaveResult
{
	$result = new FieldAfterSaveResult();

	if ($itemBeforeSave->get($this->getName()) === $item->get($this->getName()))
	{
		return $result;
	}

	$permissionEntityType = \Bitrix\Crm\Service\UserPermissions::getItemPermissionEntityType($itemBeforeSave);
	\Bitrix\Crm\Security\Manager::resolveController($permissionEntityType)
		->unregister($permissionEntityType, $item->getId())
	;

	$eventNames = $this->getSettings()['eventNames'] ?? [];
	if (!empty($eventNames['onAfterChange']) && !$itemBeforeSave->isNew())
	{
		$this->sendOnAfterCategoryChangeEvent($eventNames['onAfterChange'], $item);
	}

	return $result;
}