• Модуль: highloadblock
  • Путь к файлу: ~/bitrix/modules/highloadblock/lib/datamanager.php
  • Класс: BitrixHighloadblockDataManager
  • Вызов: DataManager::callOnBeforeUpdateEvent
static function callOnBeforeUpdateEvent($object, $fields, $result)
{
	//event before update
	$event = new EntityEvent($object->entity, self::EVENT_ON_BEFORE_UPDATE, [
		"id" => $object->primary,
		"fields" => $fields,
		'object' => $object
	]);

	$event->send();
	$event->getErrors($result);
	$event->mergeObjectFields($object);

	$oldData = $object->collectValues(Values::ACTUAL, FieldTypeMask::SCALAR);

	//event before update (modern with namespace)
	$event = new EntityEvent($object->entity, self::EVENT_ON_BEFORE_UPDATE, [
		"id" => $object->primary,
		"primary" => $object->primary,
		"fields" => $fields,
		'object' => $object,
		"oldFields" => $oldData
	], true);

	$event->send();
	$event->getErrors($result);
	$event->mergeObjectFields($object);
}