Документация для разработчиков
Темная тема

Фабрика настроек пользовательских полей

Описание и методы

Это расширение содержит фрагменты интерфейсов и логики, необходимые для управления настройками пользовательских полей.

Основной класс для работы с этим расширением

BX.UI.UserFieldFactory.Factory
Метод Описание С версии
constructor(entityId: string, params: {}) Конструктор.

Параметры:

  • entityId - строковый идентификатор сущности, для которой будут создаваться поля
  • params - дополнительные параметры, имеют следующую структуру:
    • menuId - идентификатор для меню с выбором типа поля для создания;
    • types - массив с дополнительными типами полей, которые будут добавлены к стандартному списку;
    • bindElement - DOM-элемент, для передачи в объект BX.Main.Popup для показа попапа со списком полей;
    • configuratorClass - имя класса-наследника Configurator, который будет использоваться вместо стандартного;
    • customTypesUrl - адрес страницы, которая должна открыться в слайдере при клике на Дополнительный тип поля;
    • moduleId - идентификатор модуля для использования в модели UserField.
getFieldTypes(): Array Метод вернет массив типов полей с описанием.

Каждый элемент имеет следующую структуру:

  • name - строковый идентификатор [типа](../../20_main/userfield/config/20_types.md);
  • title - заголовок типа;
  • description - описание типа;
  • defaultTitle - заголовок по умолчанию для создания нового поля.
getMenu(params: {}): CreationMenu Метод вернет объект CreationMenu.
  • params - дополнительные параметры для передачи в BX.Main.Popup попапа с выбором типа поля.
setConfiguratorClass(configuratorClassName: string|Function) Устанавливает имя класса-наследника Configurator, который будет использоваться вместо стандартного.
setCustomTypesUrl(customTypesUrl: string): this Устанавливает адрес страницы, которая должна открыться в слайдере при клике на Дополнительный тип поля.
getConfigurator(params: {}): Configurator Возвращает объект Configurator для настройки поля userField.

params имеет структуру:

  • userField - объект UserField, для которого показывается форма настройки;
  • onSave - колбэк для вызова после сохранения формы;
  • onCancel - колбэк для вызова после нажатия кнопки отмены.
createUserField(fieldType: string, fieldName: ?string): UserField Метод вернет новый объект UserField.

Параметры:

  • fieldType - строковый идентификатор типа;
  • fieldName - название для нового поля. Если не передать, будет сгенерировано автоматически.
getDefaultLabel(fieldType: string): string Метод вернет заголовок поля по умолчанию (для нового).

Параметры:

  • fieldType - строковый идентификатор типа.
generateFieldName(): string Метод сгенерирует код поля на основе сущности и текущего времени.
onCustomTypeClick() Метод обработчик клика на Дополнительный тип поля.

События

Событие Описание
namespace: BX.UI.UserFieldFactory.Factory
OnGetUserTypesСобытие бросается после инициализации доступных типов пользовательских полей.

В обработчик придет массив со списком полей types, который можно изменить.

onCreateFieldСобытие бросается после создания объекта UserField в методе createUserField.

В обработчике можно получить объект userField.

onCreateCustomUserFieldСобытие бросается после создания объекта UserField через полную форму настройки поля.

В обработчике можно получить объект userField.



Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2021, «1С-Битрикс», 2021
Наверх