• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/integration/disk/connector/task.php
  • Класс: BitrixTasksIntegrationDiskConnectorTask
  • Вызов: Task::getCover
static function getCover($id, $width=0, $height=0)
{
	$result = array();
	$width = intval($width);
	$height = intval($height);

	if (empty($id))
	{
		return $id;
	}

	$res = BitrixDiskInternalsAttachedObjectTable::getList(array(
		'select' => array(
			'ID',
			'TASK_ID' => 'ENTITY_ID',
		),
		'runtime' => array(
			'FILE' => new BitrixMainEntityReferenceField(
				'FILE',
				'BitrixMainFileTable',
				array('=this.OBJECT.FILE_ID' => 'ref.ID')
			),
		),
		'filter' => array(
			'=ENTITY_TYPE' => self::className(),
			'ENTITY_ID' => $id,
			'OBJECT.TYPE_FILE' => BitrixDiskTypeFile::IMAGE,
			//'>=FILE.WIDTH' => $width,
			//'>=FILE.HEIGHT' => $height
		),
		'order' => array(
			'ID' => 'ASC'
		),
		'group' => array(
			'ENTITY_ID'
		)
	));
	while ($row = $res->fetch())
	{
		$result[$row['TASK_ID']] = BitrixDiskUrlManager::getUrlToActionShowUfFile(
			$row['ID'],
			$width*$height > 0
			? array(
				'width' => $width,
				'height' => $height,
				//'exact' => 'Y'
			)
			: array()
		);
	}

	return is_array($id) ? $result : $result[$id];
}