| Краткое описание | Плагин Discourse Authentication Validations позволяет добавлять пользовательские проверки к полям пользователя, а также управлять отображением этих полей в модальном окне регистрации. | |
| Ссылка на репозиторий | https://github.com/discourse/discourse-authentication-validations | |
| Руководство по установке | Как установить плагины в Discourse |
О плагине
Плагин Discourse Authentication Validations добавляет возможность настраивать пользовательские проверки для полей пользователя.
Стандартные пользовательские поля не поддерживают тип проверок validation, за исключением проверки на пустое значение для обязательных полей. Этот плагин позволяет задать регулярное выражение (regex) для каждого поля пользователя, которое будет проверяться против введенного значения.
Кроме того, плагин добавляет возможность управлять отображением полей пользователя в модальном окне регистрации. Это позволяет «цеплять» поля друг за друга: поле будет отображаться только если предыдущее поле имеет определенное значение.
Базовая настройка
1. Включение плагина
Плагин Discourse Authentication Validations можно включить либо переключателем, либо через его настройки. Оба варианта доступны на странице admin/plugins.
2. Добавление пользовательской проверки к полю пользователя
После включения плагина Discourse Authentication Validations в форме настройки поля пользователя появится чекбокс Включить пользовательские проверки в нижней части формы.
При его выборе появятся три дополнительных поля:
- Регулярное выражение для проверки значения
- Значения для отображения
- Целевые поля пользователя
Добавление пользовательской проверки
Введите корректное регулярное выражение в поле Регулярное выражение для проверки значения:
Значение поля пользователя в форме регистрации теперь будет проверяться на соответствие введенному регулярному выражению. Если введенное значение не соответствует заданным требованиям, форма регистрации не будет отправлена.
Нет значения (используется стандартная проверка формы)
Неверное значение
Верное значение
Цепочка полей пользователя
Сначала укажите значение Значения для отображения для поля пользователя.
Когда для поля пользователя задано значение Значения для отображения, оно отслеживает значение связанного поля ввода до тех пор, пока введенное значение не совпадет с ЛЮБЫМ из указанных Значений для отображения. После этого будет изменена видимость указанных Целевых полей пользователя, сделав их видимыми.
Во-вторых, укажите значение Целевые поля пользователя.
В выпадающем списке Целевые поля пользователя вы увидите список всех доступных полей. Видимость любого выбранного поля будет управляться соответствующими значениями в Значения для отображения.
Расширенная цепочка полей
Вы можете создавать цепочки полей, добавляя пользовательские проверки к нескольким полям.
Например, предположим, что у нас есть три поля пользователя со следующими значениями:
| Имя | Имеет пользовательскую проверку | Значения для отображения | Целевые поля пользователя |
|---|---|---|---|
| Ввод один | true | show-field-two | Ввод два |
| Ввод два | true | show-field-three | Ввод три |
| Ввод три | false |
Поля «Ввод два» и «Ввод три» будут скрыты по умолчанию, так как они являются «дочерними» по отношению к «Вводу один». Когда к «Вводу один» добавлено значение show-field-two, поле «Ввод два» отобразится, но «Ввод три» останется скрытым. Он останется скрытым до тех пор, пока поле «Ввод два» не получит значение show-field-three.
При правильном сочетании «Значений для отображения» и «Целевых полей» можно бесконечно встраивать поля пользователя друг в друга.













