Ответы пользователя по тегу 1С-Битрикс
  • Авторизация по e-mail?

    bodia7
    @bodia7 Автор вопроса
    Начинающий веб-разработчик
    AddEventHandler("main", "OnBeforeUserLogin", array("CCustomHookEvent", "DoBeforeUserLoginHandler"));
    class CCustomHookEvent {
            //  Проверяем пришел ли email или login и если email авторизуем по нему
            function DoBeforeUserLoginHandler( &$arFields )
            {
                $userLogin = $_POST["USER_LOGIN"];
                if (isset($userLogin))
                {
                    $isEmail = strpos($userLogin,"@");
                    if ($isEmail>0)
                    {
                        $arFilter = Array("EMAIL"=>$userLogin);
                        $rsUsers = CUser::GetList(($by="id"), ($order="desc"), $arFilter);
                        if($res = $rsUsers->Fetch())
                        {
                            if($res["EMAIL"]==$arFields["LOGIN"])
                                $arFields["LOGIN"] = $res["LOGIN"];
                        }
                    }
                }
            }
            // End 
    }
    Ответ написан
    Комментировать