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

UserFieldHelper

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

Класс содержит методы-обработчики событий от API пользовательских полей. Синглтон.

Методы

Метод Описание С версии
public static function getInstance(): UserFieldHelper Возвращает инстанс класса.
public function getManager(): ?\CUserTypeManager
public function getApplication(): ?\CAllMain Геттеры, чтобы не писать в коде других методов global.
public function parseUserFieldEntityId(string $entityId): ?array Пытается получить инстанс фабрики и идентификатор типа из строкового идентификатора сущности пользовательского поля.
Если это удалось (фабрика была зарегистрирована корректно), то в результате будет массив, где первый элемент - фабрика, а второй - идентификатор типа.

Обработчики событий

Метод Описание С версии
public static function OnBeforeUserTypeAdd($field) Перед созданием нового поля. Пытается определить, есть ли зарегистрированная фабрика для сущности этого поля.
Если есть, то API пользовательских полей не будет создавать свои таблицы.
public static function onAfterUserTypeAdd($field) После создания нового пользовательского поля этот метод добавляет новую колонку в таблицу элементов.
Если надо - создает таблицу для хранения множественных значений
public static function OnBeforeUserTypeDelete($field) Метод зачищает данные перед удалением поля:
  • файлы (если поле типа "файл");
  • удаляет колонку из таблицы элементов;
  • удаляет таблицу хранения множественных значений.
public static function onGetUserFieldValues(Event $event): EventResult Не допускает обращение к собственным таблицам пользовательских полей для поиска значений. Собирает значения из своей таблицы и возвращает их.
public static function onUpdateUserFieldValues(Event $event): EventResult Не допускает обращение к собственным таблицам пользовательских полей для изменения значений. Определяет таблет, к которому надо обратиться, и изменяет значения через него.
public static function onDeleteUserFieldValues(Event $event): EventResult Не допускает обращение к собственным таблицам пользовательских полей для удаления значений. Определяет таблет, к которому надо обратиться, и удаляет значения через него.


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

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

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

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

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