• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/volume/storage/storage.php
  • Класс: BitrixDiskVolumeStorageStorage
  • Вызов: Storage::getTitle
static function getTitle(VolumeFragment $fragment): ?string
{
	$title = $fragment->getTitle();

	if ($fragment->getEntityType() == ProxyTypeUser::className())
	{
		$storage = $fragment->getStorage();

		if ($storage instanceof DiskStorage)
		{
			$proxy = $storage->getProxyType();
			if ($proxy instanceof ProxyTypeUser)
			{
				$title = $proxy->getEntityTitle();
			}
			else
			{
				$title = $storage->getName();
			}
		}

		$user = DiskUser::loadById($fragment->getEntityId());
		if ($user instanceof DiskUser && $user->getActive() !== 'Y')
		{
			// user fired
			Loc::loadMessages(__DIR__. '/../module/socialnetwork.php');

			if($user->getPersonalGender() === 'F')
			{
				$title = Loc::getMessage('DISK_VOLUME_MODULE_SONET_FIRED_F', ['#USER_NAME#' => $title]);
			}
			else
			{
				$title = Loc::getMessage('DISK_VOLUME_MODULE_SONET_FIRED_M', ['#USER_NAME#' => $title]);
			}
		}
	}
	elseif ($fragment->getEntityType())
	{
		$storage = $fragment->getStorage();

		if ($storage instanceof DiskStorage)
		{
			$proxy = $storage->getProxyType();
			if (
				$storage->getName() == $proxy->getEntityTitle()
				|| mb_stripos($proxy->getEntityTitle(), $storage->getName()) !== false
			)
			{
				$title = $storage->getName();
			}
			else
			{
				$title = $proxy->getEntityTitle();
			}
		}
	}

	return $title;
}