- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/integration/disk/rest/attachment.php
- Класс: BitrixTasksIntegrationDiskRestAttachment
- Вызов: Attachment::add
static function add($ownerId, array $fileParameters, array $parameters)
{
global $USER_FIELD_MANAGER;
$ownerId = Assert::expectStringNotNull($ownerId, '$ownerId');
$fileParameters['NAME'] = Assert::expectStringNotNull($fileParameters['NAME'], '$fileParameters[NAME]');
$parameters['USER_ID'] = Assert::expectIntegerPositive($parameters['USER_ID'], '$parameters[USER_ID]');
$parameters['ENTITY_ID'] = Assert::expectStringNotNull($parameters['ENTITY_ID'], '$parameters[ENTITY_ID]');
$parameters['FIELD_NAME'] = Assert::expectStringNotNull($parameters['FIELD_NAME'], '$parameters[FIELD_NAME]');
static::checkFieldExistsThrowException($parameters['ENTITY_ID'], $parameters['FIELD_NAME']);
$fileId = static::uploadFile($fileParameters['NAME'], $fileParameters['CONTENT'], array('USER_ID' => $parameters['USER_ID']));
$currentValue = static::getValue($ownerId, $parameters['ENTITY_ID'], $parameters['FIELD_NAME']);
$currentValue[] = FileUserType::NEW_FILE_PREFIX.$fileId;
$USER_FIELD_MANAGER->Update($parameters['ENTITY_ID'], $ownerId, array(
$parameters['FIELD_NAME'] => $currentValue
), $parameters['USER_ID']);
return static::getIdByFileId($fileId, $ownerId, $parameters['ENTITY_ID'], $parameters['FIELD_NAME']);
}