• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/uf/fileusertype.php
  • Класс: BitrixDiskUfFileUserType
  • Вызов: FileUserType::getTemplateType
static function getTemplateType($params)
{
	$params = array_change_key_case($params, CASE_UPPER);
	$result = '';
	if (isset($params['GRID']) && $params['GRID'] == 'Y')
	{
		$result = 'grid';
	}

	if (
		!empty($params['ARUSERFIELD'])
		&& !empty($params['ARUSERFIELD']['ENTITY_ID'])
		&& !empty($params['ARUSERFIELD']['ENTITY_VALUE_ID'])
	)
	{
		$cacheId = "{$params['ARUSERFIELD']['ENTITY_ID']}.{$params['ARUSERFIELD']['ENTITY_VALUE_ID']}";
		if (array_key_exists($cacheId, self::$templateTypeCache))
		{
			$result = self::$templateTypeCache[$cacheId];
		}
		else
		{
			$res = AttachedViewTypeTable::getList([
				'filter' => [
					'=ENTITY_TYPE' => $params['ARUSERFIELD']['ENTITY_ID'],
					'ENTITY_ID' => $params['ARUSERFIELD']['ENTITY_VALUE_ID']
				],
				'select' => [ 'VALUE' ]
			]);

			if ($paramFields = $res->fetch())
			{
				$result = $paramFields['VALUE'];
			}

			self::$templateTypeCache[$cacheId] = $result;
		}

	}

	return $result;
}