• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/volume/module/im.php
  • Класс: BitrixDiskVolumeModuleIm
  • Вызов: Im::getTitle
static function getTitle(VolumeFragment $fragment): ?string
{
	if (
		$fragment->getIndicatorType() == VolumeFolder::className()
		|| $fragment->getIndicatorType() == VolumeFolderTree::className()
	)
	{
		$specific = $fragment->getSpecific();
		if ($specific['chat']['TITLE'] != '')
		{
			$title = $specific['chat']['TITLE'];
		}
		elseif($specific['userCount'] > 0)
		{
			$chatUserNameList = [];
			foreach ($specific['userInChat'] as $chatUserId)
			{
				$chatUserNameList[] = $userName = BitrixImUser::getInstance($chatUserId)->getFullName();
				if (count($chatUserNameList) >= 3)
				{
					$chatUserNameList[] = '...';
					break;
				}
			}
			$title = implode(', ', $chatUserNameList);
		}
		else
		{
			$folder = $fragment->getFolder();
			if (!$folder instanceof DiskFolder)
			{
				throw new ArgumentTypeException('Fragment must be subclass of '.DiskFolder::className());
			}
			$title = $folder->getOriginalName();
		}

		return $title;
	}

	Loc::loadMessages(__FILE__);
	return Loc::getMessage('DISK_VOLUME_MODULE_IM');
}