- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/lib/numerator/numerator.php
- Класс: BitrixMainNumeratorNumerator
- Вызов: Numerator::getSettingsFields
static function getSettingsFields($numeratorType)
{
$numeratorsAmount = static::getNextNumeratorNumber($numeratorType);
$settings = ['settingsFields' => [], 'settingsWords' => [],];
$settings['settingsFields'][static::getType()] = [
[
'title' => Loc::getMessage('TITLE_BITRIX_MAIN_NUMERATOR_NUMERATOR_NAME_TITLE'),
'settingName' => 'name',
'type' => 'string',
'default' => Loc::getMessage('NUMERATOR_DEFAULT_NUMERATOR_NAME', ['#NUMBER#' => $numeratorsAmount]),
],
[
'settingName' => 'template',
'type' => 'string',
'title' => Loc::getMessage('TITLE_BITRIX_MAIN_NUMERATOR_NUMERATOR_TEMPLATE_TITLE'),
],
];
$allGeneratorsClasses = static::getNumberGeneratorFactory()->getClasses();
foreach ($allGeneratorsClasses as $class)
{
/** @var $class NumberGenerator|UserConfigurable */
$isAvailableForAll = $class::getAvailableForType() == static::NUMERATOR_DEFAULT_TYPE;
if ($isAvailableForAll || $class::getAvailableForType() == $numeratorType)
{
if (in_array(UserConfigurable::class, class_implements($class)))
{
$settings['settingsFields'][$class::getType()] = $class::getSettingsFields();
}
$settings['settingsWords'][$class::getType()] = $class::getTemplateWordsSettings();
}
}
$settings['settingsWords'] = array_merge_recursive($settings['settingsWords'], static::getUserDefinedTemplateWords($numeratorType));
return $settings;
}