• Модуль: mail
  • Путь к файлу: ~/bitrix/modules/mail/lib/mailmessageuid.php
  • Класс: BitrixMailMailMessageUidTable
  • Вызов: MailMessageUidTable::updateList
static function updateList(array $filter, array $fields, array $eventData = [])
{
	$entity = static::getEntity();
	$connection = $entity->getConnection();

	$result = $connection->query(sprintf(
		"UPDATE %s SET %s WHERE %s",
		$connection->getSqlHelper()->quote($entity->getDbTableName()),
		$connection->getSqlHelper()->prepareUpdate($entity->getDbTableName(), $fields)[0],
		EntityQuery::buildFilterSql($entity, $filter)
	));
	$eventManager = EventManager::getInstance();
	$eventKey = $eventManager->addEventHandler(
		'mail',
		'onMailMessageModified',
		array(MessageEventManager::class, 'onMailMessageModified')
	);
	$event = new BitrixMainEvent('mail', 'onMailMessageModified', array(
		'MAIL_FIELDS_DATA' => $eventData,
		'UPDATED_FIELDS_VALUES' => $fields,
		'UPDATED_BY_FILTER' => $filter,
	));
	$event->send();
	EventManager::getInstance()->removeEventHandler('mail', 'onMailMessageModified', $eventKey);

	return $result;
}