bool функция-обработчик( array &arArgs );Событие "OnBeforeUserRegister" вызывается до попытки регистрации нового пользователя методом CUser::Register и может быть использовано для прекращения процесса регистрации или переопределения некоторых полей.
Параметры
| Параметр | Описание |
|---|---|
| arArgs | Массив полей регистрации нового пользователя:
|
Массив значений данного обработчика является ссылкой на исходные переменные. Поэтому при изменении значения параметра или добавлении нового поля в массив внутри обработчика приведет к смене значения исходной переменной поступившей на вход функции-обработчика.
Это позволяет, например, добавить в массив arArgs дополнительные регистрационные поля нового пользователя или поля для почтового события NEW_USER.
Возвращаемое значение
Для отмены авторизации пользователя и прекращении выполнения метода CUser::Register необходимо в функции-обработчике создать исключение методомСм. также
Пример функции-обработчика:
<?
// файл /bitrix/modules/my_module_id/include.php
class MyClass
{
// создаем обработчик события "OnBeforeUserRegister"
function OnBeforeUserRegisterHandler(&$arFields)
{
// если пользователь пришел по рекламной кампании #34, то
if ($_SESSION["SESS_LAST_ADV_ID"]==34)
{
// добавляем его в группу #3
$arFields["GROUP_ID"][] = 3;
// добавим административный комментарий
if (intval($_SESSION["SESS_ADV_ID"])>0)
$arFields["ADMIN_NOTES"] = "Рекламная кампания #34 - прямой заход";
else
$arFields["ADMIN_NOTES"] = "Рекламная кампания #34 - возврат";
$arFields["SITE_ID"] = "ru";
}
}
}
?>
Пример регистрации функции-обработчика:
<?
// регистрируем обработчик события "OnBeforeUserRegister"
RegisterModuleDependences("main", "OnBeforeUserRegister", "my_module_id", "MyClass", "OnBeforeUserRegisterHandler");
?>
Пользовательские комментарии
Пользовательские комментарии не являются официальной документацией. Ответственность за их использование несет сам пользователь.Добавлять комментарии могут только зарегистрированные пользователи. Сообщения для просмотра появляются после модерации.
|
| ||
|
Делаем возможность регистрации поля Логин только латинскими буквами и цифрами.
Теперь пользователи могут регистрировать только логин, состоящий из латинских букв, цифр, знаков "-" и "_" | ||
|
| ||
|
Не забывайте, что функция будет вызываться также при подтверждении регистрации (OnBeforeUserUpdate), где ключа LOGIN нет.
| ||

