• Модуль: rpa
  • Путь к файлу: ~/bitrix/modules/rpa/lib/model/typetable.php
  • Класс: BitrixRpaModelTypeTable
  • Вызов: TypeTable::generateName
static function generateName(string $title = null, int $try = 0): ?string
{
	if($try > static::MAX_TRIES_GENERATE_NAME)
	{
		return null;
	}
	if(!empty($title))
	{
		$name = CUtil::translit($title, Loc::getCurrentLang(), static::getParamsForNameTransliteration());
		if($try > 0)
		{
			$name .= Random::getStringByAlphabet(static::NAME_RANDOM_STRING_LENGTH + $try, Random::ALPHABET_ALPHALOWER);
		}
	}
	else
	{
		$name = Random::getStringByAlphabet(static::NAME_RANDOM_STRING_LENGTH + $try, Random::ALPHABET_ALPHALOWER);
	}

	$name = static::prepareName($name);

	$existingType = static::getList([
		'filter' => [
			'=NAME' => $name,
		],
	])->fetch();
	if($existingType)
	{
		$name = static::generateName($title, ($try + 1));
	}

	return $name;
}