Кастомные свойства типа "Файл" в инфоблоках

Рейтинг: 1.1751  
На голосовании
Предложил Пользователь 32566 11.07.2015 18:26:06

Кастомные свойства типа "Файл" в инфоблоках

При обновлении и добавлении элементов инфоблоков нужно убрать дополнительные обработки передаваемых значений свойств типа файл (PROPERTY_TYPE=F), если эти свойства являются кастомными (USER_TYPE != "" ).
Например, в файле /bitrix/modules/iblock/admin/iblock_element_edit.php (строка ~568 ) нужно убрать преобразование значения через функцию CIBlock::makeFilePropArray(...).
Это позволит создавать свои загрузчики файлов, которые будут иметь предсказуемую разработчиком логику. Сейчас же с выпуском обновления Битрикса мой модуль перестал работать из-за того, что передаваемый в значение ID файла:
array("VALUE"=>777); 
с какого-то фига вдруг превратился в:
[VALUE] => Array(
     [name] => 
     [type] => 
     [tmp_name] => 
     [error] => 4
     [size] => 0
)
Если свойство кастомное то на вход функции ConvertToDB должно поступать ровно то, что отправлено через форму редактирования или через какие-либо средства API.

P.S. В данный момент пришлось переключить свой модуль с использования типа "F" на "N", что накладывает ограничение на использование кастомного свойства в штатных шаблонах решений от Битрикса.