...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/classes/general/restservice.php
- Класс: \CCrmRestProxyBase
- Вызов: CCrmRestProxyBase::tryExternalizeDiskFileField
protected function tryExternalizeDiskFileField(&$fields, $fieldName, $multiple = false) { if(!isset($fields[$fieldName])) { return false; } $options = array( 'OWNER_TYPE_ID' => $this->getOwnerTypeID(), 'OWNER_ID' => $fields['ID'], 'VIEW_PARAMS' => array('auth' => $this->getAuthToken()), 'USE_ABSOLUTE_PATH' => true ); if(!$multiple) { $fileID = intval($fields[$fieldName]); $info = DiskManager::getFileInfo($fileID, false, $options); if(empty($info)) { unset($fields[$fieldName]); return false; } else { $fields[$fieldName] = array( 'id' => $fileID, 'url' => $info['VIEW_URL'] ?? '' ); return true; } } $result = array(); $fileIDs = $fields[$fieldName]; if(is_array($fileIDs)) { foreach($fileIDs as $fileID) { $info = DiskManager::getFileInfo($fileID, false, $options); if(empty($info)) { continue; } $result[] = array( 'id' => $fileID, 'url' => $info['VIEW_URL'] ?? '' ); } } if(!empty($result)) { $fields[$fieldName] = &$result; unset($result); return true; } unset($fields[$fieldName]); return false; }