• Модуль: ui
  • Путь к файлу: ~/bitrix/modules/ui/lib/Avatar/Mask/Helper.php
  • Класс: BitrixUIAvatarMaskHelper
  • Вызов: Helper::getData
static function getData(?int $fileId): ?array
{
	if ($fileId > 0 && ($file = CFile::GetByID($fileId)->Fetch()))
	{
		$result = [
			// 'name' => $file['FILE_NAME'],
			// 'width' => $file['WIDTH'],
			// 'height' => $file['HEIGHT'],
			// 'size' => $file['FILE_SIZE'],
			// 'type' => $file['CONTENT_TYPE'],
			'src' => CFile::GetFileSRC($file),
			// 'meta' => $file['META']
		];

		if ($file['VERSION_ORIGINAL_ID'] == $fileId)
		{
			$originalFile = CFile::GetByID($fileId, true)->Fetch();
			$maskId = null;
			if (
				($metaData = $file['META'] ? MainWebJson::decode($file['META']) : [])
				&& is_array($metaData)
				&& isset($metaData['maskInfo'])
				&& $metaData['maskInfo']['id'] > 0
			)
			{
				$maskId = $metaData['maskInfo']['id'];
			}
			else if ($res = AvatarMaskItemToFileTable::getList([
				'select' => ['*'],
				'filter' => ['FILE_ID' => $fileId],
				'limit' => 1
			])->fetch())
			{
				$maskId = $res['ITEM_ID'];
			}

			$result = [
				// 'name' => $originalFile['FILE_NAME'],
				// 'width' => $originalFile['WIDTH'],
				// 'height' => $originalFile['HEIGHT'],
				// 'size' => $originalFile['FILE_SIZE'],
				// 'type' => $originalFile['CONTENT_TYPE'],
				'src' => CFile::GetFileSRC($originalFile),
				'maskId' => $maskId
			];
		}
		return $result;
	}
	return null;
}