• Модуль: sender
  • Путь к файлу: ~/bitrix/modules/sender/lib/posting/builder.php
  • Класс: BitrixSenderPostingBuilder
  • Вызов: Builder::addPostingRecipients
protected function addPostingRecipients(array &$list)
{
	$dataList = array();
	foreach($list as $code => $data)
	{
		if (!isset($data['EXCLUDED']) || $data['EXCLUDED'])
		{
			continue;
		}

		$recipientInsert = array(
			'CONTACT_ID' => (int) $data['CONTACT_ID'],
			'STATUS' => PostingRecipientTable::SEND_RESULT_NONE,
			'POSTING_ID' => (int) $this->postingId,
			'USER_ID' => null,
			'FIELDS' => null
		);

		if (array_key_exists('USER_ID', $data) && intval($data['USER_ID']) > 0)
		{
			$recipientInsert['USER_ID'] = intval($data['USER_ID']);
		}

		if (array_key_exists('FIELDS', $data) && count($data['FIELDS']) > 0)
		{
			$recipientInsert['FIELDS'] =  serialize($data['FIELDS']);
		}

		$dataList[] = $recipientInsert;
	}

	if(count($dataList) == 0)
	{
		return;
	}

	SqlBatch::insert(
		PostingRecipientTable::getTableName(),
		$dataList,
		array('USER_ID', 'FIELDS')
	);
}