• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/integration/mail.php
  • Класс: BitrixTasksIntegrationMail
  • Вызов: Mail::processAttachments
static function processAttachments($message, array $attachments, $userId): array
{
	// save attachments
	$files = [];
	$relations = [];

	if (is_array($attachments))
	{
		foreach ($attachments as $key => $file)
		{
			if (!is_array($file) || empty($file))
			{
				continue;
			}

			$uploadResult = Disk::uploadFile($file, $userId);
			if ($uploadResult->isSuccess())
			{
				$uploadData = $uploadResult->getData();
				$files[] = $relations[$key] = $uploadData['ATTACHMENT_ID'];
			}
		}
	}

	// also, translate possible [DISK FILE] tags in the message, if any
	$message = static::translateRawAttachments($message, $relations);

	return [$message, $files];
}