Регистрация: email в качестве логина и нужная группа пользователей.
Регистрация пользователей – одна из наиболее востребованных частей функционала веб-проекта.
В Битриксе есть для этого 2 инструмента: стандартная регистрация и настраиваемая. Если необходимо более гибкое решение рекомендую остановиться на втором варианте. Все хорошо, но если чего-то не хватает … что делать? Можно попросить Битрикс реализовать нужный , можно обратиться к стороннему разработчику или все написать самому. Я, как разработчик, выберу последний вариант.
Сам неоднократно сталкивался с ситуацией, когда нужно email использовать вместо логина или зарегистрированного помещать в группу пользователей, отличную от группы в настройках главного модуля. В качестве основы я выбрал стандартный компонент «Настраиваемая регистрация» (можно и с нуля написать кто хочет). Начинаем кастомизировать. После копирования компонента заходив в его папку и начинаем редактировать component.php. Нам необходимо дописать / заменить несколько строк.
Замените строки
На
Затем заменяем строку
На
Компонент для регистрации использует метод , поэтому нам добавлять в логику больше ничего не нужно.
Остается только подредактировать файл .parameters.php (чтобы все дополнительные опции мы смогли бы включить в компоненте).
Как видите все просто. Ну а для тех кто не хочет копаться к кодах, выпустил готовое решение –
Рад буду отзывам, конструктивной критике.
Регистрация пользователей – одна из наиболее востребованных частей функционала веб-проекта.
В Битриксе есть для этого 2 инструмента: стандартная регистрация и настраиваемая. Если необходимо более гибкое решение рекомендую остановиться на втором варианте. Все хорошо, но если чего-то не хватает … что делать? Можно попросить Битрикс реализовать нужный , можно обратиться к стороннему разработчику или все написать самому. Я, как разработчик, выберу последний вариант.
Сам неоднократно сталкивался с ситуацией, когда нужно email использовать вместо логина или зарегистрированного помещать в группу пользователей, отличную от группы в настройках главного модуля. В качестве основы я выбрал стандартный компонент «Настраиваемая регистрация» (можно и с нуля написать кто хочет). Начинаем кастомизировать. После копирования компонента заходив в его папку и начинаем редактировать component.php. Нам необходимо дописать / заменить несколько строк.
Замените строки
$arDefaultFields = array( "LOGIN", "PASSWORD", "CONFIRM_PASSWORD", ); |
if($arParams["USE_EMAIL_TO_LOGIN"] != "Y")
{
$arDefaultFields = array(
"LOGIN",
"PASSWORD",
"CONFIRM_PASSWORD",
);
if($arResult["EMAIL_REQUIRED"])
{
$arDefaultFields[] = "EMAIL";
}
}
else
{
$arDefaultFields = array(
"EMAIL",
"PASSWORD",
"CONFIRM_PASSWORD",
);
} |
if( $def_group != "" )
$arResult['VALUES']["GROUP_ID"] = explode(",", $def_group); |
if($def_group != "")
{
// check user group
if("Y" == $arParams["USE_GROUP"]) $arResult["VALUES"]["GROUP_ID"] = array(intVal($arParams["USER_GROUP"]));
else $arResult["VALUES"]["GROUP_ID"] = explode(",", $def_group);
}
// set EMAIL as LOGIN
if($arParams["USE_EMAIL_TO_LOGIN"] == "Y") $arResult["VALUES"]["LOGIN"] = $arResult["VALUES"]["EMAIL"]; |
Компонент для регистрации использует метод , поэтому нам добавлять в логику больше ничего не нужно.
Остается только подредактировать файл .parameters.php (чтобы все дополнительные опции мы смогли бы включить в компоненте).
Как видите все просто. Ну а для тех кто не хочет копаться к кодах, выпустил готовое решение –
Рад буду отзывам, конструктивной критике.