12 MODE_ADMIN_SETTINGS =
'main.admin_settings',
13 MODE_EDIT_FORM =
'main.edit_form',
14 MODE_FILTER_HTML =
'main.filter_html',
15 MODE_ADMIN_LIST_VIEW_HTML =
'main.admin_list_view_html',
16 MODE_ADMIN_LIST_EDIT_HTML =
'main.admin_list_edit_html',
17 MODE_PUBLIC_TEXT =
'main.public_text';
28 return array_merge(static::getBaseUserTypeDescription(), static::getDescription());
45 'USER_TYPE_ID' => static::USER_TYPE_ID,
46 'CLASS_NAME' => static::class,
47 'EDIT_CALLBACK' => [static::class,
'renderEdit'],
48 'VIEW_CALLBACK' => [static::class,
'renderView'],
49 'USE_FIELD_COMPONENT' =>
true,
60 return self::getHtml($userField, $additionalParameters);
77 $additionalParameters[
'mode'] = self::MODE_VIEW;
78 return self::getHtml($userField, $additionalParameters);
94 $additionalParameters[
'mode'] = self::MODE_EDIT;
95 return self::getHtml($userField, $additionalParameters);
110 $additionalParameters[
'mode'] = self::MODE_ADMIN_SETTINGS;
111 $additionalParameters[
'bVarsFromForm'] = $varsFromForm;
112 return self::getHtml($userField, $additionalParameters);
128 $additionalParameters[
'mode'] = self::MODE_EDIT_FORM;
129 $userField[
'USE_COMPONENT'] =
'Y';
130 return self::getHtml($userField, $additionalParameters);
145 $additionalParameters[
'mode'] = self::MODE_ADMIN_LIST_VIEW_HTML;
146 return self::getHtml($userField, $additionalParameters);
160 $additionalParameters[
'mode'] = self::MODE_ADMIN_LIST_EDIT_HTML;
161 return self::getHtml($userField, $additionalParameters);
176 $additionalParameters[
'mode'] = self::MODE_FILTER_HTML;
177 return self::getHtml($userField, $additionalParameters);
186 $additionalParameters = [];
187 $additionalParameters[
'mode'] = self::MODE_PUBLIC_TEXT;
188 return self::getHtml($userField, $additionalParameters);
196 private static function getHtml($userField, $additionalParameters): string
202 if (!empty($preparedSettings))
204 if (isset($userField[
'SETTINGS']) && is_array($userField[
'SETTINGS']))
206 $userField[
'SETTINGS'] = array_merge($userField[
'SETTINGS'], $preparedSettings);
210 $userField[
'SETTINGS'] = $preparedSettings;
216 self::getComponentName(),
219 'userField' => $userField,
220 'additionalParameters' => $additionalParameters,
223 return ob_get_clean();
231 private static function getComponentName(): string
233 if (str_contains(static::RENDER_COMPONENT,
':'))
235 return static::RENDER_COMPONENT;
237 return 'bitrix:' . static::RENDER_COMPONENT;
248 return static::renderSettings($userField, $additionalParameters, $varsFromForm);
258 return static::renderView($userField, $additionalParameters);
268 return static::renderEdit($userField, $additionalParameters);
278 return static::renderEditForm($userField, $additionalParameters);
288 return static::renderAdminListView($userField, $additionalParameters);
298 return static::renderAdminListEdit($userField, $additionalParameters);
308 return static::renderFilter($userField, $additionalParameters);
317 return static::renderText($userField);
327 $value = ($userField[
'SETTINGS'][
'DEFAULT_VALUE'] ??
null);
328 return ($userField[
'MULTIPLE'] ===
'Y' ? [$value] : $value);
static getUserTypeDescription()
static isMultiplicitySupported()
static renderAdminListEdit(array $userField, ?array $additionalParameters)
static getPublicEdit(array $userField, ?array $additionalParameters=[])
static renderEdit(array $userField, ?array $additionalParameters=[])
static getDefaultValue(array $userField, array $additionalParameters=[])
static getAdminListEditHTML(array $userField, ?array $additionalParameters)
static getBaseUserTypeDescription()
static renderEditForm(array $userField, ?array $additionalParameters)
static getEditFormHtml(array $userField, ?array $additionalParameters)
static getAdminListViewHtml(array $userField, ?array $additionalParameters)
static renderText(array $userField)
static renderField(array $userField, ?array $additionalParameters=[])
static getSettingsHtml($userField, ?array $additionalParameters, $varsFromForm)
static renderView(array $userField, ?array $additionalParameters=[])
static renderSettings($userField, ?array $additionalParameters, $varsFromForm)
static getFilterHtml(array $userField, ?array $additionalParameters)
static renderFilter(array $userField, ?array $additionalParameters)
static getPublicText(array $userField)
static getPublicView(array $userField, ?array $additionalParameters=[])
static renderAdminListView(array $userField, ?array $additionalParameters)
static isMandatorySupported()
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
global $USER_FIELD_MANAGER