• Модуль: webdav
  • Путь к файлу: ~/bitrix/modules/webdav/classes/webdavstorage.php
  • Класс: CWebDavStorageCore
  • Вызов: CWebDavStorageCore::regenerateNameIfNonUnique
public function regenerateNameIfNonUnique($name, $targetDirectoryId)
{
	$key = $this->getStorageId();

	$mainPartName = $name;
	$newName = $mainPartName;
	$count = 0;
	/** @var CWebDavIblock $className */
	$className = $this->getStorageClassName();
	while(!$className::sCheckUniqueName($key['IBLOCK_ID'], $targetDirectoryId, '', $newName, $res))
	{
		$count++;
		if(mb_strstr($mainPartName, '.', true))
		{
			$newName = mb_strstr($mainPartName, '.', true)." ({$count})".mb_strstr($mainPartName, '.');
		}
		else
		{
			$newName = $mainPartName." ({$count})";
		}
	}

	return $newName;
}